用fms做直播,当flash接收到“NetStream.Buffer.Empty” 时,如何判断视频是播放结束了,还是正在缓冲呢。
发布端停止发布后,貌似flash就来一个“NetStream.Buffer.Empty”就完了,之后也没有啥了。咋判断是不是停止发布了呢?用“FlashMediaLive...
发布端停止发布后,貌似flash就来一个“NetStream.Buffer.Empty” 就完了,之后也没有啥了。咋判断是不是停止发布了呢?用“Flash Media Live Encoder 3”发布的视频
展开
2个回答
展开全部
缓冲区已清空,没有新数据加载到,这个情况很有可能是由于某些原因流发布端停止流的发送,而又没有其他状态返回,这是bug。不要想着等待后台有新的状态信息返回。如果服务器直播停止、暂停、或者服务器关闭都会有事件返回的。
正常情况下,直播过程中是“NetStream.Buffer.Empty” 和““NetStream.Buffer.Full” 两种状态相互交替的。对这种长期“NetStream.Buffer.Empty” 的状态,要进行计时咯,我是每出现该状态就计时,200毫秒没有新的状态返回,就重连。有新的状态就重置计时器。
不知道有没有什么更好的办法
正常情况下,直播过程中是“NetStream.Buffer.Empty” 和““NetStream.Buffer.Full” 两种状态相互交替的。对这种长期“NetStream.Buffer.Empty” 的状态,要进行计时咯,我是每出现该状态就计时,200毫秒没有新的状态返回,就重连。有新的状态就重置计时器。
不知道有没有什么更好的办法
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询