检查视频是否正在流式传输

check if video is streaming

本文关键字:传输 视频 是否 检查      更新时间:2023-09-26

我有来自 http://www.tpai.tv/live 的这个流,但正如你现在看到的,它关闭了,我需要检查流是否正在播放,如果没有播放其他东西。

这是流代码:

<base href="http://www.jet7angola.com/entretenimento/tpa-internacional-online-directo.html">
<script src="http://www.jet7angola.com/tpa/jquery-1.6.2.min.js" type="text/javascript"></script>
<script src="/tpai/jquery-blink.js+jquery.mousewheel.js+jquery.rollover.js+jquery.jscrollpane.min.js+jquery.tools.min.js+jquery.fancybox-1.3.4.pack.js.pagespeed.jc.UjuzPwaNVv.js"></script>
<script>eval(mod_pagespeed_68xhNxTuZL);</script>
<script>eval(mod_pagespeed_20IR7GdmNb);</script>
<script>eval(mod_pagespeed_Bj_7y8YV5J);</script>
<script>eval(mod_pagespeed_kvFbwG5fFn);</script>
<script>eval(mod_pagespeed_5Z2gomwGm9);</script>
<script>eval(mod_pagespeed_u84aD23v_6);</script>
<script src="/tpai/jwplayer.js.pagespeed.jm.KvxnOnM4Zh.js" type="text/javascript"></script>
<script src="/tpai/swfobject.js+common.js.pagespeed.jc.nCJR8-Q7ly.js"></script>
<script>eval(mod_pagespeed_4NJ4whyEXd);</script>
<script>eval(mod_pagespeed_LzOFG2pWFp);</script>
<div align="justify" id="livemedia" style="width: 621px; height: 384px;">
    <script type="text/javascript">
    jwplayer("livemedia").setup({"skin":"http://www.tpai.tv/swf/jwplayer/skins/nacht/nacht.zip","id":"livemediaplayer","autostart":"true","rtmp.subscribe":"true","file":"http://www.tpai.tv/tpai_rtmp_dynamic_streaming.xml","controlbar":"none","volume":100,"width":"100%","height":"100%","modes":[{type:"flash",src:"http://www.tpai.tv/swf/jwplayer/player.swf"}]});
    </script>
</div>

更新。。。

            <div align="justify" id="livemedia" style="width: 621px; height: 384px;">
                <script type="text/javascript">
                .onReady(function(){
                    if(this.getState() == "playing"){
                        jwplayer("livemedia").setup({"skin":"http://www.tpai.tv/swf/jwplayer/skins/nacht/nacht.zip","id":"livemediaplayer","autostart":"true","rtmp.subscribe":"true","file":"http://www.tpai.tv/tpai_rtmp_dynamic_streaming.xml","controlbar":"none","volume":100,"width":"100%","height":"100%","modes":[{type:"flash",src:"http://www.tpai.tv/swf/jwplayer/player.swf"}]});
                    } else {
                        <embed style="vertical-align: middle;width:100%;height:100%;" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" src="http://www.rtp.pt/play/player.swf?v3" id="obj_player_prog" name="obj_player_prog" quality="high" allowfullscreen="true" wmode="opaque" allowscriptaccess="always" allownetworking="all" class="embed-responsive-item" flashvars="streamer=rtmp://rtppullswflivefs.fplive.net/rtppullswflive-live&amp;file=2ch27h264&amp;image=undefined&amp;controlbar=over&amp;skin=http://www.rtp.pt/swfjs/skin/fk.zip&amp;autostart=true&amp;plugins=http://programas.rtp.pt/play/ova-jw-play.swf,timeslidertooltipplugin-3&amp;stretching=exactfit&amp;config=http://www.rtp.pt/services/rtpplay/pub/config_page_play/566651108/rtp-play/direto/canais-tv/rtpafrica&amp;abouttext=© RTP.PT&amp;screencolor=0x000000&amp;aboutlink=http://www.rtp.pt/">
                    }    
                });
                </script>
            </div>  
您需要

使用返回播放器当前播放状态的getState()

jwplayer("livemedia").setup({
    // Setup parameters
}).onReady(function(){
    if(this.getState() == "playing"){
        // WOO HOO: (Don't cross the streams!)
    } else {
        //THE STREAM IS DOWN!
    }    
});

可用选项包括:

  • 空闲:播放尚未开始或播放已停止(由于 stop() 调用或错误)。播放或错误图标在显示屏中可见。
  • 缓冲:用户按下播放,但必须先加载足够的数据才能开始播放。缓冲图标在显示。
  • 正在播放:视频当前正在播放。显示屏中没有可见图标。
  • 已暂停
  • :视频当前已暂停。播放图标在显示屏中可见。

接口参考:

在这里查看 jwplayer API 参考:

https://support.jwplayer.com/customer/portal/articles/1413089-javascript-api-reference#playback