• vue.js 视频播放


    最近心学习vue.js开发,video开发播放!

    使用第三方的封装:https://www.npmjs.com/package/vue-video-player

    1. npm install vue-video --save 安装播放第三方插件;

    2.在main.js中

    import VueVideoPlayer from 'vue-video-player'
     
    Vue.use(VueVideoPlayer)
     

    3.使用vue里边

    import { videoPlayer } from 'vue-video-player'
     
    //声明组建
    components: {
    Header,
    videoPlayer
    }
     
    使用
    <template>
      <video-player  ref="videoPlayer"
                     :options="playerOptions"
     
                     title="you can listen some event if you need"
                     @play="onPlayerPlay($event)"
                     @pause="onPlayerPause($event)"
                     @ended="onPlayerEnded($event)"
                     @loadeddata="onPlayerLoadeddata($event)"
                     @waiting="onPlayerWaiting($event)"
                     @playing="onPlayerPlaying($event)"
                     @timeupdate="onPlayerTimeupdate($event)"
                     @canplay="onPlayerCanplay($event)"
                     @canplaythrough="onPlayerCanplaythrough($event)"
     
                     title="or listen state change"
                     @statechanged="playerStateChanged($event)"
     
                     title="The prepared event will be triggered after the videojs program instance completes, and its callback player object is the videojs callback function in this context"
                     @ready="playerReadied">
      </video-player>
    </template>
     
    <script>
      // Similarly, you can also introduce the plugin resource pack you want to use within the component
      // require('some-videojs-plugin')
      export default {
        data() {
          return {
            playerOptions: {
     
              // component options
              start: 0,
              playsinline: false,
     
              // videojs options
              muted: true,
              language: 'en',
              playbackRates: [0.7, 1.0, 1.5, 2.0],
              sources: [{
                type: "video/mp4",
                src: "https://cdn.theguardian.tv/webM/2015/07/20/150716YesMen_synd_768k_vp8.webm"
              }],
              poster: "/static/images/author.jpg",
            }
          }
        },
        mounted() {
          console.log('this is current player instance object', this.player)
        },
        computed: {
          player() {
            return this.$refs.videoPlayer.player
          }
        },
        methods: {
          // listen event
          onPlayerPlay(player) {
            // console.log('player play!', player)
          },
          onPlayerPause(player) {
            // console.log('player pause!', player)
          },
          // ...player event
     
          // or listen state event
          playerStateChanged(playerCurrentState) {
            // console.log('player current update state', playerCurrentState)
          },
     
          // player is ready
          playerReadied(player) {
            console.log('the player is readied', player)
            // you can use it to do something...
            // player.[methods]
          }
        }
      }
    </script>
     
     
    
    
  • 相关阅读:
    连接AI与用户,京东云推出视音频通信技术方案
    我身边的高T,问了Java面试者这样的问题......
    解密协议层的攻击——HTTP请求走私
    产业实践推动科技创新,京东科技集团3篇论文入选ICASSP 2021
    2021年人工智能数据采集标注行业四大趋势预测;清华提出深度对齐聚类用于新意图发现
    京东科技集团21篇论文高票入选国际顶会AAAI 2021
    别困惑,不是你的错!90%的开发者把Clubhouse看成了Clickhouse
    京东App Swift 混编及组件化落地
    对话京东科技算法科学家吴友政:回望2020,NLP技术发展速度强劲
    关于京东技术,你想了解的都在这里丨征文活动获奖及优秀专栏推荐
  • 原文地址:https://www.cnblogs.com/PeterWolf/p/7244473.html
Copyright © 2020-2023  润新知