网站页面的组成/seo优缺点

网站页面的组成,seo优缺点,集团网站下分网站 模板,泉州正规制作网站公司一、前言 RK3588 支持VPU硬件解码,需要rkmpp进行调用;支持2D图像加速,需要 RGA 进行调用。 这两个库均能通过 ffmpeg-rockchip 进行间接调用,编译时需要开启对应的功能。 二、依赖安装 编译ffmpeg前需要编译 rkmpp 和 RGA&#xf…

一、前言

        RK3588 支持VPU硬件解码,需要rkmpp进行调用;支持2D图像加速,需要 RGA 进行调用。

        这两个库均能通过 ffmpeg-rockchip 进行间接调用,编译时需要开启对应的功能。

二、依赖安装

        编译ffmpeg前需要编译 rkmpp 和 RGA,我尝试直接调用板端的库,ffmpeg 编译可以通过,但是使用 rkmpp 解码时会导致段错误,debug 发现是库调用相关的报错,应该是版本差距较大,所以建议下载最新的 rkmpp 和 RGA 进行编译。

1、编译RKmpp

源码来自大佬的GitHub:

https://github.com/nyanmisaka

git clone -b jellyfin-mpp --depth=1 https://github.com/nyanmisaka/mpp.git rkmpp
cd rkmmp
mkdir install
cmake . \-DCMAKE_INSTALL_PREFIX=$PWD/install \-DCMAKE_BUILD_TYPE=Release \-DBUILD_SHARED_LIBS=ON \-DBUILD_TEST=OFFmake -j $(nproc)
make install

我个人喜欢将编译后的库与板端隔离,防止破坏系统库的依赖,所以安装到当前 install 目录下。配置参数与源码的 WIKI 保持一致,省去了 pushd 指令。

2、编译RGA

编译 RGA 需要用到 meson 和 ninja,如果没有,可以直接安装:

sudo apt-get install meson
sudo apt install ninja-build

如果想编译 ninja 的最新源码,我这里也提供方法:

git clone git://github.com/ninja-build/ninja.git
cd ninja
./configure.py --bootstrap
(optional) cp ninja /usr/bin

编译 RGA:

git clone -b jellyfin-rga --depth=1 https://github.com/nyanmisaka/rk-mirrors.git rkrga
cd rkrga
mkdir install rkrga_build
# . 源代码目录,rkrga_build 是构建目录
meson setup . rkrga_build \--prefix=$PWD/install \--libdir=lib \--buildtype=release \--default-library=shared \-Dcpp_args=-fpermissive \-Dlibdrm=false \-Dlibrga_demo=false
meson configure rkrga_build
ninja -C rkrga_build install

源码也是出自 nyanmisaka 大佬。大佬的 WIKI 在源码的父目录进行编译,我这里改成了在源码下编译,看个人喜好。

3、编译 ffmpeg

git clone --depth=1 https://github.com/nyanmisaka/ffmpeg-rockchip.git ffmpeg
cd ffmpeg
mkdir install
./configure --prefix=$PWD/install --enable-gpl --enable-version3 \
--enable-libdrm --enable-rkmpp --enable-rkrga \
--extra-cflags="-I$(pwd)/../rkmpp/install/include/rockchip -I$(pwd)/../rkrga/install/include/rga" \
--extra-ldflags="-L$(pwd)/../rkmpp/install/lib -L$(pwd)/../rkrga/install/lib -Wl,-rpath,$(pwd)/../rkmpp/install/lib:$(pwd)/../rkrga/install/lib -lrockchip_mpp -lrga"make -j $(nproc)
make install

        这里我主要是增加了动态库和头文件的搜索路径,指定为刚刚编译的 RKmpp 和 RGA。另外使用-Wl,-rpath指定了运行时库的搜索路径,防止使用系统的库。

三、验证

        (1)在 ffmpeg 源码目录下,查看编译后的支持情况:

./ffmpeg -decoders | grep rkmpp # 查看是否有 rk 的解码器
./ffmpeg -encoders | grep rkmpp # 查看是否有 rk 的编码器
./ffmpeg -filters | grep rkrga # 查看是否有 rk 的 rga

输出分别为:

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)
V..... h264_rkmpp           Rockchip MPP (Media Process Platform) H264 encoder (codec h264)V..... hevc_rkmpp           Rockchip MPP (Media Process Platform) HEVC encoder (codec hevc)V..... mjpeg_rkmpp          Rockchip MPP (Media Process Platform) MJPEG encoder (codec mjpeg)
 ... 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)

        (2)如果有视频文件,可以执行以下指令测试硬件解码:

./ffmpeg -c:v h264_rkmpp -i 720p60hz.mp4 -f null -

在 Stream mapping 部分可以查看使用的解码方式,输出为(h264_rkmpp)。

Stream mapping:Stream #0:0 -> #0:0 (h264 (h264_rkmpp) -> wrapped_avframe (native))Stream #0:1 -> #0:1 (aac (native) -> pcm_s16le (native))

        (3)测试 RGA 需要初始化硬件设备,不能只设置过滤器。

ffmpeg -init_hw_device rkmpp=hw -filter_hw_device hw \
-c:v h264_rkmpp -i 720p60hz.mp4 \
-vf "hwupload,scale_rkrga=w=1920:h=1080:format=nv12" \
-f null -

-init_hw_device rkmpp=hw 初始化一个名为hw的 RKMPP 硬件设备;

-filter_hw_device hw指定过滤器链使用之前初始化的硬件设备hw;

-vf hwupload,scale_rkrga=w=1920:h=1080:format=nv12 将输入的视频帧上传到硬件设备(RKMPP),使用 RKMP 提供的 scale_rkrga 过滤器将视频帧缩放到 1920x1080 分辨率,并转换像素格式为 NV12。

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

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

相关文章

Java多线程与高并发专题——原子类和 volatile、synchronized 有什么异同?

原子类和 volatile异同 首先,通过我们对原子类和的了解,原子类和volatile 都能保证多线程环境下的数据可见性。在多线程程序中,每个线程都有自己的工作内存,当多个线程访问共享变量时,可能会出现一个线程修改了共享变…

207、【图论】孤岛的总面积

题目 思路 相比于 206、【图论】岛屿数量,就是在这个代码的基础上。先遍历边界,将边界连接的岛屿变为0,然后再计算一遍当前为1的岛屿面积。 代码实现 import collectionsn, m list(map(int, input().split())) graph []for _ in range(n…

【GPT入门】第21课 langchain核心组件

【GPT入门】第21课 langchain核心组件 1. langchain 核心组件2.文档加载器 Document loader3.文档处理器3.1 langchain_text_splitters3.3 FAISS向量数据库和向量检索主要作用应用场景4. 对话历史管理1. langchain 核心组件 模型 I/O 封装 LLMs:大语言模型 Chat Models:一般…

应急响应靶机练习-Linux2

1.背景 前景需要:看监控的时候发现webshell告警,领导让你上机检查你可以救救安服仔吗!! 挑战内容: (1)提交攻击者IP (2)提交攻击者修改的管理员密码(明文) (…

分享一个免费的CKA认证学习资料

关于CKA考试 CKA(Certified Kubernetes Administrator)是CNCF基金会(Cloud Native Computing Foundation)官方推出的Kubernetes管理员认证计划,用于证明持有人有履行Kubernetes管理的知识,技能等相关的能力…

【最新】 ubuntu24安装 1panel 保姆级教程

系统:ubuntu24.04.1 安装软件 :1panel 第一步:更新系统 sudo apt update sudo apt upgrade 如下图 第二步:安装1panel,运行如下命令 curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o …

UE4-UE5虚幻引擎,前置学习一--Console日志输出经常崩溃,有什么好的解决办法

有些差异 这么牛逼的引擎,居然有这种入门级别的问题,一触发清理,大概率(80%)会崩溃 无论虚幻5还是UE4都有这个问题,挺烦人的 实在忍不了了,这次,今天 就想问问有什么好的处理方法么?&#x…

【微服务】Nacos 配置动态刷新(简易版)(附配置)

文章目录 1、实现方法2、配置依赖 yaml3、验证效果 1、实现方法 环境&#xff1a;Nacos、Java、SpringBoot等 主要是在boostrap.yaml中的data-id属性下配置refresh:true来实现动态更新 2、配置依赖 yaml 具体的版本参考官方的说明&#xff1a;官方版本说明 <!--读取boo…

设计模式之备忘录设计模式

备忘录设计模式&#xff08;Memento Pattern&#xff09; 在不破坏封闭的前提下&#xff0c;捕获一个对象的内部状态&#xff0c;保存对象的某个状态&#xff0c;以便在适当的时候恢复对象&#xff0c;又叫做快照模式&#xff0c;属于行为模式备忘录模式实现的方式需要保证被保…

【最后203篇系列】016 Q201架构思考

前言 Q200已经达到了我既定的目标&#xff0c;在最近的3个月&#xff0c;我需要进一步完善&#xff0c;达到可以试产的程度。 在这个过程当中&#xff0c;许多知识和体会一直在变。 qtv200到目前&#xff0c;虽然通过习惯(每晚运行离线策略和比对)方式维持了注意力的集中&…

音视频入门基础:RTP专题(20)——通过FFprobe显示RTP流每个packet的信息

通过FFprobe命令&#xff1a; ffprobe -protocol_whitelist "file,rtp,udp" -of json -show_packets XXX.sdp 可以显示SDP描述的RTP流每个packet&#xff08;数据包&#xff09;的信息&#xff1a; 对于RTP流&#xff0c;上述的“packet”&#xff08;数据包&#…

LLM后训练:解锁大型语言模型推理能力的关键路径

引言&#xff1a;从语言生成到逻辑推理的跃迁 大型语言模型&#xff08;LLMs&#xff09;通过预训练掌握了海量语言模式&#xff0c;但其核心缺陷——幻觉、逻辑断裂、价值观偏差——暴露了单纯预训练的局限性。后训练&#xff08;Post-Training&#xff09;作为预训练后的精修…

9.贪心算法

简单贪心 1.P10452 货仓选址 - 洛谷 #include<iostream> #include<algorithm> using namespace std;typedef long long LL; const int N 1e510; LL a[N]; LL n;int main() {cin>>n;for(int i 1;i < n;i)cin>>a[i];sort(a1,a1n);//排序 LL sum 0…

Linux 网络:skb 数据管理

文章目录 1. 前言2. skb 数据管理2.1 初始化2.2 数据的插入2.2.1 在头部插入数据2.2.2 在尾部插入数据 2.2 数据的移除 3. 小结 1. 前言 限于作者能力水平&#xff0c;本文可能存在谬误&#xff0c;因此而给读者带来的损失&#xff0c;作者不做任何承诺。 2. skb 数据管理 数…

批量给 Excel 添加或删除密码保护|Excel 批量设置打开密码和只读密码

我们在将 Excel 文档发送给第三方或者进行存档的时候&#xff0c;对 Excel 文档添加密码保护是非常重要的一个操作。添加保护后的 Excel 文档。就只能有相应权限的用户才能够打开或者编辑操作。尤其是当我们 Excel 文档中内容非常敏感非常重要的时候&#xff0c;添加保护就显得…

蓝耘MaaS平台:阿里QWQ应用拓展与调参实践

摘要&#xff1a;本文深入探讨了蓝耘MaaS平台与阿里QWQ模型的结合&#xff0c;从平台架构、模型特点到应用拓展和调参实践进行了全面分析。蓝耘平台凭借其强大的算力支持、弹性资源调度和全栈服务&#xff0c;为QWQ模型的高效部署提供了理想环境。通过细化语义描述、调整推理参…

使用 Docker 部署前端项目全攻略

文章目录 1. Docker 基础概念1.1 核心组件1.2 Docker 工作流程 2. 环境准备2.1 安装 Docker2.2 验证安装 3. 项目配置3.1 项目结构3.2 创建 Dockerfile 4. 构建与运行4.1 构建镜像4.2 运行容器4.3 访问应用 5. 使用 Docker Compose5.1 创建 docker-compose.yml5.2 启动服务5.3 …

springboot集成flink实现DM数据库同步到ES

前言 今天分享的其实是一个面试上机方案&#xff0c;就是监测DM数据库数据&#xff0c;同步到ES&#xff0c;使用flink实现。基本套路&#xff0c;其实也没啥好说的&#xff0c;非要说也就是&#xff0c;国家队还是很多不跟你玩啊&#xff0c;虽然flink有阿里在背后&#xff0c…

【蓝桥杯】24省赛:数字串个数

思路 本质是组合数学问题&#xff1a; 9个数字组成10000位数字有9**10000可能 不包括3的可能8**10000 不包括7的可能8**10000 既不包括3也不包括77**10000 根据容斥原理&#xff1a;结果为 9 ∗ ∗ 10000 − 8 ∗ ∗ 10000 − 8 ∗ ∗ 10000 7 ∗ ∗ 10000 9**10000 - 8**10…

Unity开发中对象池设计与使用

一、设计目的 为了避免频繁创建和销毁对象&#xff08;例如 UI 元素、事件对象等&#xff09;带来的内存分配和垃圾回收压力&#xff0c;可以使用对象池来管理对象来提高游戏的性能&#xff0c;避免游戏卡顿。 二、代码实现 public interface IRecycle {/// <summary>…