OpenHarmony多媒体-ohos_videocompressor

介绍

videoCompressor是一款ohos高性能视频压缩器。

目前实现的能力:

  • 支持视频压缩

使用本工程

有两种方式可以下载本工程:

  1. 开发者如果想要使用本工程,可以使用git命令
git clone https://gitee.com/openharmony-sig/ohos_videocompressor.git --recurse-submodules
  1. 点击下载按钮,把本工程下到本地,再把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): Promisecontext:上下文,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  # 使用说明文档

为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙开发学习手册》:

如何快速入门:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. ……

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ……

基于ArkTS 开发:https://qr21.cn/FV7h05

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. ……

鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH

鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH

1.项目开发必备面试题
2.性能优化方向
3.架构方向
4.鸿蒙开发系统底层方向
5.鸿蒙音视频开发方向
6.鸿蒙车载开发方向
7.鸿蒙南向开发方向

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/214.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

推荐一款免费虚拟主机,小编亲测好用!

虚拟主机是一种将物理服务器分割成多个虚拟服务器的技术,每个虚拟服务器都具有独立的操作系统和资源。相较于独立服务器,虚拟主机具有较低的成本和维护难度,因此受到了许多个人和小型企业的青睐。本文将为大家推荐一款免费且性能优秀的虚拟主…

鸿蒙入门05-真机运行“遥遥领先”

如果你有一台真的 "遥遥领先"那么是可以直接在手机上真机运行你的项目的我们也来尝试一下运行 一、手机设置开发者模式 打开手机设置 打开手机设置界面 向下滑动到关于手机位置 快速连续点击版本号位置 下图所示位置快速连续点击 打开 3 - 5 次即可 会提示您已经进…

跨境电商MercadoLibre(美客多)平台预约号操作流程自动化系统

目录 一、前置配置准备 1. 安装Chrome插件 2. 添加预约配置 二、开始使用 MercadoLibre(美客多)于2021年10月18号上线了新预约入仓系统,在MercadoLibre美客多平台上,新入仓预约系统是一项非常重要的功能,它可以帮助…

每日两题 / 53. 最大子数组和 56. 合并区间(LeetCode热题100)

53. 最大子数组和 - 力扣(LeetCode) 经典dp题,dp[i]表示以nums[i]为结尾的所有子数组中,最大的和 将i从左到右遍历,考虑dp[i]如何维护? 以nums[i]结尾的子数组只有两种情况,子数组只有nums[i]…

【Lattice FPGA 开发】Diamond的使用

文章目录 Diamond的使用教程界面器件查看与更改管脚分配RTL分析图查看 第三方工具关联Notepad 问题与解决管脚被分类到unconnected,导致无法分配管脚 Diamond的使用教程 【Lattice FPGA 开发】Diamond的工程建立、文件输入、ip核配置、管脚配置、综合及布线以及下载…

2024年五一杯数学建模B题思路分析

文章目录 1 赛题思路2 比赛日期和时间3 组织机构4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间:2024…

Unity类银河恶魔城学习记录12-17 p139 In game UI源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili UI.cs using UnityEngine;public class UI : MonoBehaviour {[SerializeFie…

移远通信:立足5G RedCap新质生产力,全力推动智能电网创新发展

随着全球能源结构的转型和电力需求的持续增长,智能电网产业迎来了新的发展机遇。而物联网、大数据等前沿技术的创新和应用,正在为电力行业的发展注入强劲的新质生产力。 4月9日,第四十八届中国电工仪器仪表产业发展技术研讨及展会在杭州拉开帷…

第二部分 Python提高—GUI图形用户界面编程(三)

简单组件学习 Radiobutton 单选按钮、Checkbutton 复选按钮和canvas 画布 文章目录 Radiobutton 单选按钮Checkbutton 复选按钮canvas 画布 Radiobutton 单选按钮 Radiobutton 控件用于选择同一组单选按钮中的一个。Radiobutton 可以显示文本,也可以显示图像。 f…

当下AI驱动下的广告营销,是一个“领先的落后行业” | 第八届社交媒体风向大会

内容创作者调研显示:AI渗透率竟不足两成? 人类是智能化发展的缔造者,也是前行的绊脚石? 为什么说广告营销行业是“领先的落后行业”? 针对AI浪潮下社交媒体领域的发展,4月15日的风向大会上,微播易创始人…

基于SSM+Jsp+Mysql的准速达物流管理系统

开发语言:Java框架:ssm技术:JSPJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包…

MAC M1版IDEA热部署JRebel

1、在idea里面安装jrebel插件 2、下载激活工具:ReverseProxy_darwin_amd64 下载地址(Mac早期用户使用Safari下载,不要用Chrome,否则下载之后会把.dms后缀名去掉) 特别注意:M1用户请使用下面的下载&#xff…

擎耀解码奔驰LED矩阵大灯大灯技术方案及九大特点

在汽车工业的照明领域,梅赛德斯-奔驰一直是创新的先锋。其最新的ABD矩阵大灯技术方案,不仅体现了品牌对安全和舒适驾驶体验的不懈追求,更是智能照明系统发展的一个里程碑。本文将详细介绍这一技术的构成、工作原理及其带来的益处。 ABD矩阵大…

第46篇:随机存取存储器(RAM)模块<五>

Q:本期我们使用Quartus软件的IP Catalog工具创建双端口RAM。 A:前期创建的RAM存储模块只有一个端口,同时为读/写操作提供地址。我们将再创建一个具有两个地址输入端口的RAM模块,分别为读操作和写操作提供地址。选择Basic Functio…

【笔试强训】双指针的思想!

1.数组中字符串的最小距离 题目链接 解题思路&#xff1a; 小技巧 ✌&#xff1a;标记两个字符串是否被找到&#xff0c;每次找到一个字符串就更新一次答案来保证找到的是最小距离。 实现代码&#xff1a; #include <iostream> using namespace std;int main() {in…

python学习笔记B-06:序列结构之列表--列表的创建和删除

序列结构主要有列表、元组、字典、集合和字符串&#xff0c;列表是要学习的第一种序列结构。下面是列表的创建和删除方法。 import random #导入一个随机数发生器 print("创建列表方法1&#xff1a;直接列表名&#xff0c;等号&#xff0c;方括号中间内容用逗号隔开&quo…

工业网络交换机的网络容错机制

在工业领域&#xff0c;网络的稳定性和可靠性至关重要。工业网络交换机作为工业网络的核心设备之一&#xff0c;其网络容错机制对于确保工业网络的稳定运行至关重要。本文将深入探讨工业网络交换机的网络容错机制&#xff0c;以及其在保障工业网络稳定性方面的重要作用。 1. 工…

Android开发:发送验证码验证手机号——榛子云短信服务

榛子云短信官网 点击注册后进行登录 页面如下图所示很是简洁&#xff0c;也省去了很多复杂的流程 需要进行充值 价格相对公道&#xff0c;个人开发测试完全够用 我的应用中有后续开发要用到的AppId和AppSecret 短信模板中可以根据个人需要进行编辑但是要进行审核 后续开发中需…

python自动化之网易自动点歌

这个代码是是使用的pyautogui库和pyperclip库完成的&#xff0c;这个库是开源的地址如下&#xff1a;https://github.com/asweigart/pyautogui这里详细的用法想学习的可以到这看看 下面是代码&#xff1a; import pyautogui import subprocess import pyperclip import time i…

【大模型书籍分享】从零开始大模型开发与微调:基于PyTorch与ChatGLM

今天又来给大家推荐一本大模型方面的书籍<从零开始大模型开发与微调&#xff1a;基于PyTorch与ChatGLM>。 本书使用PyTorch 2.0作为学习大模型的基本框架&#xff0c;以ChatGLM为例详细讲解大模型的基本理论、算法、程序实现、应用实战以及微调技术&#xff0c;为读者揭…