HLS是Google TV 3.2的一项功能,对我的内容进行编码以便在Google TV上观看的最佳方法是什么?
答案 0 :(得分:26)
Http Live Streaming又名HLS是Google TV支持的流式多媒体内容(音频和视频)标准。
HLS附带了许多很酷的功能。主要是: 1)自适应流 - 自动适应拥塞或带宽可用性。 2)对瞬态网络故障的恢复能力。 3)您的服务器,路由器或防火墙没有特殊配置。它只是HTTP 1.1 4)Content Delivery Networks轻松支持 5)支持实时流媒体(更长篇文章) 6)Chrome for Google TV支持HTML5视频标签。 7)可选的AES加密(更长篇文章中的内容)。
在Google TV上,HLS是一种标准协议,您只需将您的网址放入任何Media Playback API中,例如MediaPlayer,VideoView等。它只是有效。
.m3u8 - 基于文本的清单或播放列表文件(可能会针对实时内容进行更新) - 变体播放列表通常指向也以.m3u8结尾的单个清单 MIME类型:vnd.apple.mpegURL或application / x-mpegURL
.ts - MPEG 2传输流 - 通常5-10秒长的视频&音频数据。 MIME类型:video / MP2T
创建HLS内容的最简单方法是使用Apple’s tools,最新版本的Sorenson Squeeze,Telestream的Episode以及许多云编码提供商。您从以很多比特率编码的内容开始。对于Google TV,.m3u8文件中的第一行是我们开始的速度。最好选择1.2mbps的流。
自Google TV固件版本3.2起,Google TV支持HLS协议版本3。
您的内容网址必须在网址中包含字符“.m3u8”。如果URL不以“.m3u8”结尾,系统将在播放前至少发出2个请求,并且播放列表的MIME类型必须是“application / vnd.apple.mpegurl”或“application / x-mpegurl”之一”
注意 - Google TV目前不支持编解码器切换 - 因此广告片段必须使用与主要内容相同的编码。当然,开发人员可以暂停HLS播放,播放其他一些内容,然后再次恢复HLS播放以解决此问题。
编码内容既是一门艺术,也是一门科学。最佳选择在很大程度上取决于您的内容,对象在背景中移动的速度,以及许多其他无法进入simple post的项目。它还取决于您要定位的设备。以下设置旨在针对Google TV进行优化。 Older devices可能需要不同/额外的编码。请注意,出于商业目的,某些类型的编码可能需要许可和/或支付版税。
音频编码应该在所有流中保持一致。 HE-AACv1,HE-AACv2,高达48kHz的AAC-LC,立体声音频都是可以接受的选择。
16:9 Aspect Ratio**
Total Video
Dimensions Bitrate Bitrate Encoding
640x360 640 600 HiP, 4.1
640x360 1240 1200 HiP, 4.1
960x540 1840 1800 HiP, 4.1
1280x720 2540 2500 HiP, 4.1
1280x720 4540 4500 HiP, 4.1
1920x1080 6040 6000 HiP, 4.1
1920x1080 8196 8156 HiP, 4.1
4:3 Aspect Ratio
Total Video
Dimensions Bitrate Bitrate Encoding
640x480 640 600 HiP, 4.1
640x480 1240 1200 HiP, 4.1
960x720 1840 1800 HiP, 4.1
1280x960 2540 2500 HiP, 4.1
1280x960 4540 4500 HiP, 4.1
目前的Google TV实施仅在每个片段的开头使用关键帧(对于30秒的10秒片段,这将是每300帧)。 Apple的建议是每90帧拥有一个Keyframe。 (或每30秒30秒一次)注 - Framerate是一个复杂的主题。
**改编自https://developer.apple.com/library/ios/#technotes/tn2224/_index.html