拆分mp4文件vs mp4-dash

时间:2017-05-04 18:18:46

标签: video html5-video hls mpeg-dash smooth-streaming

在网站上向用户提供视频时,几乎没有可供选择的选项。即HLS,平滑流,短划线或HDS。短跑似乎是一个更好的选择。看看它是如何工作的,它将文件分成许多部分并流式传输。另一种选择是手动拆分文件。破折号和拆分mp4文件有什么区别。

1 个答案:

答案 0 :(得分:4)

Dash,Smooth streaming和HLS都是自适应流媒体技术。这些技术可以让您:

  • 在片段中提供内容 - 每个片段都是可播放的小块内容(音频,视频甚至文本 - 例如字幕)。单段长度通常为几秒。这是什么使它成为流媒体"技术,与手动拆分MP4文件可以尝试实现的非常类似。
  • 以多种质量等级提供内容 - 根据目标设备的网络连接,性能和屏幕分辨率,播放器可以使用适当的质量来减少缓冲或口吃的机会。为了实现这一点,流中具有特定索引的段必须与所有质量级别完全对齐(起始和长度) - 这是在编码期间实现的。这是什么使它"自适应"技术
  • 消费清单 - 清单是对整个内容和所有可用质量级别的描述。您可以拥有10个以上质量级别的单个视频内容,其中包含几个不同的音频流(不同的编解码器或语言),质量水平也很低。要消费它,你需要告诉玩家在哪里找到各个细分 - 这就是清单的目的。不同的技术有不同的清单格式。 Dash提供了许多如何描述内容的选项。详细选项由每个质量级别的单个MP4源文件组成,段描述只是从文件开头到字节长度的字节偏移,直到段的结尾。但是您可以拥有更紧凑的描述,例如分段模板和按索引请求分段。

因此,虽然您可以通过创建自己的协议来实现所有这些目标,但为什么要这样做而不是使用标准呢?

在评论中回答您的问题:两种情况下传输的总数据是否存在差异?

一般没有。添加清单仍然是相同的视频和音频内容。清单是一个文本文件(很容易GZiped) - 它的大小非常依赖于内容的描述方式。在详细选项的情况下,它是内容的相关长度,段的平均长度,流的数量和质量等级的数量。

一旦您开始使用Dash的全部功能并且在客户端可能不需要或可能无法播放更高质量的情况下使用较低质量级别,您可以显着减少传输的数据量。