http自适应流媒体

Ana*_*ari 6 http-streaming libvlc

是否有任何开源流媒体解决方案支持Http Adaptive Streaming?根据我的研究,VLC不支持自适应流媒体.我不确定Darwin Streaming Server.有任何想法吗?

Mik*_*oit 4

我看到了它们,但还没有测试过它们。我认为,在 HTTP Live Streaming 的早期阶段,它们所造成的痛苦是不值得的。可供您尝试解决问题的可用资源很少。

如果你想买便宜的,可以尝试:

50 美元:苹果压缩机。如果您有 MAC,则将编码和分段合而为一

25 美元:Markelsoft HLS Segmenter:但是,您可能需要使用一些 X.264 设置才能获得最终产品,并且虽然它进行分段(艰巨的工作),但它不会创建变体播放列表。您可以使用记事本手动执行此操作。这不是一项大工作。

如果你想要完全免费,你可以:

  1. 编码:Handbrake、MeGui,随心所欲。只需遵循 Android 编码规范即可。使用 H264 和 AAC。请勿使用渐进式下载设置/预设。使用 CBR 而不是 VBR,并确保您的帧速率是恒定的而不是可变的。选择可以在乘法中轻松使用的帧速率,以便您可以确保关键帧在片段中的位置。

  2. 使用Apple的免费工具:mediafilesegment、variantplaylistcreator等。Mediafilesegmenter会询问您想要多大的片段。默认值为 10 秒。这样,您就可以设置解码器关键帧以确保每个片段都以关键帧开始。

我举两个例子。

示例1:

  • 分段大小:10秒
  • 帧速率:最初为 29.97 可变,编码为 30 fps 恒定
  • 关键帧距离(以帧为单位):30 x 10 秒 = 300 帧。每 300 帧需要一个关键帧。
  • 建议自适应关键帧:每 2 秒一次

关键帧设置 2 * 30 = 60 帧。每 5 个关键帧 (5 * 60) 引导一个片段

示例2:

  • 帧速率:最初为 23.97 可变,编码为 24 fps 恒定
  • 片段大小:8秒
  • 分段所需的关键帧:8 * 24 = 192
  • 建议自适应2秒=2*24=48
  • 每第 4 个关键帧 (4 * 48) 引导一个片段