为了账号安全,请及时绑定邮箱和手机立即绑定

如何在网页上流式传输(分段)mp4 视频

如何在网页上流式传输(分段)mp4 视频

PHP
蛊毒传说 2022-05-27 09:56:49
所以我使用免费托管,我的服务器上的视频很少,一切正常,除了视频需要大约 10-20 秒来加载然后开始播放,所以我想使用流媒体。问题是我不知道该字段和托管不支持 node.js 但我认为是 php 7。尝试将 video.js 与 hls 一起使用,但我不知道如何使用它,我没有在网上找到任何合理或好的教程。所以任何帮助都会很好,重点关注什么,一些示例的链接,相当新手如此详细的教程会有所帮助。这是在html中:<link href="https://vjs.zencdn.net/7.5.5/video-js.css" rel="stylesheet" /><div class="video">    <video id="video" class="video-js" width="1024" height="576" type="video/mp4" src="videos/merci.mp4" autoplay controls data-setup=""></video></div><span id="naziv">test text</span><script src="https://vjs.zencdn.net/7.5.5/video.js"></script>我的 .js 中有这个document.getElementById('video_html5_api').src = "videos/roses.mp4";当然还有其他部分,但是视频是用随机整数随机选择的,然后是 switch 语句,这一切都有效。但是不要认为这对我的问题很有用,因为我不知道从哪里开始或从哪里开始。我知道它应该如何将视频分成小块,但不知道该怎么做。
查看完整描述

2 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

鉴于你所说的,这对你来说可能太技术性了。但是如果你想在一个简单的 http 服务器上流式传输高质量的视频,你可以尝试使用 MPEG-DASH。这将涉及两个步骤:

  1. 将您的视频编码为 MPEG-DASH 格式。这将为您提供几个不同质量的流。这些流将在视频播放时由您的用户自适应下载……想想 YouTube。

  2. 向您的页面添加一些额外的代码以在浏览器中支持这一点。我建议查看DASH IF Reference Client

我知道这可能没有足够的信息继续下去,但如果您有兴趣,我可能会跟进答案。


查看完整回答
反对 回复 2022-05-27
?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

你不需要任何特别的东西。一个普通的视频标签会做:

<video src="videos/roses.mp4"></video>

但是,您需要确保moovMP4 文件中的原子位于开头。为此,您可以使用 FFmpeg:

ffmpeg -i roses.mp4 -movflags faststart -codec copy roses-optimized.mp4

我想你会发现这会大大改善这种情况。


查看完整回答
反对 回复 2022-05-27
  • 2 回答
  • 0 关注
  • 517 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信