我有HLS 3.stream/playlist.m3u8]的实时流,我想把它转换成MPEG-破折号.
什么是最佳做法?
流已经是h264 aac,因此我知道我不需要重新编码,我只需要转换。
我该用什么?芬伯?mp4box?
备注:
ffmpeg -i https://82-80-192-30.vidnt.com/ipbc_IPBCchannel11LVMRepeat/_definst_/IPBCchannel11LVM_3.stream/playlist.m3u8 -strict -2 -min_seg_duration 2000 -window_size 5 -extra_window_size 5 -use_template 1 -use_timeline 1 -f dash out.mpd但这是非常有限的。我无法控制片段的持续时间。ffmpeg的min_seg_duration参数对我来说不是很好,它还可以设置最小持续时间,而我希望限制每个段的最大持续时间(段出为10秒,而我需要它在现场播放时是2-4秒)。
发布于 2018-04-24 17:32:28
首先,值得说的是,如果你能避免这样做,你将为自己节省大量的工作!
现在大多数设备和客户端都可以同时播放HLS和DASH流,因此通常的方法是在应用程序或客户端中添加所需的任何额外功能。
如果您确实必须转换服务器端,那么值得注意的是,尽管过去HLS流通常使用TS段,但最近在HLS生态系统中已经出现了对分段MP4的支持。
如果您有TS视频流,那么您将需要按照上面用ffmpeg概述的路线进行转换。
如果您有分段的MP4,那么您应该已经有了正确的格式,并且可能会发现您只需要创建清单文件,这样DASH就可以访问分段的mp4流。
以上所有这些假设您的内容没有加密,或者您不需要支持加密--如果是的话,您可能无法转换媒体,或者您可能还必须对某些流进行不同的加密,因为当前部署的大多数windows和铬设备和浏览器使用的加密方法与Apple设备略有不同(一种不同的AES模式)。
https://stackoverflow.com/questions/49791927
复制相似问题