最近搞环视360,在3588板子上接了一个 主控为TP2815的4路AHD转MIPI 板子,可以同时接入4路1080P@30FPS模拟信号。本人通过gst-launch-1.0可以正常取流,但是尝试通过ffmpeg作为后端死活播放不出来。经排查,发现本转接板在设备书中以ISP形式进行注册,那么注册的/dev/video0-3节点为Video Capture Multiplanar,而标准ffmpeg并不支持多层设备,所需要安装ffmpeg-rockchip

ffmpeg-rockchip

专为 Rockchip 平台(如 RK3588)设计的 FFmpeg 分支,它全面支持硬件加速视频处理,包括 MPP 硬件编码器、解码器,以及 RGA 滤镜加速

安装

sudo apt update
sudo apt install git meson cmake pkg-config gcc libasound2-dev libdrm-dev ninja-build -y

编译MPP(硬件编解码库)

cd ~/ffmpeg
git clone -b jellyfin-mpp --depth=1 https://github.com/nyanmisaka/mpp.git rkmpp
mkdir -p rkmpp/rkmpp_build && cd rkmpp/rkmpp_build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DBUILD_TEST=OFF ..
sudo make -j$(nproc)
sudo make install

编译 RGA(图像加速滤镜库)

cd ~/ffmpeg
git clone -b jellyfin-rga --depth=1 https://github.com/nyanmisaka/rk-mirrors.git rkrga
meson setup rkrga rkrga_build --prefix=/usr --libdir=lib --buildtype=release -Dcpp_args=-fpermissive -Dlibdrm=false -Dlibrga_demo=false
meson configure rkrga_build
sudo ninja -C rkrga_build install

编译ffmpeg-rockchip

cd ~/ffmpeg
git clone --depth=1 https://github.com/nyanmisaka/ffmpeg-rockchip.git ffmpeg-rockchip
cd ffmpeg-rockchip
./configure --prefix=/usr --enable-gpl --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga --enable-alsa --enable-libv4l2
make -j$(nproc)
sudo make install

安装完毕后验证支持情况

  • 解码器

解码器

  • 编码器

编码器

  • 硬件滤镜

硬件滤镜

  • 注意 MPP只支持NV12/NV16图像编码,TP2815转接板需要对图像格式进行设置
最后修改:2025 年 12 月 09 日
如果觉得我的文章对你有用,请随意赞赏