chnyyychn 发表于 2022-3-27 22:28:07

m3u8直播+回掉只能回看,无法返回直播

我有两个m3u8,一个是直播的,一个是回看的,结果测试后发现,默认进入了回看状态,因为左下角显示返回直播按钮,点返回直播一闪一下又回到回看状态,无法进入直播。使用官网演示的mp4测试,或者使用ts测试,都可以在直播和回看之间切换。只要直播使用hls.js,那就只能进入回看,无法返回直播。

chnyyychn 发表于 2022-3-28 07:40:32

今天早上无意中用手里的华为手机试了一下,发现默认是播放直播,但点击观看回看,虽然也进入了,但实际并不能看到回看,因为后面的时长是0

niandeng 发表于 2022-3-28 09:17:12

请提供详细的调用代码

chnyyychn 发表于 2022-3-28 09:52:03


<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title>ckplayer</title>
                <link type="text/css" rel="stylesheet" href="ckplayer/css/ckplayer.css" />
                <!--
                        如果需要使用其它语言,请在此处引入相应的js,比如:<script type="text/javascript" src="ckplayer/language/en.js" charset="UTF-8"></script>
                -->
                <script type="text/javascript" src="ckplayer/js/ckplayer.js" charset="UTF-8"></script>
        </head>
        <body>
               
                <div class="video" style="width: 100%; height: 500px;max-width: 800px;">播放容器</div>
<script>
        var videoObject={},player=null;//定义一个播放器初始化变量以及定义一个播放器变量
        function livePlayer(){//配置直播放
                if(player){//如果播放器已存在
                        player.remove();//卸载播放器
                }
                videoObject = {//配置直播初始化属性
                        container: '.video', //容器的ID或className
                        live:1648366459000,//直播开始时间戳
                        autoplay:true,//自动播放
                        playbackrateOpen:false,//不显示倍速菜单
                        plug:'hls.js',
                        video:'https://www.syhs.org/sztv/liveview/index.m3u8'//直播地址
                };
                player=new ckplayer(videoObject);//初始化播放
                player.seek(function(obj){//监听用户点击进度条
                        onDemandPlayer(obj['time']);//点击后进行对应的点播配置
                });
        }
        livePlayer();//默认调用直播函数进行播放
       
        function onDemandPlayer(time){//配置点播
                if(player){//如果播放器已存在
                        player.remove();//卸载播放器
                }
                videoObject = {//配置回看初始化属性
                        container: '.video', //容器的ID或className
                        autoplay:true,//自动播放
                        backLive:true,//显示返回直播按钮
                        plug:'hls.js',
                        video:'https://www.syhs.org/sztv/liveview/index.m3u8'//直播地址
                };
                player=new ckplayer(videoObject);//初始化播放器
                player.backLive(function(){//监听用户点击回到直播按钮事件
                        livePlayer();//调用直播
                });
                player.ended(function(){//监听当前回看结束自动返回直播
                        livePlayer();//调用直播
                });
        }
</script>

        </body>
</html>

niandeng 发表于 2022-3-28 10:22:54

从上面的代码来看,本身没有问题,除了直播地址和点播地址一样这个问题导致该方案失效

chnyyychn 发表于 2022-3-28 10:30:05

手机测试情况:微信扫码打开,视频部分黑屏,无法画面也无声音。使用浏览器打开,现在同2楼。

andypowerise 发表于 2023-4-2 19:40:35

niandeng 发表于 2022-3-28 10:22
从上面的代码来看,本身没有问题,除了直播地址和点播地址一样这个问题导致该方案失效 ...

为什么我的m3u8直播,电脑和苹果手机都可以,安卓手机的浏览器就各种不同的错误呢?有的code:0,有的code:9,有的code:12
页: [1]
查看完整版本: m3u8直播+回掉只能回看,无法返回直播