写点什么

harmony_flutter video_trimmer 实现视频剪辑

作者:flfljh
  • 2024-12-19
    湖南
  • 本文字数:960 字

    阅读完需:约 3 分钟

简介


videotrimmer 是在 OpenHarmony 环境下,提供视频剪辑能力的三方库


安装教程


 ohpm install @ohos/videotrimmer
复制代码


OpenHarmony ohpm 环境配置等更多内容,请参考 如何安装OpenHarmony ohpm包


使用介绍


构建 VideoTrimmerOption 对象:


 getContext(this).resourceManager.getMediaContent($r('app.media.app_icon'))      .then(uint8 =>{        let imageSource = image.createImageSource(uint8.buffer as any); // 步骤一:文件转为pixelMap 然后变换 给Image组件        imageSource.createPixelMap().then(pixelmap => {          this.videoTrimmerOption = {            srcFilePath: this.filePath,            listener:{              onStartTrim: ()=>{                console.log('dodo  开始裁剪')                this.dialogController.open()              },              onFinishTrim:(path:string) => {                console.log('dodo  裁剪成功 path='+path)                this.outPath = path;                this.dialogController.close()              },              onCancel:()=>{                console.log('dodo  用户取消')                router.replaceUrl({url:'pages/Index',params:{outFile: this.outPath}})              }            },            loadFrameListener:{              onStartLoad:()=>{                console.log('dodo  开始获取帧数据')                this.dialogController.open()              },              onFinishLoad:()=>{                console.log('dodo  获取帧数据结束')                this.dialogController.close()              }            },            frameBackground: "#FF669900",            framePlaceholder: pixelmap          }        })

})
复制代码


界面 build()中使用 VideoTrimmerView 组件,传入 VideoTrimmerOption 对象


build() {    Row() {      Column() {        VideoTrimmerView( {videoTrimmerOption:this.videoTrimmerOption!!})      }      .width('100%')    }    .height('100%')  }
复制代码


参数说明


VideoTrimmerOption 视频剪辑选项



VideoTrimListener 视频剪辑回调



VideoLoadFramesListener 视频加载回调



用户头像

flfljh

关注

还未添加个人签名 2024-10-29 加入

还未添加个人简介

评论

发布
暂无评论
harmony_flutter video_trimmer实现视频剪辑_flfljh_InfoQ写作社区