首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >http自适应流

http自适应流
EN

Stack Overflow用户
提问于 2011-11-07 00:49:05
回答 4查看 1.7K关注 0票数 6

有没有开源的流媒体解决方案支持Http自适应流媒体?根据我的研究,VLC不支持自适应流媒体。我对Darwin Streaming Server不太确定。有什么想法吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-05-31 01:15:26

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

如果你想便宜一点,你可以试试:

50美元:苹果压缩器。如果您有MAC,则将编码和分段集于一身

$25: Markelsoft HLS Segmenter:然而,您可能需要使用一些X.264设置来获得最终产品,虽然它细分(大任务),但它不创建变量播放列表。您可以使用记事本手动执行此操作。这不是一项大工程。

如果你想要完全免费,你有:

  1. 编码:手刹车,MeGui,任何你想要的。只需遵循Android编码规范即可。使用H264和AAC。请勿使用渐进式下载设置/预设。使用CBR而不是VBR,并确保帧速率是恒定的,而不是可变的。选择一个容易在乘法中使用的帧率,这样你就可以确保关键帧在片段中的位置。
  2. 使用苹果免费工具:媒体文件分段、变量播放列表创建器等。媒体文件管理器会询问你想要多大的分段。默认值为10秒。这样,您就可以设置解码器关键帧,以确保每个段都以关键帧开始。

我将举两个例子。

示例1:

关键帧分段大小: 10 seconds

  • Framerate:最初为29.97个变量,编码为30 fps常量
  • 帧距离: 30 x 10秒= 300帧。每300个自适应关键帧需要一个关键帧:每隔2秒自适应: frames.
  • Recommended

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

示例2:

分段帧率:最初为23.97可变,编码为24 fps constant

  • Segment大小:分段所需的8 seconds

  • Keyframe :8* 24 =自适应2秒的192

  • Recommended =2* 24 =48

  • 每4个关键帧(4 * 48)引导一个分段
票数 4
EN

Stack Overflow用户

发布于 2016-12-19 20:25:08

如果你想要一个开源的解决方案,你可以用x264和mp4box来实现。以下命令将是如何创建单个质量/表示/再现的示例:

代码语言:javascript
复制
x264 --output intermediate_2400k.264 --fps 24 --preset slow --bitrate 2400 --vbv-maxrate 4800 --vbv-bufsize 9600 --min-keyint 48 --keyint 48 --scenecut 0 --no-scenecut --pass 1 --video-filter "resize:width=1280,height=720" inputvideo.mkv

下一步是将编码的内容多路复用到mp4中:

代码语言:javascript
复制
MP4Box -add intermediate.264 -fps 24 output_2400k.mp4

然后创建单独的片段和清单:

代码语言:javascript
复制
MP4Box -dash 4000 -frag 4000 -rap -segment-name segment_ output_2400k.mp4

然后,您可以创建其他几个品质,并使用某个开源播放器(如dash.js )进行播放。

票数 2
EN

Stack Overflow用户

发布于 2012-08-06 09:09:05

OSMF播放器:http://www.osmf.com/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8028611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档