Video streaming 如何实现平滑流?

Video streaming 如何实现平滑流?,video-streaming,google-tv,Video Streaming,Google Tv,我读过,但不清楚“自适应流媒体-自动适应拥塞或带宽可用性”是什么意思?它只在玩家开始的时候起作用,还是也在玩 在我的实践中,视频从质量开始,根据当前带宽;对于exmaple.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 #

我读过,但不清楚“自适应流媒体-自动适应拥塞或带宽可用性”是什么意思?它只在玩家开始的时候起作用,还是也在玩

在我的实践中,视频从质量开始,根据当前带宽;对于exmaple.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 Revue,android 3.2。视频播放器-视频视图。

首先-您显示的清单是HLS aka,而不是Microsoft的


HLS中的每个段通常为10秒


你没有提到你的播放器是什么,但我认为这是谷歌电视,因为这就是你一直在质疑的问题。不同的玩家表现不同,但基本思想是相同的。播放机测量获取每个片段所需的时间,如果时间及时,则会保持不变,如果时间过长,则会尝试选择一个带宽,以便在需要播放之前获取一两个片段。如果看到缓冲延迟,这是一个错误。您应该能够查看日志文件,查看播放器在播放内容时正在做什么,以及为什么不切换到其他带宽。

首先-您显示的清单是HLS,也就是不是Microsoft的


HLS中的每个段通常为10秒


你没有提到你的播放器是什么,但我认为这是谷歌电视,因为这就是你一直在质疑的问题。不同的玩家表现不同,但基本思想是相同的。播放机测量获取每个片段所需的时间,如果时间及时,则会保持不变,如果时间过长,则会尝试选择一个带宽,以便在需要播放之前获取一两个片段。如果看到缓冲延迟,这是一个错误。您应该能够查看日志文件,查看播放器在播放内容时正在做什么,以及为什么不切换到不同的带宽。

“HLS中的每个片段通常为10秒。”我检查了,视频分为每个片段2秒,这正常吗?我将VideoView用作播放器。你说的“谷歌电视播放器”是什么意思?现代的编码器将用于较短的片段。平滑流媒体通常为2秒。我还看到了5秒钟的MpegDASH内容。2秒的HLS内容将提供良好的体验。一些HLS播放器(用于其他设备)将测量带宽,然后将其锁定,即使可用带宽随时间稳定在更高的速率。正如许多人认为的那样,不经常改变分辨率会给用户带来更好的体验。“HLS中的每个片段通常为10秒。”我检查了视频,每个片段为2秒,这正常吗?我将VideoView用作播放器。你说的“谷歌电视播放器”是什么意思?现代的编码器将用于较短的片段。平滑流媒体通常为2秒。我还看到了5秒钟的MpegDASH内容。2秒的HLS内容将提供良好的体验。一些HLS播放器(用于其他设备)将测量带宽,然后将其锁定,即使可用带宽随时间稳定在更高的速率。正如许多人认为的那样,不经常改变分辨率会给用户带来更好的体验。