ckplayer播放m3u8格式直播,安卓端无用

公司项目,使用ckplayer播放m3u8格式直播
在ios端没问题,但是在安卓端无法播放,黑屏无声音,不报任何错误
使用的最新ckplayer版本,部分代码

let videoObject = {
    container: '#video',
    variable: 'player',
    autoplay: false,
    debug:true,
    mobileCkControls:false,
    live:true,
    video: "https://XXX/playlist.m3u8"
};
this.player = new ckplayer(videoObject);

ios端返回的m3u8播放列表,返回完毕后会自动请求.ts文件进行播放

#EXTM3U
#EXT-X-MEDIA-SEQUENCE:1955
#EXT-X-ALLOW-CACHE:NO
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXTINF:10,
./c01-1955.ts
#EXTINF:10,
./c01-1956.ts
#EXTINF:10,
./c01-1957.ts

安卓端也返回这些信息但是就不请求.ts文件了,请问有人知道是哪里有问题吗
补充:刚刚试了下,在安卓其他浏览器中是可以播放的,但是在玎钉中无法播放,请问需要做什么兼容吗

阅读 3.5k
1 个回答

改用video.js来播放m3u8视频了
npm下载

"video.js": "^7.15.4",
"videojs-contrib-hls": "^5.15.0",

在引用的地方引入

import videojs from 'video.js/dist/video.js'
import 'videojs-contrib-hls'
import 'video.js/dist/video-js.css'

使用video标签

<video
  v-if="videoSrc"
  class="video-js vjs-default-skin"
  webkit-playsinline="true"
  playsinline="true"
  style="width:100%;height:calc(100% - 0px)"
  id="refVideoJsItem"
  ref="refVideoJsItem"
  controls
  muted
  preload="auto">
    <source
        :src="videoSrc"
        type="application/x-mpegURL">
    </source>
</video>

js写入

videojs(
  'refVideoJsItem',
  {
    bigPlayButton: true,
    textTrackDisplay: false,
    // posterImage: true,
    // errorDisplay: false,
    controlBar: true
    // debug:true
  },
  function () {
    // this.play()
  }
)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题