介绍
videoCompressor是一款ohos高性能视频压缩器。
目前实现的能力:
- 支持视频压缩
使用本工程
有两种方式可以下载本工程:
- 开发者如果想要使用本工程,可以使用git命令
git clone https://gitee.com/openharmony-sig/ohos_videocompressor.git --recurse-submodules
- 点击下载按钮,把本工程下到本地,再把third_party_bounds_checking_function代码下载后,放入videoCompressor/src/cpp/boundscheck目录下,这样才可以编译通过。
下载安装
ohpm install @ohos/videocompressor
OpenHarmony ohpm
环境配置等更多内容,请参考如何安装 OpenHarmony ohpm 包
使用
1、视频压缩接口展示
let videoCompressor = new VideoCompressor();
videoCompressor.compressVideo(getContext(),this.selectFilePath,CompressQuality.COMPRESS_QUALITY_HIGH).then((data) => {
if (data.code == CompressorResponseCode.SUCCESS) {
console.log("videoCompressor HIGH message:" + data.message + "--outputPath:" + data.outputPath);
} else {
console.log("videoCompressor HIGH code:" + data.code + "--error message:" + data.message);
}
}).catch((err) => {
console.log("videoCompressor HIGH get error message" + err.message);
})
支持的视频规格
支持的解封装格式:
媒体格式 | 封装格式 |
视频 | mp4、mpeg.ts |
支持的视频解码格式:
视频解码类型 |
AVC(H.264) |
支持的音频解码格式:
音频解码类型 |
AAC |
支持的视频编码格式:
视频编码类型 |
AVC(H.264) |
支持的音频编码格式:
音频编码类型 |
AAC |
支持的封装格式:
媒体格式 | 封装格式 |
视频 | mp4 |
接口说明
方法名 | 入参 | 接口描述 |
compressVideo(context: Context, inputFilePath: string, quality: CompressQuality): Promise | context:上下文,inputFilePath: 需要压缩的视频路径, quality: 压缩视频质量 | 视频压缩接口 |
单元测试用例详情见TEST.md
约束与限制
在下述版本验证通过:
DevEco Studio: (5.0.0.122), SDK: API12 (5.0.0.17)
DevEco Studio: 4.1 Canary(4.1.3.317), SDK: API11 (4.1.0.36)
DevEco Studio: Release(4.0.3.513), SDK: API10 (4.0.10.10)
目录结构
|----ohos_videocompressor
| |---- entry # 示例代码文件夹
| |---- videoCompressor # ohos_videocompressor库文件夹
| |---- index.ets # 对外接口
| |---- README_CN.md # 使用说明文档