前言:
用vue來實現播放rtmp,代碼很簡單,主要用的ckplayer, 在使用過videojs,video等其餘插件之後,在播放視頻直播流這裏,以爲仍是ckplayer比較給力,這裏說下使用方法
實現效果:
目錄:html
實現步驟:vue
2、將下載好的包裏面的ckplayer文件夾拿出來,而後放到public裏面less
3、在public->index.html裏面引入文件ide
二、data裏面定義屬性spa
實現步驟:
1、下載ckplay按照包 入口
2、將下載好的包裏面的ckplayer文件夾拿出來,而後放到public裏面
3、在public->index.html裏面引入文件
<script src="ckplayer/ckplayer.min.js"></script>
4、寫一個 ckplayer.vue 組件
一、templayte裏面寫一個容器
二、data裏面定義屬性
三、js寫方法。prop中將視頻地址從外面獲取
<template> <div class="video" id="video_one" style="width: 100%;height:100%"></div> </template> <script> export default { name: '', components: {}, props: { sourceUrl: { type: String, default: '' }, }, data () { return { video: { one: { container: '#video_one', //容器的ID或className variable: 'player',//播放函數名稱 autoplay: true, live: true, video: 'rtmp://58.200.131.2:1935/livetv/hunantv',//視頻地址-rtmp的地址就能夠 }, }, } }, computed: {}, watch: { sourceUrl: { handler (val) { this.video.one.video = val; this.getOneVideo(); } } }, mounted () { this.getOneVideo(); }, created () { }, methods: { getOneVideo () { let player = new ckplayer(this.video.one); }, } } </script> <style lang="less" scoped> .ali-player{ width: 100%; .main { box-sizing: border-box; color: #FFFFFF; .video-center { position: relative; .name{ position: absolute; left: 50%; top: -20px; font-size: 18px; -webkit-transform: translateX(-50%); transform: translateX(-50%); } .tips{ position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); z-index: 9999; opacity: 0.79; } } } #video { width: 100%; height: 500px !important; opacity: 0.79; } } </style>
四、外面調用,將你的rtmp地址傳入就能夠了
<ckPlayer :sourceUrl="sourceUrl"></ckPlayer>