新闻详情

新闻详情

首页 / 资讯中心 / 详情

rk3588编译ffmpeg踩坑

发布时间:2026/9/17 6:13:23来源:尧图网络
rk3588编译ffmpeg踩坑
rk3588编译ffmpeg参考链接:rk3588 ffmpeg硬编码安装Ubuntu 编译安装支持 nvidia gpu 驱动的 FFMPEGffmpeg-rockchip官方编译指南编译mpp编译mpp时建议安装到系统目录即cmake -DCMAKE_INSTALL_PREFIX/usr否则mpp的库不及时更新到系统会引起ffmpeg调用硬编码时发生段错误参考官方编译指南下面的一段话。cmake-DCMAKE_INSTALL_PREFIX/usr-DCMAKE_BUILD_TYPERelease-DBUILD_SHARED_LIBSON-DBUILD_TESTOFF..#Build MPPgit clone-b jellyfin-mpp--depth1https://github.com/nyanmisaka/mpp.git rkmpppushd rkmpp mkdir rkmpp_build pushd rkmpp_build cmake \-DCMAKE_INSTALL_PREFIX/usr \-DCMAKE_BUILD_TYPERelease \-DBUILD_SHARED_LIBSON \-DBUILD_TESTOFF \..make-j $(nproc)make installrk3588编译h265时报错cc1plus: error: invalid feature modifier ‘i8mm’ in ‘-marcharmv8.2-adotprodi8mm’使用以下面命令编译通过cmake-DCMAKE_INSTALL_PREFIX$(pwd)/build-DENABLE_SHAREDOFF-DENABLE_NEON_I8MMOFF-DCMAKE_CXX_FLAGS-marcharmv8.2-adotprod-DCMAKE_C_FLAGS-marcharmv8.2-adotprod../../source编译ffmpeg时报错#1.ERROR: libdrm not found using pkg-config#安装libdrm-dev解决sudo apt install libdrm-dev#2./usr/bin/ld: libavdevice/libavdevice.so: undefined reference to ff_alsa_muxer/usr/bin/ld: libavdevice/libavdevice.so: undefined reference to ff_alsa_demuxer#安装libasound2-dev解决sudo apt-get install libasound2-dev#对应的执行configure时要加入--enable-alsaenv PKG_CONFIG_PATH../x264/build/lib/pkgconfig:../x265/build/linux/build/lib/pkgconfig:../rkmpp/rkmpp_build/install/lib/pkgconfig./configure--prefixinstall--enable-alsa--enable-gpl--enable-nonfree--enable-pthreads--extra-libs-lpthread--disable-asm--disable-x86asm--disable-inline-asm--enable-decoderaac--enable-decoderaac_fixed--enable-decoderaac_latm--enable-encoderaac--enable-libx264--enable-libx265--enable-version3--enable-libdrm--enable-rkmpp--enable-shared--pkg-config-flags--static#2.ERROR: rockchip_mpp 1.3.9 not found using pkg-config#指定rkmpp pkgconfig路径解决env PKG_CONFIG_PATH../x264/build/lib/pkgconfig:../x265/build/linux/build/lib/pkgconfig:../rkmpp/rkmpp_build/install/lib/pkgconfig./configure--prefixinstall--enable-gpl--enable-nonfree--enable-pthreads--extra-libs-lpthread--disable-asm--disable-x86asm--disable-inline-asm--enable-decoderaac--enable-decoderaac_fixed--enable-decoderaac_latm--enable-encoderaac--enable-libx264--enable-libx265--enable-version3--enable-libdrm--enable-rkmpp--enable-shared--pkg-config-flags--staticffmpeg安装完成之后ln-s/home/rk_ffmpeg/ffmpeg/install/bin/ffmpeg/usr/bin/ffmpeg ln-s/home/rk_ffmpeg/ffmpeg/install/bin/ffprobe/usr/bin/ffprobe ln-s/home/rk_ffmpeg/ffmpeg/install/bin/ffmpeg/usr/local/bin/ffmpeg ln-s/home/rk_ffmpeg/ffmpeg/install/bin/ffprobe/usr/local/bin/ffprobe echo/home/rk_ffmpeg/ffmpeg/install/lib/etc/ld.so.conf.d/ffmpeg.conf #更新环境变量 ldconfig验证# 查看编码、解码器 ffmpeg-decoders|grep rkmpp ffmpeg-encoders|grep rkmpp # 或查看h264、265ffmpeg configure-codecs|grep h264 ffmpeg configure-codecs|grep hevc测试#以下命令生成纯零帧无摄像头输入正常生成说明ffmpeg能够正常使用 ffmpeg-f rawvideo-pix_fmt nv12-s1280x720-i/dev/zero-frames:v30-c:v h264_rkmpp out.h264-y ffmpeg-f rawvideo-pix_fmt nv12-s1280x720-i/dev/zero-frames:v30-c:v hevc_rkmpp out.h264-y #插入usb摄像头测试 #软编码libx264 ffmpeg-f v4l2-framerate30-i/dev/video0-c:v libx264-r25-b:v1000k-minrate1000k-maxrate1000k-bufsize2048k-preset veryfast-tune zerolatency-f rtsp rtsp://192.168.144.200:8555/usb#硬编码h264_rkmpph264 ffmpeg-f v4l2-framerate30-i/dev/video0-c:v h264_rkmpp-r25-b:v1000k-minrate1000k-maxrate1000k-bufsize2048k-preset veryfast-tune zerolatency-f rtsp rtsp://192.168.144.200:8555/usb#硬编码hevc_rkmpph265 ffmpeg-f v4l2-framerate30-i/dev/video0-c:v hevc_rkmpp-r25-b:v1000k-minrate1000k-maxrate1000k-bufsize2048k-preset veryfast-tune zerolatency-f rtsp rtsp://192.168.144.200:8555/usb全部过程#x264git clone https://code.videolan.org/videolan/x264.gitcd x264./configure--enable-shared--enable-static--disable-asmmake-j(nproc)make install rootfirefly:/home/rk_ffmpeg/x264# make install install-d/usr/local/bin install x264/usr/local/bin install-d/usr/local/include install-d/usr/local/lib/pkgconfig install-m644./x264.h x264_config.h/usr/local/include install-m644x264.pc/usr/local/lib/pkgconfig install-d/usr/local/lib ln-f-s libx264.so.165/usr/local/lib/libx264.so install-m755libx264.so.165/usr/local/lib install-d/usr/share/bash-completion/completions install-m644./tools/bash-autocomplete.sh/usr/share/bash-completion/completions/x264 rootfirefly:/home/rk_ffmpeg/x264# ldconfig#x265git clone https://bitbucket.org/multicoreware/x265_git.git ~/rk_ffmpeg/x265cd~/rk_ffmpeg/x265/build/linux # 清理之前的错误缓存 rm-rf CMakeCache.txt CMakeFiles/# 重新配置 cmake-DENABLE_SHAREDON \-DENABLE_CLION \-DENABLE_NEON_I8MMOFF \-DCMAKE_CXX_FLAGS-marcharmv8.2-adotprod\-DCMAKE_C_FLAGS-marcharmv8.2-adotprod\../../source # 编译并安装 make-j$(nproc)sudo make install sudo ldconfig Install the project...--Install configuration:Release--Installing:/usr/local/lib/libx265.a--Installing:/usr/local/include/x265.h--Installing:/usr/local/include/x265_config.h--Installing:/usr/local/lib/libx265.so.215--Installing:/usr/local/lib/libx265.so--Installing:/usr/local/lib/pkgconfig/x265.pc--Installing:/usr/local/bin/x265--Set runtime path of/usr/local/bin/x265to#执行完毕后使用 find/usr/local-namex265.pc确认文件已生成 find/usr/local-namex265.pc#mppgit clone-b jellyfin-mpp--depth1https://github.com/nyanmisaka/mpp.git rkmpppushd rkmpp mkdir rkmpp_build pushd rkmpp_build cmake \-DCMAKE_INSTALL_PREFIX/usr \-DCMAKE_BUILD_TYPERelease \-DBUILD_SHARED_LIBSON \-DBUILD_TESTOFF \..make-j $(nproc)make install--Install configuration:Release--Up-to-date:/usr/include/rockchip--Up-to-date:/usr/include/rockchip/mpp_rc_api.h--Up-to-date:/usr/include/rockchip/mpp_task.h--Up-to-date:/usr/include/rockchip/rk_mpp_cfg.h--Up-to-date:/usr/include/rockchip/mpp_buffer.h--Up-to-date:/usr/include/rockchip/mpp_sys_cfg_st.h--Up-to-date:/usr/include/rockchip/mpp_log.h--Up-to-date:/usr/include/rockchip/rk_type.h--Up-to-date:/usr/include/rockchip/rk_venc_rc.h--Up-to-date:/usr/include/rockchip/rk_venc_kcfg.h--Up-to-date:/usr/include/rockchip/rk_venc_cfg.h--Up-to-date:/usr/include/rockchip/mpp_packet.h--Up-to-date:/usr/include/rockchip/rk_venc_cmd.h--Up-to-date:/usr/include/rockchip/mpp_compat.h--Up-to-date:/usr/include/rockchip/vpu_api.h--Up-to-date:/usr/include/rockchip/rk_venc_ref.h--Up-to-date:/usr/include/rockchip/rk_vdec_cfg.h--Up-to-date:/usr/include/rockchip/rk_vdec_cmd.h--Up-to-date:/usr/include/rockchip/rk_mpi.h--Up-to-date:/usr/include/rockchip/mpp_err.h--Up-to-date:/usr/include/rockchip/rk_mpi_cmd.h--Up-to-date:/usr/include/rockchip/rk_hdr_meta_com.h--Up-to-date:/usr/include/rockchip/mpp_rc_defs.h--Up-to-date:/usr/include/rockchip/mpp_frame.h--Up-to-date:/usr/include/rockchip/vpu.h--Up-to-date:/usr/include/rockchip/mpp_meta.h--Up-to-date:/usr/include/rockchip/mpp_log_def.h--Up-to-date:/usr/include/rockchip/mpp_sys_cfg.h--Installing:/usr/lib/aarch64-linux-gnu/pkgconfig/rockchip_mpp.pc--Installing:/usr/lib/aarch64-linux-gnu/pkgconfig/rockchip_vpu.pc--Installing:/usr/lib/aarch64-linux-gnu/librockchip_mpp.so.0--Up-to-date:/usr/lib/aarch64-linux-gnu/librockchip_mpp.so.1--Up-to-date:/usr/lib/aarch64-linux-gnu/librockchip_mpp.so--Installing:/usr/lib/aarch64-linux-gnu/librockchip_vpu.so.0--Up-to-date:/usr/lib/aarch64-linux-gnu/librockchip_vpu.so.1--Set runtime path of/usr/lib/aarch64-linux-gnu/librockchip_vpu.so.0to--Up-to-date:/usr/lib/aarch64-linux-gnu/librockchip_vpu.so#rkrgagit clone-b jellyfin-rga--depth1https://github.com/nyanmisaka/rk-mirrors.git rkrgameson setup rkrga rkrga_build \--prefix/usr \--libdirlib \--buildtyperelease \--default-libraryshared \-Dcpp_args-fpermissive \-Dlibdrmfalse\-Dlibrga_demofalsemeson configure rkrga_build ninja-C rkrga_build install Installing librga.so.2.1.0to/usr/lib Installing/home/rk_ffmpeg/rkrga/include/rga.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/include/drmrga.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/include/GrallocOps.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/include/RockchipRga.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/include/RgaMutex.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/include/RgaSingleton.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/include/RgaUtils.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/include/RgaApi.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d.hpp to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_type.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_version.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_buffer.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_common.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_single.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_task.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_mpi.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga/im2d_api/im2d_expand.h to/usr/include/rga Installing/home/rk_ffmpeg/rkrga_build/meson-private/librga.pc to/usr/lib/pkgconfig#ffmpeggit clone--depth1https://github.com/nyanmisaka/ffmpeg-rockchip.git ffmpegcd ffmpeg env PKG_CONFIG_PATH/usr/local/lib/pkgconfig:/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/lib/pkgconfig./configure \--prefix/usr/local \--enable-gpl \--enable-nonfree \--enable-pthreads \--extra-cflags-I/usr/local/include\--extra-ldflags-L/usr/local/lib\--extra-libs-lpthread -lm -lstdc -lnuma -ldl\--disable-asm\--disable-x86asm \--disable-inline-asm\--enable-decoderaac \--enable-decoderaac_fixed \--enable-decoderaac_latm \--enable-encoderaac \--enable-libx264 \--enable-libx265 \--enable-version3 \--enable-libdrm \--enable-rkmpp \--enable-shared make-j(nproc)make install
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

2026年北京企业做豆包与地图双入口优化:GEO业务、本地排名与AI信源实操 2026/9/17 9:19:54

2026年北京企业做豆包与地图双入口优化:GEO业务、本地排名与AI信源实操

一、GEO优化与北京本地地图搜索的业务边界生成式引擎优化(GEO)的基础定义。2026年,GEO(Generative Engine Optimization,生成式引擎优化)主要指面向豆包、DeepSeek、文心一言、通义千问等生成式AI平台&…

阅读更多 →
x402 多语言支付协议仓库贡献指南:从 AI 辅助开发到新增链与新 Scheme 的完整流程 2026/9/17 9:19:54

x402 多语言支付协议仓库贡献指南:从 AI 辅助开发到新增链与新 Scheme 的完整流程

x402 多语言支付协议仓库贡献指南:从 AI 辅助开发到新增链与新 Scheme 的完整流程 【免费下载链接】x402 A payments protocol for the internet. Built on HTTP. 项目地址: https://gitcode.com/GitHub_Trending/x4/x402 导读 本文基于 x402 仓库根目录的 …

阅读更多 →
磁悬浮轴承控制策略深度对比:PID、LQR、滑模与ADRC实战解析 2026/9/17 9:19:54

磁悬浮轴承控制策略深度对比:PID、LQR、滑模与ADRC实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
前端性能监控:白屏与卡顿问题的解决方案 2026/9/17 9:19:54

前端性能监控:白屏与卡顿问题的解决方案

1. 前端性能监控的核心痛点前端性能优化一直是Web开发中的重点课题,而白屏时间和卡顿问题则是其中最直接影响用户体验的两大痛点。在实际项目中,我们经常遇到这样的场景:用户反馈页面加载慢、操作不流畅,但开发团队却难以复现问题…

阅读更多 →
Gutenberg MainDashboardButton SlotFill 实战指南:定制文章编辑器顶栏的返回按钮 2026/9/17 9:19:54

Gutenberg MainDashboardButton SlotFill 实战指南:定制文章编辑器顶栏的返回按钮

Gutenberg MainDashboardButton SlotFill 实战指南:定制文章编辑器顶栏的返回按钮 【免费下载链接】gutenberg The Block Editor project for WordPress and beyond. Plugin is available from the official repository. 项目地址: https://gitcode.com/GitHub_Tr…

阅读更多 →
CANoe与CAPL:汽车电子HiL测试的核心技术栈解析 2026/9/17 9:16:54

CANoe与CAPL:汽车电子HiL测试的核心技术栈解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞