更新记录

1.0.1(2021-11-09)

版本发布


平台兼容性

Android Android CPU类型 iOS
适用版本区间:7.0 - 11.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


简介

视频编辑服务(Video Editor Kit)是华为快速构建视频编辑能力的服务,插件集成视频编辑UI SDK,提供产品级UI界面。

功能

  • 支持多视频、多图片快速删除、混合导入,可自由调整片段排放顺序和时长,快速进入编辑界面。为了更好的编辑操作体验,建议导入1080p及以下的视频。
  • 支持剪辑基本操作,包括分割、删除、音量、比例、变速、画布、旋转、裁剪、动画、蒙版、镜像、复制、替换。
  • 支持添加滤镜,可自由调整亮度、对比度、饱和度、色调、色温、锐化等参数。
  • 支持画中画功能,在视频中插入另一视频,使原视频全屏播出的同时,在画面的小面积区域上同时播出插入的另一视频。
  • 支持添加音乐/音效、录音和本地视频音频提取,可对音频淡入淡出、音量调节、变速等。
  • 支持保存创作作品草稿,在创作作品列表中可删除草稿。
  • 支持导出视频,可抽取视频中任意一帧画面或导入相册中的图片作为封面,设置导出视频的分辨率(最高支持4K)和帧率(最高支持60帧)后,最终打包生成为MP4格式的视频。
  • 提供内容丰富的素材库供开发者使用,后续会不断丰富更新,并且会提供免费内容给开发者使用。
  • 支持将高分辨率视频降采样到低分辨率。

联系

有任何问题联系插件作者QQ:1032488929 群:954807577

配置和使用

1. 配置AppGallery Connect

1.1 登录AppGallery Connect网站,点击“我的项目”

1.2 在项目列表中找到您的项目(如没有可添加新项目)

1.3 在“项目设置 > 常规”页面的“应用”区域(如没有可新建应用),点击“agconnect-services.json”下载配置文件

1.4 在“增长 > 视频编辑服务”中开启服务

2. 添加AppGallery Connect配置文件

插件需要依赖1.3中下载的agconnect-services.json配置文件,由于uniapp目前不支持直接对插件进行配置文件的添加,故通过另一种方式进行配置文件的集成。

2.1 在uniapp项目的manifest.json的APP模块配置中勾选uniPush推送(项目本身可不用推送功能)

2.2 在厂商推送设置--华为模块中上传agconnect-services.json配置文件

3. 插件的使用

华为集成内容官方文档:地址 编排素材相关:地址

init(初始化)

{"LicenseId":"","apiKey":""}

参数 含义
LicenseId 唯一标识ID
apiKey AppGallery Connect注册应用时分配的apikey

getDraftList(获取草稿列表)

参数 含义

editor(开始视频编辑)

参数 含义

draftEditor(草稿编辑)

{"draftId":""}

参数 含义
draftId 草稿的ID

deleteDrafts(删除草稿)

{"draftIds":["",""]}

参数 含义
draftIds 需要删除的草稿ID列表

示例代码

<template>
    <view class="content">
        <view>
            <button @click="init">初始化</button>
            <button @click="getDraftList">获取草稿列表</button>
            <button @click="editor">编辑视频</button>
            <button @click="deleteDrafts">删除草稿</button>
        </view>
        <view>
            <view>草稿列表</view>
            <view v-for="(item,index) in list" :key="index" class="list" @click="draftEditor(item.draftId)">
                <image :src="'file://'+item.draftCoverPath"></image>
            </view>
        </view>
    </view>
</template>

<script>
    var videoModule = uni.requireNativePlugin("wss-videoEditor")
    export default {
        data() {
            return {
                list:[]
            }
        },
        onLoad() {

        },
        methods: {
            init(){
                videoModule.init({"LicenseId":"",
                                  "apiKey":""},
                    (ret) => {
                        console.log(ret)
                    })
            },
            getDraftList(){
                videoModule.getDraftList(null,
                    (ret) => {
                        this.list = ret.data
                        console.log(this.list)
                    })
            },
            editor(){
                videoModule.editor({},
                    (ret) => {
                        console.log(ret)
                    })
            },
            draftEditor(draftId){
                videoModule.draftEditor({"draftId":draftId},
                    (ret) => {
                        console.log(ret)
                    })
            },
            deleteDrafts(){
                var ids = [];
                for (var i = 0; i < this.list.length; i++) {
                    ids.push(this.list[i].draftId)
                }
                var draftIds = {"draftIds":ids};
                videoModule.deleteDrafts(draftIds,
                    (ret) => {
                        console.log(ret)
                    })
            }
        }
    }
</script>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

"android.permission.VIBRATE", "android.permission.RECORD_AUDIO", "android.permission.WRITE_EXTERNAL_STORAGE", "android.permission.READ_EXTERNAL_STORAGE", "android.permission.INTERNET", "android.permission.CHANGE_NETWORK_STATE", "android.permission.ACCESS_NETWORK_STATE"

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件使用的Video Editor Kit会采集数据用于统计分析及服务改进,详情可参考:https://developer.huawei.com/consumer/cn/doc/development/Media-Guides/sdk-data-security-0000001147828303

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问