在MPEG DASH MANIFEST中指定曲目标题或语言

时间:2018-12-07 05:38:49

标签: ffmpeg video-streaming html5-video webm

我正在创建清单,以使用DASH播放Adaptive WebM。一切正常,但我需要语言名称/曲目名称而不是比特率。支持吗?如何更新/优化以支持此类功能?

清单创建:

ffmpeg \
-f webm_dash_manifest -i webm240.webm \
-f webm_dash_manifest -i webm360.webm \
-f webm_dash_manifest -i webm480.webm \
-f webm_dash_manifest -i webm720.webm \
-f webm_dash_manifest -i audio1.webm \
-f webm_dash_manifest -i audio2.webm \
-f webm_dash_manifest -i audio3.webm \
-f webm_dash_manifest -i audio4.webm \
-c copy -map 0 -map 1 -map 2 -map 3 -map 4 -map 5 -map 6  -map 7 \
-f webm_dash_manifest \
-adaptation_sets "id=0,streams=0,1,2,3 id=1,streams=4,5,6,7" \
manifest.mpd

播放器音轨选择:

enter image description here

1 个答案:

答案 0 :(得分:0)

最后,在更改了几个DASH播放器和编码器之后,这就是我解决的方法。

问题不在于清单创建,而在于输入文件准备。我将元数据添加到如下所示的输入文件中,并且可以正常工作。 经过Shaka播放器测试,就像魅力一样。

ffmpeg -i input.mp4 -y -vn -acodec aac -ab 96k -dash 1 -metadata:s:a:0 language=hin audiohindi.mp4
ffmpeg -i input.mp4 -y -vn -acodec aac -ab 96k -dash 1 -metadata:s:a:0 language=tam audiotamil.mp4
ffmpeg -i input.mp4 -y -vn -acodec aac -ab 96k -dash 1 -metadata:s:a:0 language=kan audiokannada.mp4
ffmpeg -i input.mp4 -y -vn -acodec aac -ab 96k -dash 1 -metadata:s:a:0 language=tel audiotelugu.mp4

它使用ISO 639-2语言代码,例如:Wiki: ISO 639-2 language codes