RK3399 pro 开发记录
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
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 开发记录的更多相关文章
- CozyRSS开发记录22-界面退化
CozyRSS开发记录22-界面退化 1.问题1-HtmlTextBlock 找的这个HtmlTextBlock有很严重的bug,有时候显示不完全,有时候直接就崩了.然后看了下代码,完全是学生仔水平写 ...
- CozyRSS开发记录21-默认RSS源列表
CozyRSS开发记录21-默认RSS源列表 1.默认列表 在第一次使用CozyRSS的情况下,我们让它内置五个RSS源吧: 2.响应RSS源的更新 先不处理RSS源列表项的点击,响应下下拉菜单里的更 ...
- CozyRSS开发记录20-CanResizeWithGrip
CozyRSS开发记录20-CanResizeWithGrip 1.窗口样式 首先,WindowStyle有四种: 然后,对于窗口缩放的ResizeMode,也有四种,CanResize和CanRes ...
- CozyRSS开发记录19-窗口标题栏交互
CozyRSS开发记录19-窗口标题栏交互 1.谈谈对mvvm解耦的看法 在使用mvvm时,如何操作窗口,这是一个问题.这个问题的关键点是:mvvm是把view和viewmodel解耦了的,很多写法一 ...
- CozyRSS开发记录18-番外之Atom1.0的支持
CozyRSS开发记录18-番外之Atom1.0的支持 1.对CozyRSS.Syndication批判一番 由于我工作的主要开发语言是c++,所以会看到我的c#代码写得非常朴素,很多语法糖都没有用上 ...
- CozyRSS开发记录17-Html2Xaml
CozyRSS开发记录17-Html2Xaml 1.RssContentView还需要优化 上回做了RssContentView的显示,但是对于rss返回的描述(摘要),连换行的没有,更别说里面还有h ...
- CozyRSS开发记录16-RssContentView显示
CozyRSS开发记录16-RssContentView显示 1.RssContentView的布局和绑定 继续参照原型图来写xaml: 然后在RSSContentFrameViewModel里提供绑 ...
- CozyRSS开发记录15-获取和显示RSS内容
CozyRSS开发记录15-获取和显示RSS内容 1.内容列表 我们先给RSSContentFrame增加一个ViewModel,里面和RSS源列表一样,提供一个ObservableCollectio ...
- CozyRSS开发记录14-RSS源管理初步完工
CozyRSS开发记录14-RSS源管理初步完工 1.添加源的响应 DialogHost.Show有几个版本的重载,加一个DialogClosingEventHandler参数.我们让添加源对话框的添 ...
随机推荐
- 阿里云ECS服务器设置端口(允许访问设置)
1.登录阿里云找到对应的服务器按照如下箭头指示: 2.点击“安全组配置”后进入到如下界面,点击“配置规则”进入详情配置界面. 3.点击“修改”可对特定的端口进行访问配置,如下图: 至此结束.
- c# IComparable与IComparer接口
- Jmeter 中正则表达式提取器Regular Expression Extractor
正则表达式提取器点击后置处理器中Post Processors 中的正则表达式提取器 Regular Expression Extractor Appy to: 表示作用于哪一个请求Main samp ...
- 使用HashMap,如果key是自定义的类,就必须重写hashcode()和equals()
java编程里有关约定:如果两个对象根据equals方法比较是相等的,那么调用这两个对象的任意一个hashcode方法都必须产生相同的结果. hashcode()和equals()都继承于object ...
- Bias vs. Variance(2)--regularization and bias/variance,如何选择合适的regularization parameter λ(model selection)
Linear regression with regularization 当我们的λ很大时,hθ(x)≍θ0,是一条直线,会出现underfit:当我们的λ很小时(=0时),即相当于没有做regul ...
- APP弱网测试工具(QNET)
QNET介绍官网链接:https://wetest.qq.com/product/qnet 目前在测试移动设备上进行弱网络专项测试的方案主要有两种: 通过Android设备连接到PC上进行弱网络测试, ...
- Go语言 - 数组 | 多维数组
Array 数组是同一种数据类型元素的集合. 在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化. 1.数组 在定义阶段,长度和类型就固定了,以后不能更改 2.长度也是数组 ...
- [JSOI2018]战争
题目描述 九条可怜是一个热爱读书的女孩子. 在她最近正在读的一本小说中,描述了两个敌对部落之间的故事.第一个部落有 nnn 个人,第二个部落有 mmm 个人,每一个人的位置可以抽象成二维平面上坐标为 ...
- UVa 1671 语言的历史——判断两个DFA是否等价
题意 一个DFA可以用一个5元组 $((Q, \sum , \delta , q_0, F))$ 表示,其中 $Q$ 为状态集,$\sum$ 为字母表,$\delta$ 为转移函数,$q_0$ 为起 ...
- ztree树默认根据ID默认选中该条数据
functiongetZtree() { varsetting = { view: { expandSpeed: 100, selectedMulti: true, showLine: true, / ...