我阅读了https://developers.google.com/tv/android/articles/hls?hl=en并不清楚“自适应流媒体 - 自动适应拥塞或带宽可用性。”是什么意思?它仅在播放器启动时有效,还是在玩时也有效?
在我的练习中,视频从当前带宽的质量开始;例如 .m3u8 文件包含链接和带宽列表:
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=1950000
http://link1.M3U8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=1500000
http://link2.M3U8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=1200000
http://link3.M3U8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=950000
http://link4.M3U8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=800000
http://link5.M3U8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=700000
http://link6.M3U8
例如,我当前的带宽为 1600000,播放器 (VideoView) 开始播放来自链接 2 的视频。在播放时,我的带宽变为 900000,但播放器仍继续播放来自链接 2 的视频,但有缓冲延迟。
播放器是否正常工作,或者他应该切换到链接 5?
如果正确,我可以在不重新启动视频的情况下以某种方式切换视频链接吗?
谢谢!
更新: 测试设备 Logitech Reveue,android 3.2。视频播放器 - VideoView。