更新记录
1.0.9(2025-03-29)
优化细节
1.0.8(2025-03-28)
优化细节
1.0.7(2025-03-27)
优化细节
查看更多
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 4.25,Android:5.0,iOS:11,HarmonyNext:不确定 |
× |
× |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
鸿蒙元服务 |
× |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
× |
× |
× |
× |
× |
× |
× |
× |
× |
yzc-vlckit 兼容安卓、iOS端VLC播放器,支持rtsp、rtmp流播放
uniappx用法
参数
参数 |
类型 |
是否必须 |
描述 |
url |
string |
是 |
播放连接 |
options |
string数组 |
否 |
配置vlc,只在初始化配置有效 |
aspectRatio |
string |
否 |
配置视频宽高比| |
options配置可参考
方法
|方法名|参数|说明|
|play|无参|播放方法|
|pause|无参|暂停方法|
|stop|无参|停止方法|
|setupAspectRatio|string|设置宽高比(如"16:9")|
组件引入
复制代码<vlc-video
ref="video"
class="video"
:options="vlcOptions"
url="rtsp://xxxxx"
aspectRatio="16:9"
@mediaPlayerStateChanged="mediaPlayerStateChanged"
@mediaPlayerTimeChanged="mediaPlayerTimeChanged"
@mediaPlayerVideoSizeChanged="mediaPlayerVideoSizeChanged"
></vlc-video>
类型导入
复制代码import { StateInfoType, TimeInfoType, VideoSizeType } from '@/uni_modules/yzc-vlckit/utssdk/interface.uts';
选项时API
复制代码export default {
data() {
return {
videoElement: null as VlcVideoElement | null
}
},
onLoad() {
},
methods: {
btnClick() {
if (this.videoElement == null) {
this.videoElement = this.$refs['video'] as VlcVideoElement
}
this.videoElement?.play()
},
mediaPlayerStateChanged(res: StateInfoType) {
console.log('video: state', res.state)
},
mediaPlayerTimeChanged(res: TimeInfoType) {
console.log('video: time', res.time)
},
mediaPlayerVideoSizeChanged(res: VideoSizeType) {
console.log('video: Size', res.videoWidth, res.videoHeight)
}
}
}
组合式API
复制代码const video = ref(null)
const btnClick = (() => {
(video.value as VlcVideoElement).play()
})
const mediaPlayerStateChanged = ((res: StateInfoType) => {
console.log('video: state', res.state)
})
const mediaPlayerTimeChanged = ((res: TimeInfoType) => {
console.log('video: time', res.time)
})
const mediaPlayerVideoSizeChanged = ((res: VideoSizeType) => {
console.log('video: Size', res.videoWidth, res.videoHeight)
})
uniapp用法
复制代码export default {
data() {
return {
}
},
onLoad() {
},
methods: {
btnClick() {
this.$refs['video'].play()
},
mediaPlayerStateChanged(res) {
console.log('video: state', res.detail.state)
},
mediaPlayerTimeChanged(res) {
console.log('video: time', res.detail.time)
},
mediaPlayerVideoSizeChanged(res) {
console.log('video: Size', res.detail.videoWidth, res.detail.videoHeight)
}
}
}
mediaPlayerStateChanged方法回调说明
state说明
类型 |
描述 |
'buffering' |
缓冲 |
'playing' |
正在播放 |
'stopped' |
播放暂停 |
'stopped' |
播放停止 |
'ended' |
播放结束 |
'error' |
播放错误 |
mediaPlayerTimeChanged方法回调说明
time说明 返回为ms的整数类型
mediaPlayerVideoSizeChanged方法回调说明
参数 |
类型 |
描述 |
videoWidth |
number |
视频宽(单位像素) |
videoHeight |
number |
视频高(单位像素) |
有联系方式吗作者