HLS Streaming:视频流中的多种音频选择
HLS Streaming: Multiple Audio Alternatives in Video Stream
我的某个 HLS 流设置有问题。到目前为止,我的设置是使用流的视频再现,其中包含名称为 .mp4
的流的所有不同音频替代方案。根据 specs,这应该可以通过像这样设置我的 HLS 主清单来实现:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",CODECS="mp4a.40.5",LANGUAGE="deu",NAME="Deutsch",DEFAULT=YES,AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",CODECS="mp4a.40.5",LANGUAGE="spa",NAME="Español",DEFAULT=NO
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",CODECS="mp4a.40.5",LANGUAGE="eng",NAME="English",DEFAULT=NO
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1391346,RESOLUTION=1022x574,CODECS="avc1.4d001f,mp4a.40.5",AUDIO="aac"
0009_orig/manifest.m3u8
然而,在 iPad 上进行测试时,视频播放器为我提供了不同的语言,但在选择它们之后,播放器 并没有 实际切换语言。
我的猜测是播放器实际上无法在原始流中找到相应的曲目。这可能吗?我可以在清单中设置此信息吗?
更新:以下答案适用于version 3 of the protocol. The IETF draft you linked is for version 7。如果设备支持版本 7,您可以使用混合媒体文件,尽管我还没有尝试过。请改用 #EXT-X-VERSION:7
。
Alternate Audio and Video Renditions
The audio tracks contain unmuxed (signals have not been combined) audio
segments. The master playlist file controls the playback.
我认为这意味着您有为单个音频流提供 URI:
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",NAME="Deutsch", \
DEFAULT=NO,AUTOSELECT=YES,LANGUAGE="de", \
URI="main/german-audio.m3u8"
我的某个 HLS 流设置有问题。到目前为止,我的设置是使用流的视频再现,其中包含名称为 .mp4
的流的所有不同音频替代方案。根据 specs,这应该可以通过像这样设置我的 HLS 主清单来实现:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",CODECS="mp4a.40.5",LANGUAGE="deu",NAME="Deutsch",DEFAULT=YES,AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",CODECS="mp4a.40.5",LANGUAGE="spa",NAME="Español",DEFAULT=NO
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",CODECS="mp4a.40.5",LANGUAGE="eng",NAME="English",DEFAULT=NO
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1391346,RESOLUTION=1022x574,CODECS="avc1.4d001f,mp4a.40.5",AUDIO="aac"
0009_orig/manifest.m3u8
然而,在 iPad 上进行测试时,视频播放器为我提供了不同的语言,但在选择它们之后,播放器 并没有 实际切换语言。
我的猜测是播放器实际上无法在原始流中找到相应的曲目。这可能吗?我可以在清单中设置此信息吗?
更新:以下答案适用于version 3 of the protocol. The IETF draft you linked is for version 7。如果设备支持版本 7,您可以使用混合媒体文件,尽管我还没有尝试过。请改用 #EXT-X-VERSION:7
。
Alternate Audio and Video Renditions
The audio tracks contain unmuxed (signals have not been combined) audio segments. The master playlist file controls the playback.
我认为这意味着您有为单个音频流提供 URI:
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac",NAME="Deutsch", \
DEFAULT=NO,AUTOSELECT=YES,LANGUAGE="de", \
URI="main/german-audio.m3u8"