【视频转码】基于RK3588的视频转码探索

        传统的视频转码服务基本都是基于X86下CPU、GPU转码,对硬件性能、功耗、成本来说都比较高。从技术角度来说现有视频转码技术有:

视频编码转变:

        1. H.264 => H.265 保持视频分辨率、清晰度不变情况下,更改视频压缩方式,可以有效降低码率、视频帧率,更适合网络传输。

        2. H.265 => H.264 保持视频分辨率、清晰度不变情况下,更改视频压缩方式,对一些播放条件要求的进行转换,如WebRTC下无法播放H265视频流,这时就是需要进行视频转码。

        3. H.264 => H.264  保持视频分辨率不变情况下,一般用来降低码流、帧率的方式进行视频压缩,使之更适合更低速率的网络进行视频传输。

        4. H.265 => H.265  保持视频分辨率不变情况下,一般用来降低码流、帧率的方式进行视频压缩,使之更适合更低速率的网络进行视频传输。

使用技术:

        分析市场上产品来看,几乎都在使用ffmpeg来进行视频的编解码、转码,再加上ffmpeg的技术迭代更新比较迅速,技术研发者都比较熟悉其API调用,可以通过少量命令参数、PIPELINE等方式即可进行硬件性能的调用(CUDA、QSV、Vaapi、vdupa等等)。

改变:

        通过技术预研,硬件分析等发现基于瑞芯微3588的方案,目前还比较适合用来做视频编解码,本身RK3588的VPU支持最多16路1080P@25fps的编码和解码(同编同解)。编解码侧有rkmpp的sdk,图片缩放有RGA。

        同样也可以使用ffmpeg的api接口来进行调用,github上有位大佬集成了mpp和rga链接ffmpeg with rockchip,通过此分支利用无缝的把X86上的程序迁移至arm上运行。

Decoders/Hwaccel:

V..... av1_rkmpp            Rockchip MPP (Media Process Platform) AV1 decoder (codec av1)
 V..... h263_rkmpp           Rockchip MPP (Media Process Platform) H263 decoder (codec h263)
 V..... h264_rkmpp           Rockchip MPP (Media Process Platform) H264 decoder (codec h264)
 V..... hevc_rkmpp           Rockchip MPP (Media Process Platform) HEVC decoder (codec hevc)
 V..... mpeg1_rkmpp          Rockchip MPP (Media Process Platform) MPEG1VIDEO decoder (codec mpeg1video)
 V..... mpeg2_rkmpp          Rockchip MPP (Media Process Platform) MPEG2VIDEO decoder (codec mpeg2video)
 V..... mpeg4_rkmpp          Rockchip MPP (Media Process Platform) MPEG4 decoder (codec mpeg4)
 V..... vp8_rkmpp            Rockchip MPP (Media Process Platform) VP8 decoder (codec vp8)
 V..... vp9_rkmpp            Rockchip MPP (Media Process Platform) VP9 decoder (codec vp9)

Encoders:

 V..... h264_rkmpp           Rockchip MPP (Media Process Platform) H264 encoder (codec h264)
 V..... hevc_rkmpp           Rockchip MPP (Media Process Platform) HEVC encoder (codec hevc)

Filters:

... overlay_rkrga     VV->V      Rockchip RGA (2D Raster Graphic Acceleration) video compositor
 ... scale_rkrga       V->V       Rockchip RGA (2D Raster Graphic Acceleration) video resizer and format converter
 ... vpp_rkrga         V->V       Rockchip RGA (2D Raster Graphic Acceleration) video post-process (scale/crop/transpose)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

hyperf 二十五 数据迁移 一

教程:Hyperf 版本说明 一 生成迁移 php bin/hyperf.php gen:migration create_users_table 执行文件:Hyperf\Database\Commands\Migrations\GenMigrateCommand 功能:创建迁移文件 参数: name 文件名称 选项: c…

【JS】关于this的使用

this 前言一、this是什么?二、做什么?1.全局环境2.函数环境3.new实例对象4.apply、bind、call绑定4.1 apply()4.2 call()4.3 bind() 三、为什么用this?四、如何改变this?五、应用场景?总结 前言 痛点 经常写Vue项目&a…

day36 贪心算法part5

435. 无重叠区间 中等 给定一个区间的集合 intervals ,其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 气球问题稍加改动就可ac 一个交叉区间里,最终只能保留一个,其他的全部要去掉。…

软考66-上午题-【面向对象技术】-小结+杂题

一、杂题 真题1: 真题2: 真题4: 真题5: 真题6: 二、面向对象设计-总结 2-1、考题分析 选择题:11道(11分) 综合分析题:2道(30分) java程序设计…

Common Sense Machines(CSM):立志成为图像生成适用于游戏引擎的3D资产AI产品

详细说明 Common Sense Machines(CMS):立志成为图像生成适用于游戏引擎的3D资产AI产品-喜好儿aigc详细说明:https://heehel.com/CSM-3d 官方网站:https://www.csm.ai/ 使用体验网址:https://3d.csm.ai/ 来…

Rust错误处理和Result枚举类异常错误传递

Rust 有一套独特的处理异常情况的机制,它并不像其它语言中的 try 机制那样简单。 首先,程序中一般会出现两种错误:可恢复错误和不可恢复错误。 可恢复错误的典型案例是文件访问错误,如果访问一个文件失败,有可能是因…

微信小程序用户登陆和获取用户信息功能实现

官方文档: https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 接口说明: https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-login/code2Session.html 我们看官方这个图,梳理一下用户…

【Python爬虫实战】抓取省市级城市常务会议内容

🍉CSDN小墨&晓末:https://blog.csdn.net/jd1813346972 个人介绍: 研一|统计学|干货分享          擅长Python、Matlab、R等主流编程软件          累计十余项国家级比赛奖项,参与研究经费10w、40w级横向 文…

Three.js--》探寻Cannon.js构建震撼的3D物理交互体验(二)

我们用three.js可以绘制出各种酷炫的画面,但是当我们想要一个更加真实的物理效果的话,这个时候我们就需要一个物理的库,接下来我们就讲解一下今天要学习的canon,它可以给我们提供一个更加真实的物理效果,像物体的张力、…

Python - Pycharm 配置 autopep8 并设置快捷键

什么是 PEP8 官方:PEP 8 – Style Guide for Python Code | peps.python.org PEP8 是 Python 官方推出的一套编码的规范,只要代码不符合它的规范,就会有相应的提示,还可以让代码自动的格式化 Pycharm 自带的代码格式化 ​ 但这…

【C++】String常用的函数总结

目录 一、string的构造函数方式: 二、常用的大小/容量相关操作: 三、string的常用修改操作: 四、string的遍历: 五、string的任意位置插入 / 删除: 六:补充: 一、string的构造函数方式&a…

JavaWeb环境配置 IDE2022版

一、新建一个javaweb文件 文件名可以自己随意改 二、给建立的项目添加框架支持 勾选Web Application,点击确定 建立成功界面,会生成一个新的web文件夹 三、配置tomcat 1、两种打开配置文件方式: 第一种 第二种 2、打开后,点击号&#xf…

LLM | Gemma的初体验

一起来体验一下吧~ google/gemma-7b-it Hugging Face 此型号卡对应于 Gemma 型号的 7B 指令版本。还可以选择 2B 基本模型、7B 基本模型和 2B 指导模型的模型卡。 微调 使用 QLoRA 对 UltraChat 数据集执行监督微调 (SFT) 的脚本在 TPU 设备上使用 FS…

鸿蒙Harmony应用开发—ArkTS声明式开发(手势处理:绑定手势方法)

为组件绑定不同类型的手势事件,并设置事件的响应方法。 说明: 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 绑定手势识别 通过如下属性给组件绑定手势识别,手势识别成功后可以通过事…

LVS负载均衡集群基础概念

目录 一、集群 1、集群概述 1.1 什么是集群 1.2 集群系统扩展方式 1.2.1 Scale UP(纵向扩展) 1.2.2 Scale OUT(横向扩展) 1.2.3 区别 1.3 分布式系统 1.4 分布式与集群 1.5 集群设计原则 1.6 集群设计实现 1.6.1 基础…

手回科技:人生的“小雨伞”,能否撑起自己的增长路?

有道是一年之计在于春。新年伊始,多家券商发布研报表达了对2024年保险市场表现的观点。 比如,开源证券表示,政策组合拳带来beta催化,保险业务端和弹性占优;中国银行证券指出,2024年,保险行业景…

Leetcode 第 125 场双周赛题解

Leetcode 第 125 场双周赛题解 Leetcode 第 125 场双周赛题解题目1:3065. 超过阈值的最少操作数 I思路代码复杂度分析 题目2:3066. 超过阈值的最少操作数 II思路代码复杂度分析 题目3:3067. 在带权树网络中统计可连接服务器对数目思路代码复杂…

Marin说PCB之POC电路layout设计仿真案例---01

最近娃哈哈饮料突然爆火,看新闻后才知道春晚的的时候宗老已经病的很严重了,现在也已经离我们而去了,宗老是一个值得我们尊敬爱戴的伟大企业家。于是乎小编我立马去他们的直播间买了一箱娃哈哈AD钙奶支持一下我们的国货。 中午午休的时候&…

智慧城市的未来:利用数字孪生技术推动智慧城市的智能化升级

目录 一、引言 二、数字孪生技术概述 三、数字孪生技术在智慧城市中的应用 1、城市规划与建设 2、城市管理与运营 3、公共服务与民生改善 4、应急管理与灾害防控 四、数字孪生技术推动智慧城市的智能化升级的价值 1、提高城市管理的智能化水平 2、优化城市资源配置 …

python将conda环境打入docker环境中

1.假设你本地已经安装好了conda相关的 ubuntu安装python以及conda-CSDN博客 并且已经创建启动过相关的环境,并且install了相关的包。 我本地的conda环境叫做,gptsovits_conda3 2.下载conda打包工具 conda install conda-pack pip install conda-pack 3.打包 con…