RK3399有三种启动模式:1、Normal模式;2、Loader模式;3、MaskRom模式。

     Normal模式是正常的启动过程,各个组件依次加载,直到正常进入系统。

     Loader模式会让bootloader进入升级状态,等待主机命令,用于固件升级等。Firefly-RK3399要进入Loader模式,需要在bootloader启动时检测到RECOVERY(恢复)键被按下,并且USB处于和PC连接的状态。

     MaskRom模式是设备变砖的最后一条防线,用于bootloader损坏时进行系统修复。一般情况下是不用进入MaskRom模式的,只有在设备进入不了Loader模式(bootloader校验失败,读取不了IDR块,或bootloader损坏)、SD卡启动也失效的情况下,BootRom代码才会进入MaskRom模式。此时BootRom代码等待主机通过USB接口传送bootloader代码,传送完成后进行加载并运行,并进入Loader模式。

这块toybrick recovery按键没有接出来,核心板上有个maskrom按键可以进入maskrom模式。

一些参考资料:

http://t.rock-chips.com/wiki.php

点击左边的TB-RK3399ProD进入wiki、

串口登录,fedora系统登录用户名:toybrick,密码:toybrick

配置好网络后,通过auth脚本完成网络验证,要不不能上网

用dnf安装qt

dnf check-update

dnf install qt5-devel

qt5在fedora28上 qDebug 没输出:

vi /usr/share/qt5/qtlogging.ini

改为如下内容

[Rules]
*.debug=true
qt.qpa.*=false
qt.qpa.xcb.xcberror.warning=false

其中第一条是打开debug,第二条是屏蔽qt.qtp开头的一些调试信息

查看QLoggingCategory 可以找到详细的描述。 好像fedora 的配置文件路径不是标准的。。。

播放视频无法解码, 参考

https://blog.csdn.net/qq_21078557/article/details/83690226

把所有插件都装上

dnf install gstreamer1-plugins*

dnf search rockchip

可以找到一堆mpp drm相关的

dnf install gstreamer-rockchip

http://t.rock-chips.com/wiki.php?mod=view&id=57#h1_1

查看dnf 安装包内容

dnf repoquery -l librockchip_mpp-tests

http://t.rock-chips.com/forum.php?mod=viewthread&tid=336

直接调用

播放文件, 还是卡。

gst-launch playbin uri=file:///path/to/test.avi

【视频开发】Gstreamer中一些gst-launch常用命令

https://blog.csdn.net/LG1259156776/article/details/77645147

更新固件后,最终安装命令:

dnf install gstreamer1-plugins-base mesa-dri-drivers gstreamer1-plugins-good gstreamer1-plugins-bad-free gstreamer-rockchip gstreamer1-libav-1.14.1-1.fc28

其中最重要的是gstreamer1-libav ,包含各种解码

 

声音播放,要求音频耳机口输出,默认是hdmi输出

发现qt后端是PulseAudio,用pactl设置输出sink

//hdmi输出

[toybrick@localhost audiodevice]$ pactl  set-default-sink 0

//耳机输出
[toybrick@localhost audiodevice]$ pactl  set-default-sink 2 

参考:

https://wiki.archlinux.org/index.php/PulseAudio#default.pa

http://wiki.friendlyarm.com/wiki/index.php/NanoPC-T4/zh#.E5.88.87.E6.8D.A2.E9.9F.B3.E9.A2.91.E9.BB.98.E8.AE.A4.E8.BE.93.E5.87.BA.E8.AE.BE.E5.A4.87

5.13 切换音频默认输出设备
5.13.1 设置默认的输出设备

编辑文件 /etc/pulse/default.pa,修改 set-default-sink 的值,值为0时表示从HDMI出声,1则表示从耳机接口出声,如下所示:

set-default-sink 0
5.13.2 播放时临时切换

这种方法仅对当前的播放进程有效:

打开菜单 "Sound & Video" -> "PulseAudio Volume Control", 在界面上点击 "Built-in Audio Stereo" 按钮切换不同的输出设备,比如在HDMI与耳机接口之间切换。

其实也可用命令

RK3399 pro 开发记录的更多相关文章

  1. CozyRSS开发记录22-界面退化

    CozyRSS开发记录22-界面退化 1.问题1-HtmlTextBlock 找的这个HtmlTextBlock有很严重的bug,有时候显示不完全,有时候直接就崩了.然后看了下代码,完全是学生仔水平写 ...

  2. CozyRSS开发记录21-默认RSS源列表

    CozyRSS开发记录21-默认RSS源列表 1.默认列表 在第一次使用CozyRSS的情况下,我们让它内置五个RSS源吧: 2.响应RSS源的更新 先不处理RSS源列表项的点击,响应下下拉菜单里的更 ...

  3. CozyRSS开发记录20-CanResizeWithGrip

    CozyRSS开发记录20-CanResizeWithGrip 1.窗口样式 首先,WindowStyle有四种: 然后,对于窗口缩放的ResizeMode,也有四种,CanResize和CanRes ...

  4. CozyRSS开发记录19-窗口标题栏交互

    CozyRSS开发记录19-窗口标题栏交互 1.谈谈对mvvm解耦的看法 在使用mvvm时,如何操作窗口,这是一个问题.这个问题的关键点是:mvvm是把view和viewmodel解耦了的,很多写法一 ...

  5. CozyRSS开发记录18-番外之Atom1.0的支持

    CozyRSS开发记录18-番外之Atom1.0的支持 1.对CozyRSS.Syndication批判一番 由于我工作的主要开发语言是c++,所以会看到我的c#代码写得非常朴素,很多语法糖都没有用上 ...

  6. CozyRSS开发记录17-Html2Xaml

    CozyRSS开发记录17-Html2Xaml 1.RssContentView还需要优化 上回做了RssContentView的显示,但是对于rss返回的描述(摘要),连换行的没有,更别说里面还有h ...

  7. CozyRSS开发记录16-RssContentView显示

    CozyRSS开发记录16-RssContentView显示 1.RssContentView的布局和绑定 继续参照原型图来写xaml: 然后在RSSContentFrameViewModel里提供绑 ...

  8. CozyRSS开发记录15-获取和显示RSS内容

    CozyRSS开发记录15-获取和显示RSS内容 1.内容列表 我们先给RSSContentFrame增加一个ViewModel,里面和RSS源列表一样,提供一个ObservableCollectio ...

  9. CozyRSS开发记录14-RSS源管理初步完工

    CozyRSS开发记录14-RSS源管理初步完工 1.添加源的响应 DialogHost.Show有几个版本的重载,加一个DialogClosingEventHandler参数.我们让添加源对话框的添 ...

随机推荐

  1. O - Can you find it?(二分查找)

    O - Can you find it? Time Limit:3000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64 ...

  2. SpringMVC框架笔记02_参数绑定返回值文件上传异常处理器JSON数据交互_拦截器

    目录 第1章 高级参数的绑定 1.1 参数的分类 1.2 数组类型的参数的绑定 1.3 集合类型的参数的绑定 第2章 @RequestMapping的用法 2.1 URL路径映射 2.2 请求方法限定 ...

  3. javascript_18-Array 数组

    数组 数组-引用类型,JavaScript中的内置对象 Array对象的属性 length 获取数组的长度(元素个数) 检测数组 instanceof Array.isArray() //h5新增 常 ...

  4. PM2 监控 Spring Boot 项目运行

    更多 PM2 的用法介绍请参考: PM2简易使用手册 - 掘金 由于 PM2 通常都用于 node 应用, 所以 exec_mode 应写为 fork, 其中最重要的是 args, -jar 和 ja ...

  5. WinServer-开关机日志

    开关机日志正常1074, 6006, 13, 12, 6005,41,60081074 记录某用户在某计划下重启6006 日志服务关闭13 OS关闭时间按12 OS启动时间6005 日志服务开启 异常 ...

  6. XSLT知识点【一】

    XSL 指扩展样式表语言(EXtensible Stylesheet Language). 它起始于 XSL,结束于 XSLT.XPath 以及 XSL-FO. 起始于 XSL------CSS = ...

  7. Codes: MODERN ROBOTICS Ch.4_基于PoE的正运动学代码实现

    %%1 基于PoE space form 的正运动学求解 % 输入M矩阵.螺旋轴列表Slist(column vector).关节角向量qlist(column vector),输出齐次变换矩阵T f ...

  8. linux网络编程之socket编程(四)

    经过两周的等待,终于可以回归我正常的学习之旅了,表哥来北京了在我这暂住,晚上回家了基本在和他聊天,周末带他在北京城到处乱转,几乎剥夺了我自由学习的时间了,不过,亲人之情还是很难得的,工作学习并不是生活 ...

  9. 如何防护DDOS攻击策略

    DDoS是目前最凶猛.最难防御的网络攻击之一.现实情况是,这个世界级难题还没有完美的.彻底的解决办法,但采取适当的措施以降低攻击带来的影响.减少损失是十分必要的.将DDoS防御作为整体安全策略的重要部 ...

  10. test20190826 NOIP2019 模拟赛

    100+100+40=240.我觉得如果没做过第三题考场上却能想出来的都是神仙. 基因突变 [问题描述] 邪恶的 707 刚刚从白垩纪穿越回来,心中产生了一个念头:我要统治人类! 但是统治人类是很庞大 ...