HTTP直播流中的本地化视频资源

时间:2013-04-21 19:42:00

标签: http-live-streaming

我尝试使用HTTP直播技术创建视频点播。到目前为止,除了提供本地化的视频资源外,其他所有工作都很好。

我希望通过HTTP Live Streaming显示(powerpoint)演示文稿(作为视频)。 幻灯片有英语和德语版本。它们也是英语和德语的音频部分。

出于测试目的,我已将其嵌入到一个简单的网页中,并尝试在我的iPhone上查看它,这样可行,除了切换(或默认显示)正确的视频语言 。我只能将音频资源切换为德语。 (也没有检测到德语作为我的默认iPhone语言。)

我已经阅读了几乎关于HTTP Live Streaming的整个草案,但是如果它应该有效并且我做错了或者这不应该工作,那么他们就没有相关的信息。在3.4.10 and 3.4.10.1段中,有一些关于多个组的内容,似乎我可以将LANGUAGE键应用于VIDEO资源。 (通常也应该可以为不同的摄像机角度提供多个视频流,所以为什么不为不同的语言提供)

现在这是我的*.m3u8主播放列表文件:

#EXTM3U
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-all",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="en/audio/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-all",LANGUAGE="de",NAME="German",AUTOSELECT=YES,URI="de/audio/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-low",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="en/low/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-low",LANGUAGE="de",NAME="German",AUTOSELECT=YES,URI="de/low/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-medium",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="en/medium/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-medium",LANGUAGE="de",NAME="German",AUTOSELECT=YES,URI="de/medium/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-high",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="en/high/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-high",LANGUAGE="de",NAME="German",AUTOSELECT=YES,URI="de/high/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-720p",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="en/720p/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-720p",LANGUAGE="de",NAME="German",AUTOSELECT=YES,URI="de/720p/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-1080p",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="en/1080p/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=VIDEO,GROUP-ID="video-1080p",LANGUAGE="de",NAME="German",AUTOSELECT=YES,URI="de/1080p/prog_index.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=128000,CODECS="mp4a.40.2",AUDIO="audio-all"
de/audio/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=660000,CODECS="mp4a.40.2,avc1.42e015",AUDIO="audio-all",VIDEO="video-low"
de/low/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=800000,CODECS="mp4a.40.2,avc1.42e01e",AUDIO="audio-all",VIDEO="video-medium"
de/medium/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1070000,CODECS="mp4a.40.2,avc1.4d401f",AUDIO="audio-all",VIDEO="video-high"
de/high/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1728000,CODECS="mp4a.40.2,avc1.4d401f",AUDIO="audio-all",VIDEO="video-720p"
de/720p/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=3300000,CODECS="mp4a.40.2,avc1.4d4029",AUDIO="audio-all",VIDEO="video-1080p"
de/1080p/prog_index.m3u8

根据Apple的草案和文档,应该可以提供多个视频流。

我还删除了LANGUAGE键,并尝试按照this example from Apple进行操作。但我也无法选择不同的视频流。

  1. 我做错了什么?
  2. 是否可以提供与该语言相关的多个流? (尽可能使用AUDIO和SUBTITLE)

1 个答案:

答案 0 :(得分:0)

如果您需要备用视频文件(超出带宽和质量设置),我认为您应该使用不同的顶级播放列表。