Encryption 如何为加密的子播放列表(使用ffmpeg创建)创建主m3u8播放列表?

Encryption 如何为加密的子播放列表(使用ffmpeg创建)创建主m3u8播放列表?,encryption,ffmpeg,video-encoding,http-live-streaming,m3u8,Encryption,Ffmpeg,Video Encoding,Http Live Streaming,M3u8,如果我使用以下ffmpeg命令为加密的HLS流创建三个输出,我如何才能创建master.m3u8变体播放列表(具有正确的带宽) 下面是我找到的一些示例,但我认为带宽值对于我的输出文件不正确。如何计算正确的带宽 #EXTM3U #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=150000,RESOLUTION=640x360 http://example.com/360p/index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1,BAND

如果我使用以下ffmpeg命令为加密的HLS流创建三个输出,我如何才能创建master.m3u8变体播放列表(具有正确的带宽)

下面是我找到的一些示例,但我认为带宽值对于我的输出文件不正确。如何计算正确的带宽

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=150000,RESOLUTION=640x360
http://example.com/360p/index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=240000,RESOLUTION=1280x720
http://example.com/720p/index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=640000,RESOLUTION=1920x1080
http://example.com/1080p/index.m3u8
苹果的variantplaylistcreator工具在这种情况下不起作用,因为我需要.plist文件,ffmpeg不会生成这些文件


我认为ffmpeg无法为生成的输出文件创建master.m3u8播放列表。

2018年1月更新

现在,您可以使用FFmpeg使用
master\u pl\u name
var\u stream\u map
直接创建主播放列表。看


FFmpeg不创建主播放列表,但您可以像示例中那样手动创建

BANDWIDTH
属性表示变量的峰值比特率。对于像您这样的多路复用流,该值是
峰值音频比特率+峰值视频比特率+mux开销
(包括任何加密填充)。如果有单独的视频/音频,则必须考虑格式副本的最高比特率组合

ffmpeg
命令结束时,仅当您有一个输出时,才会显示muxing开销。一旦选择了编码参数,就可以运行一些测试,并根据结果进行有根据的猜测


需要记住的一件事是,根据苹果的指导原则,测量值必须在VOD声明带宽的10%以内,1小时直播内容的测量值必须分别在25%以内。

你明白了吗?我还需要创建master.plist文件,但我也不能使用variantplaylistcreator:/
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=150000,RESOLUTION=640x360
http://example.com/360p/index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=240000,RESOLUTION=1280x720
http://example.com/720p/index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=640000,RESOLUTION=1920x1080
http://example.com/1080p/index.m3u8