Vue3播放m3u8視頻的兩種實(shí)現(xiàn)方式示例
第一種:vue3-video-play
1、安裝方式
(1)npm安裝方式
npm install vue3-video-play --save
(2)yarn安裝方式
yarn add vue3-video-play --save
2、頁(yè)面引入
import 'vue3-video-play/dist/style.css'; import VideoPlay from 'vue3-video-play';
3、示例代碼
<template>
<VideoPlay v-bind="options" width="100%" height="650px"/>
</template>
<script setup lang="ts">
import { reactive } from 'vue';
import 'vue3-video-play/dist/style.css';
import VideoPlay from 'vue3-video-play';
// 視頻配置項(xiàng)
const options = reactive({
src: '', //視頻源
muted: false, //靜音 自動(dòng)播放會(huì)自己靜音
webFullScreen: false,
speedRate: ['0.75', '1.0', '1.25', '1.5', '2.0'], //播放倍速
autoPlay: true, //自動(dòng)播放
loop: false, //循環(huán)播放
mirror: false, //鏡像畫面
ligthOff: false, //關(guān)燈模式
volume: 0.3, //默認(rèn)音量大小
control: true, //是否顯示控制器
poster: '',
type: 'm3u8',
});
// 調(diào)用接口
getVideo()
// 模擬接口獲取視頻源
async function getVideo() {
const res = await getVideoInfo();
options.src = res.data;
}
</script>
<style scoped>
</style>
?vue3-video-play 支持video原生所有Attributes video原生屬性 使用方式和props屬性使用一致
| 名稱 | 說(shuō)明 | 類型 | 可選值 | 默認(rèn)值 |
|---|---|---|---|---|
| width | 播放器寬度 | string | - | 800px |
| height | 播放器高度 | string | - | 450px |
| color | 播放器主色調(diào) | string | - | #409eff |
4、效果圖

第二種:chimee-player
1、引入依賴
npm install chimee-player --save
2、示例代碼
<template>
<div id="wrapper"></div>
</template>
<script setup lang="ts">
import { reactive } from 'vue';
import ChimeePlayer from 'chimee-player';
// 調(diào)用接口
getVideo()
// 模擬接口獲取視頻源
async function getVideo() {
const res = await getVideoInfo();
new ChimeePlayer ({
wrapper: '#wrapper', // video dom容器
src: res.data,
box: 'hls', // 視頻編碼flv、native和hls
isLive: false, // 類型
autoplay: true, // 自動(dòng)播放
controls: false, // 控制器
muted: true // 靜音
});
}
</script>
<style scoped>
</style>總結(jié)
到此這篇關(guān)于Vue3播放m3u8視頻的兩種實(shí)現(xiàn)方式的文章就介紹到這了,更多相關(guān)Vue3播放m3u8視頻內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vite配置別名并處理報(bào)錯(cuò):找不到模塊“xxx”或其相應(yīng)的類型聲明方法詳解
我在學(xué)習(xí)vue3+vite+ts的時(shí)候,在配置別名這一步的時(shí)候遇到了一個(gè)問(wèn)題,這篇文章主要給大家介紹了關(guān)于vite配置別名并處理報(bào)錯(cuò):找不到模塊“xxx”或其相應(yīng)的類型聲明的相關(guān)資料,需要的朋友可以參考下2022-11-11
elementplus el-table(行列互換)轉(zhuǎn)置的兩種方法
本文主要介紹了elementplus el-table(行列互換)轉(zhuǎn)置,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-06-06
vue中的任務(wù)隊(duì)列和異步更新策略(任務(wù)隊(duì)列,微任務(wù),宏任務(wù))
這篇文章主要介紹了vue中的任務(wù)隊(duì)列和異步更新策略(任務(wù)隊(duì)列,微任務(wù),宏任務(wù)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
Vue中對(duì)拿到的數(shù)據(jù)進(jìn)行A-Z排序的實(shí)例
今天小編就為大家分享一篇Vue中對(duì)拿到的數(shù)據(jù)進(jìn)行A-Z排序的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-09-09
vue中的依賴注入provide和inject簡(jiǎn)單介紹
這篇文章主要介紹了vue中的依賴注入provide和inject簡(jiǎn)單介紹,provide 選項(xiàng)允許我們指定我們想要提供給后代組件的數(shù)據(jù)/方法,本文通過(guò)組價(jià)刷新的案列給大家詳細(xì)講解,需要的朋友可以參考下2022-11-11
Nuxt3項(xiàng)目搭建過(guò)程(Nuxt3+element-plus+scss詳細(xì)步驟)
這篇文章主要介紹了Nuxt3項(xiàng)目搭建(Nuxt3+element-plus+scss詳細(xì)步驟),本次記錄一次使用Nuxt3搭建前端項(xiàng)目的過(guò)程,內(nèi)容包含Nuxt3的安裝,基于Vite腳手架(默認(rèn))構(gòu)建的vue3項(xiàng)目,element-plus的安裝配置,scss的安裝,目錄結(jié)構(gòu)的創(chuàng)建和解釋,需要的朋友可以參考下2022-12-12

