关于官方提供的镜像不能rtsp拉h265的流,又不能upgrade的曲线解决方案
记录下当前的时间,2021-03-10;基于如下两个固件,其他固件未测试。
AIO-RK3399PROC-UBUNTU-20210304-1705.img
AIO-RK3399PROC-UBUNTU_MINIMAL-20201229-1349.img
Firefly提供的ubuntu桌面版<AIO-RK3399PROC-UBUNTU-20210304-1705.img>存在的问题
1. 不能apt upgrade,更新后系统后,重启或关机不能再次进入系统;
2. gstreamer rockchip存在问题,不能解码h265,upgrade可修复,由于问题1,不能关机,无意义。
3. ffmpeg不能解码h265,upgrade可修复,同上
所以选择使用无桌面版的Mini系统:
AIO-RK3399PROC-UBUNTU_MINIMAL-20201229-1349.img
升级固件后,按照如下步骤配置系统:
1. 开启SSH root登录(root:firefly):
sed -i -e 's/#PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config
2. 更新apt-get列表(不更新软件,不使用upgrade)
apt update
3. 默认未安装gstreamer,需安装:
sudo apt installgstreamer1.0-rockchip1 libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-pulseaudio
(gstreamer1.0-qt5,该库比较特殊,如果不在板子上跑QT程序,可以安装此库,否则不要安装这个库;因此建议不安装该库,否则后续配置QT交叉编译环境时后会冲突)
4. 安装cmake gbd等开发工具
sudo apt install cmake gdb
5. 参照教程配置QT交叉编译环境,官方wiki有提供工具,切记此步骤之前不能安装任何QT的库,否则编译后的执行文件会链接到你自己安装的库,替换了官方提供的so文件,可使用ldd a.out 测试你的程序,看链接是否正确。如果确实需要用自己安装的库,请保持交叉编译环境宿主机及目标及库一致,理论可行但我未测试。
另外渲染配置QT_QPA_xxx应该按照官方wiki提供的 fb+drm 或者gl, 不能使用第三项 X;另外我这边测试fb正常,但是gl会报一个错误,显示正常但无键鼠输入事件,未找到原因,搁置。
6. 安装npu驱动
sudo apt-get install firefly-3399pronpu-driver
7. 后续应用开发可选如下几个路线,
1)需要直接外接显示的,可选择用QT开发,参考5进行,已验证,可行。
2)使用Electron 开发,准备用但尚未验证,后续如果通过,更新过来。
另外之前提过自己编译sdk,无法拉rtsp的流,目测也是这个原因,以后打算用minimal系统的根文件系统编译自己的镜像。帖子链接 http://dev.t-firefly.com/thread-103246-1-1.html
electron不能启动,已经确认 electron是没有问题的 。可以支持
页:
[1]