0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

fireflyAIO-3399J-Ubuntu应用层支持介绍

firefly 来源:firefly 作者:firefly 2019-12-25 16:01 次阅读

Ubuntu 应用层支持

视频硬件编解码支持

Mpp是Rockchip为RK3399提供的一套视频编解码的api, 并且基于mpp,Rockchip提供了一套gstreamer的编解码插件。用户可以根据自己的需求,基于gstreamer来做视频编解码的应用,或者直接调用mpp,来实现硬件的编解码加速。

Firefly 发布的Ubuntu 系统, 都已经提供了完整的gstremaer 和 mpp支持,并且提供了相应的demo,供用户开发参考。

Gstreamer

Ubuntu 16.04 下,gstreamer 1.12 已经安装在/opt/目录下。

Ubuntu 18.04下, gstreamer 1.12 已经安装到系统中。

/usr/local/bin/h264dec.sh 测试硬件H264解码。

/usr/local/bin/h264enc.sh 测试硬件H264编码。

用户可以参照这两个脚本,配置自己的gstreamer应用。

Mpp

Ubunut 系统下, mpp 相关dev包都已经安装到系统中。

/opt/mpp/下分别是mpp 编解码的相关demo 和 源文件。

OpenGL-ES

RK3399 支持 OpenGL ES1.1/2.0/3.0/3.1。

Firefly 发布的Ubuntu 系统, 都已经提供了完整的OpenGL-ES支持。运行glmark2-es2可以测试openGL-ES支持。 如果要避免屏幕刷新率对测试结果的影响,可以在串口终端上使用以下命令测试。

# systemctl stop lightdm # export DISPLAY=:0 # Xorg & # glmark2-es2 –off-screen

在Chromium浏览器中, 在地址栏输入:chrome://gpu可以查看chromium下硬件加速的支持。

Note:

EGL 是用arm 平台上OpenGL针对x window system的扩展,功能等效于x86下的glx库。

由于Xorg使用的Driver modesettings 默认会加载libglx.so(禁用glx会导致某些通过检测glx环境的应用启动失败), libglx.so会搜索系统中的dri实现库。但是rk3399 Xorg 2D加速是直接基于DRM实现, 并未实现dri库,所以启动过程中,libglx.so会报告如下的错误 。

(EE) AIGLX error: dlopen of /usr/lib/aarch64-linux-gnu/dri/rockchip_dri.so failed

这个对系统运行没有任何影响,不需要处理。

基于同样的道理,某些应用启动过程中,也会报告如下错误,不用处理,对应用的运行不会造成影响。

libGL error: unable to load driver: rockchip_dri.so libGL error: driver pointer missing libGL error: failed to load driver: rockchip

Firefly之前发布的某些版本的Ubuntu软件,默认关闭了加载libglx.so,在某些情况下,运行某些应用程序会出现下述错误:

GdkGLExt-WARNING **: Window system doesn't support OpenGL.

修正的方法如下:

删除 /etc/X11/xorg.conf.d/20-modesetting.conf 中一下三行配置。

Section "Module" Disable "glx" EndSection

OpenCL

Firefly发布的Ubuntu系统,已经添加了opencl1.2支持,可以运行系统内置的clinfo获取平台opencl相关参数

firefly@firefly:~$ clinfo Platform #0 Name: ARM Platform Version: OpenCL 1.2 v1.r14p0-01rel0-git(966ed26).f44c85cb3d2ceb87e8be88e7592755c3 Device #0 Name: Mali-T860 Type: GPU Version: OpenCL 1.2 v1.r14p0-01rel0-git(966ed26).f44c85cb3d2ceb87e8be88e7592755c3 Global memory size: 1 GB 935 MB 460 kB Local memory size: 32 kB Max work group size: 256 Max work item sizes: (256, 256, 256) …

TensorFlow Lite

RK3399 支持神经网络的GPU加速方案LinuxNN, Firefly发布的Ubuntu系统,已经添加了LinuxNN的支持。

在opt/tensorflowbin/下,运行test.sh, 即可测试MobileNet 模型图像分类器的 Demo和MobileNet-SSD 模型的目标检测 Demo

firefly@firefly:/opt/tensorflowbin$ ./test.sh Loaded model mobilenet_ssd.tflite resolved reporter nn version: 1.0.0 findAvailableDevices filename:libarmnn-driver.so d_info:40432 d_reclen:40s [D][ArmnnDriver]: Register Service: armnn (version: 1.0.0)! first invoked time: 1919.17 ms invoked average time: 108.4 ms validCount: 26 car @ (546, 501) (661, 586) car @ (1, 549) (51, 618) person @ (56, 501) (239, 854) person @ (332, 530) (368, 627) person @ (391, 541) (434, 652) person @ (418, 477) (538, 767) person @ (456, 487) (602, 764) car @ (589, 523) (858, 687) person @ (826, 463) (1034, 873) bicycle @ (698, 644) (1128, 925) write out.jpg succ!

屏幕旋转

Firefly发布的Ubuntu系统,如果需要默认对系统的显示方向做旋转,可以在

/etc/default/xrandr中修改对应的显示设备的方向即可。

firefly@firefly:~$ cat /etc/default/xrandr #!/bin/sh # Rotation can be one of 'normal', 'left', 'right' or 'inverted'. # xrandr --output HDMI-1 --rotate normal # xrandr --output LVDS-1 --rotate normal # xrandr --output EDP-1 --rotate normal # xrandr --output MIPI-1 --rotate normal # xrandr --output VGA-1 --rotate normal # xrandr --output DP-1 --rotate normal

对于配有触摸屏的平台,如果需要对触摸屏的方向做旋转,可以在/etc/X11/xorg.conf.d/05-gslX680.conf中修改SwapAxes / InvertX / InvertY三个值。

firefly@firefly:~$ cat /etc/X11/xorg.conf.d/05-gslX680.conf Section "InputClass" Identifier "gslX680" MatchIsTouchscreen "on" MatchProduct "gslX680" Driver "evdev" Option "SwapAxes" "off" # Invert the respective axis. Option "InvertX" "off" Option "InvertY" "off" EndSection

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11304

    浏览量

    209528
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6085

    浏览量

    35344
  • Firefly
    +关注

    关注

    2

    文章

    538

    浏览量

    7047
收藏 人收藏

    评论

    相关推荐

    fireflyAIO-3399J主板简介

    AIO-3399J 的标准套装包含以下配件
    的头像 发表于 11-05 15:52 1563次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板简介

    Firefly-RK3288Ubuntu解码软件介绍

    Ubuntu 应用层支持 视频硬件编解码支持
    的头像 发表于 11-27 08:56 5150次阅读
    Firefly-RK3288<b class='flag-5'>Ubuntu</b>解码软件<b class='flag-5'>介绍</b>

    fireflyAIO-3399J主板介绍

    AIO-3399J默认出厂固件是支持LVDS+HDMI 1080P的双屏显示,HDMI分辨率最高只能到1080P。
    的头像 发表于 12-24 10:03 1674次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板<b class='flag-5'>介绍</b>

    fireflyAIO-3399J主板红外遥控器简介

    红外遥控器 产品参数 产品:12键红外遥控器 版本:Firefly定制版 电源:两节7号电池 适配:AIO-3399J 描述:支持AIO-3399J开发板的遥控开机功能
    的头像 发表于 12-24 10:07 1581次阅读

    fireflyAIO-3399J主板屏幕模组介绍

    屏幕模组 7.85寸MIPI液晶屏模组 注意:默认的AIO-3399J主板不带mipi_dsi接口,如需要此功能需修改硬件。
    的头像 发表于 12-24 10:14 1636次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板屏幕模组<b class='flag-5'>介绍</b>

    fireflyAIO-3399J主板UART使用介绍

    AIO-3399J 支持SPI桥接/扩展4个增强功能串口(UART)的功能,分别为UART1,UART2,RS232,RS485。
    的头像 发表于 12-24 10:18 2120次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板UART使用<b class='flag-5'>介绍</b>

    fireflyAIO-3399J主板PWM使用介绍

    AIO-3399J开发板上有 4 路 PWM 输出,分别为 PWM0 ~ PWM3,4路 PWM 分别使用在eDP背光、MIPI背光、VDDLOG供电、红外IR。 本章主要描述如何配置 PWM。
    的头像 发表于 12-24 10:37 2263次阅读

    fireflyAIO-3399J主板MIPI CSI使用简介

    AIO-3399J 开发板分别带有两个MIPI,一个DVP摄像头接口,MIPI最高支持支持4K拍照,并支持1080P 30FPS以上视频录制。
    的头像 发表于 12-24 10:22 5185次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板MIPI CSI使用简介

    fireflyAIO-3399J主板LED使用介绍

    AIO-3399J 开发板上有 2 个 LED 灯
    的头像 发表于 12-24 10:31 3044次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板LED使用<b class='flag-5'>介绍</b>

    fireflyAIO-3399J主板IR使用简介

    AIO-3399J 开发板上使用红外收发传感器 IR (在 mic 接口和喇叭接口之间)实现遥控功能,在IR接口处接上红外接收器。
    的头像 发表于 12-24 10:32 2218次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板IR使用简介

    fireflyAIO-3399J主板I2C使用介绍

    AIO-3399J 开发板上有 9 个片上 I2C 控制器,
    的头像 发表于 12-24 10:34 1917次阅读
    <b class='flag-5'>fireflyAIO-3399J</b>主板I2C使用<b class='flag-5'>介绍</b>

    fireflyAIO-3399J主板ADC使用介绍

    AIO-3399J 开发板上的 AD 接口有两种,分别为:温度传感器 (Temperature Sensor)、逐次逼近ADC (Successive Approximation Register)。
    的头像 发表于 12-24 10:47 1710次阅读

    fireflyAIO-3399J启动模式说明主板

    AIO-3399J 有灵活的启动方式。一般情况下,除非硬件损坏,AIO-3399J 开发板是不会变砖的。
    的头像 发表于 12-25 16:28 1391次阅读

    fireflyAIO-3288J主板Ubuntu应用层支持简介

    Mpp是Rockchip提供的一套视频编解码的api, 并且基于mpp,Rockchip提供了一套gstreamer的编解码插件。
    的头像 发表于 12-26 15:23 2414次阅读

    Core 3399J固件Ubuntu(GPT)分享

    电子发烧友网站提供《Core 3399J固件Ubuntu(GPT)分享.txt》资料免费下载
    发表于 09-14 09:33 2次下载
    Core <b class='flag-5'>3399J</b>固件<b class='flag-5'>Ubuntu</b>(GPT)分享