如何使用Video组件播放视频
参数说明: src: 鸿蒙系统中,video播放视频可以播放在线也可以播放本地文件,但是本地文件时,需要有文件可读权限,视频支持格式 mp4 mkv webm TS, 格式为:file://data/storage 播放本地文件 写法localVideo: Resource = $rawfile('test.mp4') 播放网络地址:直接写url地址即可 也可以播放在resources下video或者rawfile文件夹防多媒体资源, 格式为:dataability://的路径前缀
currentProgressRate 视频播放倍速说明: number取值仅支持:0.75,1.0,1.25,1.75,2.0。 默认值:1.0 | PlaybackSpeed.Speed_Forward_1_00_X
previewUri:视频未播放时的预览图片路径,默认不显示图片。
controller:设置视频控制器,可以控制视频的播放状态。
代码如下
@Entry
@Component
struct VideoPage {
//@State srcs: Resource = $rawfile('')
@State srch:string= 'https://www.w3school.com.cn/i/movie.mp4'
@State previewUri: Resource = $r('app.media.icon')
controller:VideoController = new VideoController()
build() {
Column(){
Video({
src:this.srch,//视频源
previewUri:this.previewUri,//预览图路径
currentProgressRate:PlaybackSpeed.Speed_Forward_1_00_X,//播放倍数
controller:this.controller //控制器
})
.autoPlay(true)
.controls(true)
.onStart(()=>{
console.error('onstart')
})
.onPause(()=>{
console.error('onpause')
})
.onFinish(()=>{
})
}
}
}
应用权限申请 本地视频播放,需要ohos.permission.MODIFY_AUDIO_SETTINGS和ohos.permission.READ_MEDIA两个权限 网络视频播放,需要ohos.permission.INTERNET网络权限 在resource/module.json5文件添加一下权限,注意在module节点下添加,如果已经有requestPermissions,直接在json数组上增加,如果没有就拷贝以下代码到module节点下即可。
"requestPermissions": [
{
"name": "ohos.permission.INTERNET",
"usedScene": {
"when": "always"
},
},
{
"name": "ohos.permission.MODIFY_AUDIO_SETTINGS",
"usedScene": {
"when": "always"
}
},
{
"name": "ohos.permission.READ_MEDIA",
"usedScene": {
"when": "always"
}
}
]
注意:模拟器和真机才能使用video组件,预览器是无法播放的