解决firefly rk3399利用ffmpeg硬解码rga报错的题目

打印 上一主题 下一主题

主题 511|帖子 511|积分 1533

提示:文章写完后,目次可以自动天生,如何天生可参考右边的资助文档
  
  

前言

注意:这篇文章只对firefly rk3399有用,可能对rk3568和rk3588有用!
Device:firefly rk3399
OS:Ubuntu-20.04
假如你不是Ubuntu-20.04你最好刷成Ubuntu-20.04,理论上对Ubuntu-18.04也是适用的,只不过我须要利用Ubuntu-20.04,以是就在Ubuntu-20.04上测试了。

一、查抄环境

1.firefly源

因为ffmpeg和rkmpp的结合是须要另外改ffmpeg源代码并编译的,这里我们不须要,firefly已经给我们弄好了,可能须要略改下。
假如这个方法对你不适用,你可能须要手动改下ffmpeg源代码和rkmpp一起编译了!受限于受伤没有合适的板子,以是就没有深入研究这个方法。
  1. ls /etc/apt/source.list.d
  2. cat /etc/apt/source.list
复制代码
这两个都看下,直到找到deb http://wiki.t-firefly.com/firefly-ubuntu-repo focal main类似的字眼,focal就是Ubuntu-20.04的代号,bionic是Ubuntu-18.04的代号,以此类推。
2.ffmpeg版本

  1. ffmpeg
  2. ffmpeg version 4.2.4-1ubuntu1.0firefly3 Copyright (c) 2000-2020 the FFmpeg developers
复制代码
带firefly字样的是firefly自己编的版本,不带这个字样的就是通用版本,是不带rkmpp的。
假如你属于后者,就按照我的的这样做,先卸载ffmpeg然后将firefly的源加到列表里,重新安装就是firefly的版本了。
二、开始测试

编写ffmpeg解码代码举行测试,解码器选择h264_rkmpp,测试解码速率,假如正常就说明rga没题目,假如调用了软解码,就说明rga有题目。
1.查看rga版本

须要用到rga,以是要看下rga有没有安装。
  1. dpkg -l | grep rga
  2. librga-dev
  3. librga2
复制代码
假如是上面的包,大概率是rga库不匹配的题目了,这个时间须要卸载这两个包:
  1. sudp dpkg -r --force-all librga-dev librga2
复制代码
安装匹配包:
  1. sudo apt install -y librga2-rk356x librga-dev-rk356x
复制代码
这个bug真的很清奇,感觉是打包系统镜像的时间没有测试才会出这种题目。纯粹版本不兼容导致的,我的系统安装了上面的包之后就可以正常硬解码了。
感兴趣的也可以去看下我的另一篇文章,比较适合不想去研究mpp的人,利用ffmpeg直接硬解码照旧容易很多。
firefly rk3399利用ffmpeg硬解码

总结


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

立聪堂德州十三局店

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表