648540858
2022-06-13 c827d1518bc30e76259f59186ef10bfc8a989294
#510 jessibuca分屏监控异常
1个文件已修改
35 ■■■■ 已修改文件
web_src/src/components/common/jessibuca.vue 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web_src/src/components/common/jessibuca.vue
@@ -23,7 +23,7 @@
</template>
<script>
let jessibuca = null;
let jessibucaPlayer = {};
export default {
  name: 'jessibuca',
  data() {
@@ -49,6 +49,7 @@
    window.onerror = (msg) => {
      // console.error(msg)
    };
    console.log(this._uid)
    let paramUrl = decodeURIComponent(this.$route.params.url)
    this.$nextTick(() => {
      this.updatePlayerDomSize()
@@ -88,7 +89,7 @@
      let options = {};
      console.log("hasAudio  " + this.hasAudio)
      jessibuca = new window.Jessibuca(Object.assign(
      jessibucaPlayer[this._uid] = new window.Jessibuca(Object.assign(
        {
          container: this.$refs.container,
          videoBuffer: 0.2, // 最大缓冲时长,单位秒
@@ -117,7 +118,7 @@
        },
        options
      ));
      let jessibuca = jessibucaPlayer[this._uid];
      let _this = this;
      jessibuca.on("load", function () {
        console.log("on load init");
@@ -216,40 +217,40 @@
    },
    play: function (url) {
      console.log(url)
      if (jessibuca) {
      if (jessibucaPlayer[this._uid]) {
        this.destroy();
      }
      this.create();
      jessibuca.on("play", () => {
      jessibucaPlayer[this._uid].on("play", () => {
        this.playing = true;
        this.loaded = true;
        this.quieting = jessibuca.quieting;
      });
      if (jessibuca.hasLoaded()) {
        jessibuca.play(url);
      if (jessibucaPlayer[this._uid].hasLoaded()) {
        jessibucaPlayer[this._uid].play(url);
      } else {
        jessibuca.on("load", () => {
        jessibucaPlayer[this._uid].on("load", () => {
          console.log("load 播放")
          jessibuca.play(url);
          jessibucaPlayer[this._uid].play(url);
        });
      }
    },
    pause: function () {
      if (jessibuca) {
        jessibuca.pause();
      if (jessibucaPlayer[this._uid]) {
        jessibucaPlayer[this._uid].pause();
      }
      this.playing = false;
      this.err = "";
      this.performance = "";
    },
    destroy: function () {
      if (jessibuca) {
        jessibuca.destroy();
      if (jessibucaPlayer[this._uid]) {
        jessibucaPlayer[this._uid].destroy();
      }
      if (document.getElementById("buttonsBox") == null) {
        this.$refs.container.appendChild(this.btnDom)
      }
      jessibuca = null;
      jessibucaPlayer[this._uid] = null;
      this.playing = false;
      this.err = "";
      this.performance = "";
@@ -262,7 +263,7 @@
    },
    fullscreenSwich: function () {
      let isFull = this.isFullscreen()
      jessibuca.setFullscreen(!isFull)
      jessibucaPlayer[this._uid].setFullscreen(!isFull)
      this.fullscreen = !isFull;
    },
    isFullscreen: function () {
@@ -273,8 +274,8 @@
    }
  },
  destroyed() {
    if (jessibuca) {
      jessibuca.destroy();
    if (jessibucaPlayer[this._uid]) {
      jessibucaPlayer[this._uid].destroy();
    }
    this.playing = false;
    this.loaded = false;