云计算百科
云计算领域专业知识百科平台

RK3588 Opencv-ffmpeg-rkmpp-rkrga编译与测试

RK3588 Opencv-ffmpeg-rkmpp-rkrga编译与测试

    • 硬件背景说明
    • 编译环境准备
      • 1. 编译MPP(媒体处理平台)
      • 2. 编译RGA(图形加速库)
      • 3. 构建支持硬件加速的FFmpeg
        • 重要代码修改说明
      • 4. 验证安装
      • 5.FFmpeg转码测试
    • OpenCV编译集成
  • Python OpenCV+FFmpeg测试

硬件背景说明

RK3588是瑞芯微推出的旗舰级ARM处理器,具备6TOPS NPU和8K视频编解码能力。其特有的硬件加速模块包括:

  • MPP (Media Process Platform):视频编解码硬件加速模块
  • RGA (Raster Graphic Acceleration):2D图像处理加速模块
  • NPU (Neural Processing Unit):神经网络加速单元
  • 通过结合这些硬件加速模块,可大幅提升视频处理效率。例如在1080P视频缩放场景,RGA加速相比CPU处理可提升30倍性能。


    编译环境准备

    1. 编译MPP(媒体处理平台)

    # 卸载旧版MPP防止版本冲突
    dpkg –purge –force-all librockchip-mpp-dev librockchip-mpp1 rockchip-mpp-demos

    # 获取指定版本源码(1.0.9版已验证兼容性)
    git clone https://github.com/rockchip-linux/mpp.git
    cd mpp
    git checkout 1.0.9

    # 配置编译选项
    mkdir build
    cd build
    cmake \\
    -DCMAKE_INSTALL_PREFIX=/usr/local \\
    -DCMAKE_BUILD_TYPE=Release \\
    -DBUILD_SHARED_LIBS=ON \\
    -DBUILD_TEST=OFF ..
    make -j4
    make install

    关键参数说明:

    • BUILD_SHARED_LIBS=ON:生成动态链接库(.so文件),方便其他程序调用
    • CMAKE_INSTALL_PREFIX:指定头文件和库的安装路径,避免污染系统目录

    2. 编译RGA(图形加速库)

    # 使用特定分支的RGA实现
    git clone -b jellyfin-rga –depth=1 https://github.com/nyanmisaka/rk-mirrors.git rkrga
    cd rkrga

    # 配置Meson构建系统
    mkdir install rkrga_build
    meson setup . rkrga_build \\
    –prefix=/usr/local \\
    –libdir=lib \\
    –buildtype=release \\
    –default-library=shared \\
    -Dcpp_args=-fpermissive \\
    -Dlibdrm=false \\
    -Dlibrga_demo=false
    meson configure rkrga_build
    ninja -C rkrga_build install

    3. 构建支持硬件加速的FFmpeg

    # 获取定制版FFmpeg源码
    git clone https://github.com/nyanmisaka/ffmpeg-rockchip.git
    cd ffmpeg-rockchip
    git checkout 57d5befee96f229b05fa09334a4d7a6f95a324bd # 指定兼容性验证的提交

    # 安装依赖库
    apt install libdrm-dev -y # DRM显示驱动开发包

    # 配置编译参数
    ./configure –prefix=/usr/local –enable-gpl –enable-version3 \\
    –enable-pic –enable-shared –disable-static \\
    –enable-libdrm –enable-rkmpp –enable-rkrga
    make -j4
    make install

    重要代码修改说明

    修改rkrga_common.c文件:

    diff –git a/libavfilter/rkrga_common.c b/libavfilter/rkrga_common.c
    index 7ca88ccae9..8f80ee4fe4

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » RK3588 Opencv-ffmpeg-rkmpp-rkrga编译与测试
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!