当前位置: 首页 > wzjs >正文

珠海响应式网站建设百度官网网站

珠海响应式网站建设,百度官网网站,中济建设官方网站,青岛网站设计建议i青岛博采一、前言 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.dtcms.com/wzjs/370804.html

相关文章:

  • 个人网站可以做网上支付吗常州网络推广哪家好
  • 已有网站做百度推广国际军事最新消息今天
  • 南皮县网站建设公司网络营销策划案例
  • 网站建设 客户定位企业营销网站建设系统
  • 域名备案注销苏州百度快速排名优化
  • 网站外链建设的八大基本准则seo接单平台有哪些
  • 在线公司取名商丘关键词优化推广
  • 网站设置的流程第一步应该如何进行搜索引擎优化?
  • 机械加工网红订单搜索引擎优化的目的是
  • 毕业论文 用tp做网站惠州seo排名外包
  • 临沂网站制作培训市场监督管理局官网
  • 公司网站建设成本聊城网站推广的公司
  • 国航网站建设关键词优化外包服务
  • 百度网站的网址是什么自建站模板
  • 公司网站开发费用兴田德润官方网站最近的新闻热点时事
  • 专门做图片是网站北京网站推广营销策划
  • 域名注册好如何做网站最吸引人的营销广告词
  • 自动更新的网站建设推广方案模板
  • 网站开发和网页设计seo关键词外包
  • 内蒙能源建设集团网站网络舆情监控系统
  • 做HH网站代写企业软文
  • 小白自己做网站初学seo网站推广需要怎么做
  • 为什么建网站seo关键词排名优化制作
  • 资阳市建设局网站seo技术培训海南
  • 怎么样网站速度快2024年新冠疫情最新消息今天
  • 产品展示网站含后台网站模板下载百度在线咨询
  • 网站授权合同2345软件为什么没人管
  • 单页面网站怎么做的网页设计培训教程
  • 纯html5 网站微商怎么找客源人脉
  • 南磨房网站建设公司南京网络优化公司有哪些