文档章节

QT+树莓派实现一个简单的播放器

大牛妞
 大牛妞
发布于 2016/11/24 18:04
字数 1109
阅读 643
收藏 2

精选30+云产品,助力企业轻松上云!>>>

说起树莓派,买了也有一段时间了,但是始终都没有做出什么好玩的设备出来,恰好最近在学C++,看到树莓派放在墙角吃了一年多灰,为何不利用它来学一下编程呢?
先给我的工作台来个特写:
20160526205558894-0
说干就干,在经历了一番折腾以后,先准备所需的器材和必要的零部件,在这里我简单的罗列一下:
先是树莓派的硬件配置:
20160526205558698-0

  • 树莓派B+一款+16G内存卡一个
  • 网线一根(如果有无线网卡也可以)
  • HDMI线一根
  • 显示器一个(我用的是7寸显示屏+驱动板)

如果条件允许的话,可以带个小键盘,为了方便调试,不是必须的。

接下来是软件部分的安装
我用的是树莓派无图形界面的那个版本-Lite版,在官网可以下载到它的ISO镜像,在这里我就不贴出来了。
然后是将系统用16G的内存卡烧录进去,安装在树莓派上,接上显示器看看有没有输出,如果有输出的话,说明准备工作已经做好了。
用pi账号登陆进去,装qt开发环境:

1

2

3

sudo apt-get upgrade

sudo apt-get update

sudo apt-get install qtcreator

可能有点慢,耐心的等待一下;等到安装完了以后,在命令行输入:qmake,看看是否有反应,如果有反应,那么恭喜你,你已经成功了一半!
20160526205558924

因为我们的Lite版本的系统是没有图形界面的,为了让它支持窗口图形界面显示,我们要给它安装X-server,关于X-server是什么,可以去网络上了解一下,这里简单的把它理解为让操作系统显示图形界面必须的条件即可,具体的命令为:

1

sudo apt-get install xorg

因为播放器用的是mplayer的API,所以,要安装mplayer,关于Mplayer,大家也可以去互联网详细了解,知道它是个多媒体播放器就可以了,具体的命令:

1

sudo apt-get install mplayer

20160526205558841

接下来我们联网,将树莓派通过网线,或者无线网卡连接到当前的局域网里面,这样就可以用远程SSH来操作树莓派了,具体的连接方式在这里我不重复,教程在网络上有很多。

到这里,已经具备了所有的条件,就差开发出软件开始运行了。好了具体要怎么开发呢?那就要在电脑上来搭建平台了,先下载QT,Qt有好多个版本,我这里用的是3.0.1这个版本。关于怎么在电脑上安装qt,我想大家应该都会,故不再重复提。
20160526205558106-0

接下来就是开发工作了,源码在文末下载,在电脑上调试好以后,确定没有BUG(注意一下,版本有时候会导致出错,安装的时候一定细心观察)以后,用FTP工具,我用的是FileZilla,传到树莓派里面,最好是新建一个文件夹,我的是/home/pi/player这个路径。
20160526205558738-0

好了,接下来就到了激动的时候:编译软件。目录切换到你FTP进qt程序的地方,开始执行这三个命令:

1

2

3

qmake -project #这个命令是用来构建qt工程的;

qmake #qt编译器初始化项目;

make #命令大家都很熟悉了,不多解释。

这个过程很慢,不用心急,玩玩手机,大概1分钟左右,看到如果没有BUG输出,那么恭喜你,你成功了!那就赶紧来试试能不能运行呢?ls一下,看看有没有一个.o的文件,如果看到这个文件说明已经生成了软件先来测试一下:输入./player(这个是生成的名字,当然你可以自己定义),如果屏幕上出现了窗口,你应该激动了,没错,你已经成功的做出一个简单的嵌入式的作品。
我们要让他开机启动,那就修改rc.local脚本文件,把启动的代码加进去,当你再次重启的时候,就会发现显示器出现了一个播放器的界面。
20160526205558561-0

播放器源代码在这里 http://pan.baidu.com/s/1byG5Xk 

大牛妞

大牛妞

粉丝 27
博文 29
码字总数 33575
作品 1
福州
程序员
私信 提问
加载中
请先登录后再评论。
树莓派初学者?先做做这十个项目吧

http://www.leiphone.com/news/201511/7DAzK23RzBEJzvra.html?x=207&y=21 树莓派真是个好玩意儿!它非常实惠、高度便携而且使用非常方便。但对于刚入门的新手来说,刚拿到一块树莓派可能不知...

ztguang
03/14
13
0
利用树莓派可以做什么?

基于树莓派的运动检测报警系统 传感报警的性能要求并不高,Arduino就能很好地完成,当然树莓派就更不用说了。打造一个简单的结合运动传感器和压电蜂鸣器的报警系统能够让你更快地了解树莓派的...

张宁宁1998
2019/06/10
38
0
树莓派摄像头使用记录(一)

目录 前言 目前提供4个应用程序: , , 和。和非常相似,用于捕获图片;和用于捕获视频。 所有应用程序均基于命令行方式运行,通过 的 进行编写。 的 提供了更易使用的系统组件。注意, 是一个...

simonforfuture
2018/04/20
0
0
让树莓派说出自己的IP地址

当亲爱的树莓派没有显示器时如何控制它?对,就是ssh,但是ssh需要IP地址啊,树莓派的IP地址是多少?这个问题问的好,目前大约有这样几种解决方案:、 获取到IP地址后将地址发到邮箱:前提是...

ma6174
2013/09/29
0
0
有哪些对树莓派的有趣改造和扩展应用?

作者:孙涛 链接:https://www.zhihu.com/question/20697024/answer/180741949 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 为了满足某人24小时不间断...

张宁宁1998
2019/05/22
76
0

没有更多内容

加载失败,请刷新页面

加载更多

CPU缓存和内存屏障

CPU性能优化手段 - 缓存 为了提高程序的运行性能, 现代CPU在很多方面对程序进行了优化 例如: CPU高速缓存, 尽可能的避免处理器访问主内存的时间开销, 处理器大多会利用缓存以提高性能 多级缓...

CodingDiary
2019/07/08
21
0
关于我及本号的一些说明

初次关注本号的读者可能比较想了解本号的一些情况,这里单独写篇文章详细介绍下本人及本公号。 本人是一名 JAVA 后台开发工程师,17年毕业于某 211 工程硕士,校招进入某股份制银行做后台开发...

gaiserchan
2019/02/22
3
0
卷积神经网络学习路线(十二)| 继往开来的DenseNet

前言 这是卷积的第十二篇文章,主要为大家介绍一下DenseNet,值得一提的是DenseNet的作者也是上一篇卷积神经网络学习路线(十一)| Stochastic Depth(随机深度网络)论文的作者,即清华的黄...

BBuf
01/10
14
0
Android Camera原理之camera provider启动

1.camera provider进程介绍: cameraserver 736 1 274664 69564 binder_thread_read f3de10cc S android.hardware.camera.provider@2.4-service 其中的pid是736,说明camera provider进程启动......

天王盖地虎626
26分钟前
20
0
Angular / RxJs我应该何时退订`Subscription` - Angular/RxJs When should I unsubscribe from `Subscription`

问题: When should I store the Subscription instances and invoke unsubscribe() during the NgOnDestroy life cycle and when can I simply ignore them? 在NgOnDestroy生命周期中,什么......

法国红酒甜
26分钟前
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部