2024年4月15日发(作者:)
科技视界
基于树莓派的高清视频播放器的设计与实现
顾艳华王闯
渊
南京信息职业技术学院通信学院
袁
江苏南京
210023冤
揖
摘要
铱
树莓派卡片电脑是研究物联网
袁
智能机器人等领域的天然开发板
袁
基于树莓派的高清视频播放终器的设计与实现具有很强的实
践参考价值
遥
介绍了树莓派的软硬件研发环境及其发展
袁
给出了基于树莓派设计实现高清视频播放器的软硬件设计及移植开发环境
袁
并基于树
莓派移植了高清视频解码模块
袁
实现了基于树莓派的高清
(720P
及
1080P)
视频的播放系统
遥
经测试
袁
该系统性能卓越
袁
实用创新性强
遥
揖
关键词
铱
树莓派
曰
高清视频
曰
视频播放器
曰
物联网
曰H264曰AAC
0
引言
数据及
体积如名片大小的树莓派是基于
ARM
控制器和
Linux
系统的单
Stream
FAAC
板机电脑
络端读取
(TS)
TS
格式
编码音频数据
袁
数据封装格式支持
mp4
及
MPEGTransport
[4]
封装格式
曰
数据源读取可支持本地
曰
输入模块
渊I冤
与
OMXPlayer
MP4
封装格式
播放器模块
袁
及支持从网
渊P冤
间
IO袁HDMI
袁
它具有计算机主机的所有功能和接口
袁
如
USB袁RJ45,
采用生产者
-
消费者模型
袁
设计并发队列
Queue渊Q冤
作为二者之间数据
10
通信模型
曰
视频解码模块
渊V冤
与音频解码模块
渊A冤
为消费者
遥
功能上数
势
袁
的操作系统
及
GPIO
[1]
它是研究物联网
遥
接口等
树莓派体积小巧
袁
广泛支持基于
袁
智能机器人等领域的良好的
袁
具有可扩展性强
Linux
的发行版和
Windows
SD-
尧
天然的原型开发平
袁
社区广泛等优
据输入模块解封装音视频数据包
袁
并标记时间戳
T袁
后分别放入并发
台
遥
树莓派自
2012
年首版在英国发布至今
袁
深受全球计算机爱好者的
队列
Q遥
热烈研究
袁
来自全球的计算机软硬件爱好者们基于树莓派开发了众多
的创新功能
袁
如机器人飞行器
袁
家庭自动化
袁
天气预报站
袁
超级电脑
袁
有
声书籍播放器等等
[2]
随着高清视频资源的日益丰富和用户对高清视频播放需求的越
遥
来越多
袁
高清视频终端播放器的设计和开发面临着越来越多的需求和
挑战
,
如
院
更小巧便携
尧
更强的处理能力等
遥
本文基于
B
型树莓派
袁
搭
建了基于其上的软件移植开发环境
袁
利用其强大的
GPU
视频处理能
力
720P
袁
开发移植了
本文共分为三个部分
和
1080P
高清视频播放器
H264
高清视频解码模块
院
第一部分高清播放器系统分析与设计
遥
袁
成功实现了基于其上的
袁
介
图
1
高清视频播放器系统设计模块图
绍了树莓派的软硬件开发环境及其演进
袁
及基于树莓派的高清视频播
放器系统架构及设计
曰
第二部分详叙了本系统高清音视频解码模块在
树莓派环境中的移植
曰
最后总结了本系统的性能测试数据
遥
采用基于
OMXPlayer
播放器模块
渊P冤-
基于开源
OMXPlayer
模型移植
袁
分别
1
高清播放器系统设计
FAAC
FFmpeg
向树莓派移植的高清视频解码模块
渊V冤
和基于
发队列音视频数据
向树莓派移植的音频解码模块
袁
分别解码后输出给音视频输出模块
渊A冤遥
功能上播放器模块读取并
渊O冤遥
1.1
音视频输出模块
渊O冤-
基于输入模块标记时间戳
T袁
向
HDMI
接口
写输出音视频数据
遥
代树莓派分为
2012
树莓派硬件开发环境及演进
年英国树莓派基金会宣布树莓派平板电脑正式发布
关键技术音视频同步算法
-
基于以上模块设计
袁
以下算法被设计
B
A
袁
第一
为解决数据输出时音视频同步问题
袁
经过此算法处理的音视频数据为
会宣布推出二代树莓派卡片电脑
型有
512MB
内存而
型和
B
A
型两款
型有
512MB
袁
二者硬件配置略有不同
B
型
内存
袁
在硬件配置上又进一步升级
遥2015
年
2
月
袁
袁
主要体现在
树莓派基金
袁
时间同步数据
袁
作为音视频解码模块和输出模块的输入实现音视频同
比如
步
遥
512MB
CPU
由
700MHz
的单核心升级到
900MHz
音视频同步算法
1.2
升级到
1GB
以及支持更多的外设扩展接口等
的四核心
遥
袁
内存由
信息并获取视频帧率
Step1院渊I冤
模块读取
院
ts
时长
TS
或
MP4
封装数据
袁
去除头部封装
ARM
第一代树莓派基于
树莓派软件开发环境及演进
Linux
系统
袁
典型的如
Raspbian袁ARCHLinux
Step
支持
遥
等
据
遥
2015
随着树莓派社区的壮大
年
2
月报告显示
袁Windows
袁
树莓派已被越来越多的操作系统
10
和
Android
平台已证实支
线程
2院
F
持树莓派
袁
其它典型的如
FreeBSD袁WebOS袁DebianLinux
等操作系统
Step
1院
获取当期系统时间
T
均已支持树莓派
遥
完整的支持树莓派的操作系统列表参见
[3]
线程
3院
将当前
处理音频数据
ts
时长音频数据标签为时间
T袁
并将数据放入
Linux
树莓派基于
ARM
系列
CPU
系统
袁
应用软件可移植环境强
遥
袁GNU/
Step
2院
处理视频数据
Q
Step
4:
记录当前系统时间
t1
树莓派开发的编程语言有
工具链已经较好的支持树莓派系统软件开发移植
院C
及
C++袁Python袁Java袁Golang
遥
成熟的支持
等语言
遥
典
Step
5:
型的集成开发环境有
KDevelop,BluejIDE,Eclipse
及
VisualStudio
Step
6院
读取
记录当前系统时间
ts/F
时长视频帧
t2
袁
及
标签为时间
时间消耗
T袁
SumT=
并将数据放入
t2原t1
Q
等
遥
否则转到
7院IFSumT>=ts
Step4
转到
Step1
基于树莓派的高清视频播放器软件开发环境如下
员冤
2
高清音视频解码模块移植
圆冤
操作系统
编译及调试器
院
院
院
RaspbianOS
基于开源
OMXPlayer
播放器模型
袁
基于树莓派的高清视频播放器
移植了音
尧
视频解码模块到树莓派系统中
袁
此移植关键在于充分利用
1.3
猿冤
集成开发环境
院
GCC,
Eclipse
G++
IDE
及
for
GDB
C辕C++
树莓派
基于树莓派的高清视频播放器系统主要设计为三个模块
树莓派高清视频播放器系统设计
:
高清音
视频数据输入模块
袁
音视频数据解码模块及音视频输出渲染模块
遥
系
2.1H.264
GPU
视频解码模块移植
多媒体处理指令及技术
遥
统架构逻辑模块设计如图
1
所示
遥
标准
H.264/MPEG-4
遥
由
ITU-T
视频编码专家组与
AVC
[5]
是一种面向块的基于运动补偿的编解码器
ISO/IEC
联合工作组开发
袁
它也被
音视频数据输入模块
渊I冤原
典型的音视频数据支持
H264
编码视频
广泛用于网络流媒体数据
袁
网络软件以及各种高清晰
渊
下转第
20
页
冤
淫
基金项目
院2014
年江苏省大学生实践创新项目
渊2Y冤遥
30
科技视界
Science&TechnologyVision
.. All Rights Reserved.
科技视界
表
1叶
水产动物组织胚胎学
曳
实验报告评分标准
机会
袁
不仅能加强对课程知识的掌握
袁
还促进组织能力
尧
语言表达能力
评价指标评价标准分值
等综合素质发展
冶遥
由此可见
袁
学生也比较认同课程的学业考核评价改
革
遥
不过由于期末考试成绩分值的降低
袁
也有个别学生由一个极端走
实验预习
了解实验目的和内容
袁
掌握实验步骤及仪器设备使用方
法
遥
10
向另一个极端
袁
由
野
期末考试前的突击
冶
走向
野
不重视期末理论考试复
习
冶遥
另外
袁
在教学过程中发现
袁
不同班级之间的学习成绩差异比较大
袁
实验过程
积极主动完成实验内容
袁
态度端正
曰
实验步骤正确
袁
仪器
设备操作规范
遥
20
说明班级的整体学风对学生的学习质量也会有很大的影响
遥
姓名
尧
学号
尧
日期
尧
项目名称等内容齐全
遥5
4
结语
书写认真
袁
绘图能真实反映显微镜下的结构和比例
袁
实
事求是
袁
无抄袭别人作业和临摹挂图或书本插图现象
遥
10
了期末考试分值
叶
水产动物组织胚胎学
袁
不仅能督促学生平时学习
曳
学业考核评价改革加强了过程考核
袁
提高学生自主学习
袁
尧
降低
创新
学习的积极性
袁
提升学习质量
袁
而且还能减弱因考试给学生带来的压
绘图是用点和线绘制的半模式图
袁
用线条绘细胞膜
尧
核
尧
只靠期
实验报告完
膜和纤维等连续性结构
袁
细胞质则用点来表示
遥
线条粗
末几天突击的投机取巧心理和行为
成情况
细均匀
袁
点大小一致
袁
圆
尧
细
尧
密而不重叠
遥
40
抑
尧
焦虑
袁
激发学生的创造力
袁
消除学生不以平时学习为基础
遥
另外课程考核增加了学生实验内
容示教讲解和小组课堂
PPT
展示环节
袁
每个学生必须都要参与
袁
这些
绘制的图像有用横线指明结构
袁
并注字说明
遥
图下方有
环节除了教师给予评价外
袁
学生之间也要进行互评
袁
这有利于激发学
注明标本
渊
图
冤
名称
尧
放大倍数等
遥
5
生的主人翁精神和责任意识
袁
培养学生的创新意识和综合分析
尧
解决
问题能力
袁
促进了学生合作精神的培养和个体潜能的发挥
曰
对于学生
对所绘结构特点有相应描述
袁
语言组织恰当
袁
用词准确
遥10
的展示讲解
袁
教师要逐一进行点评和反馈
袁
在肯定学生的同时还要让
学生及时发现自己的问题和不足
实验总成绩
袁
这就要求教师不仅要掌握学科的基
础知识
袁
还得了解学科发展动态
袁
从而促进了教师教研水平的提高以
3
改革效果
及专业知识的增长
遥
实践发现由于实验随堂考核
尧
实验内容示教讲解
和小组课堂
PPT
展示需要花费较多的时间和教师更多的精力
袁
建议以
对青岛农业大学
2012
和
2013
级水产养殖专业学生进行了
叶
水产
小班授课效果更好
遥
动物组织胚胎学
曳
学业考核评价改革
袁
并和
2011
级水产养殖专业学生
教学效果进行了比较
遥
与改革前相比
袁
学生上课积极性明显提高
袁
课堂
揖
参考文献
铱
活动活跃度显著增强
袁
学生的创新思维和个人特长得到了充分的发
咱员暂
挥
袁
期末考试卷面平均成绩和课程总评成绩都有所提高
袁
说明改革有
咱圆暂
郝淑新
.
试述高等学校学生学业考核
[J].
利于学生对课程内容的掌握和综合素质的提高
遥
在学校每学期组织的
范大学学报
孙士杰
,
张国荣
读写算
:
教育教学研究
,2011(13):24,26.
:
哲学社会科学版
,
冯喜英
.
高校学生学业成就评价现状及改革的研究
,2000,27(5):106-109.
[J].
河南师
教学质量学生座谈会中
袁
学生对课程改革给出如下评价
院野
老师教学风
咱猿暂
格新颖
袁
积极开发同学创造力
袁
提高了记忆力
冶尧野
在老师的指导下
袁
对
咱源暂
蔡克勇
院学报
廖迎春
.21
.
对高职院校学业考核评价方式改革的思考
世纪中国教育的走向
[M].
广东高等教育出版社
[J].
湖南工业职业技术学
,2004.
课程有了极大的兴趣
袁
越来越喜欢自己的专业
袁
更有信心了
冶尧野
课程给
我们亲自实践的机会多
袁
实验随堂考核给我们学习提供了压力和动
咱缘暂
刘继红
,2011,11(6):94-95.
.
对高校考试改革的几点思考
[J].
中国高教研究
,2000(5):28-29.
力
袁
学习也不那么枯燥了
冶尧野
学生课堂讲解活动给了同学自我展示的
咱
责任编辑
院
邓丽丽
暂
渊
上接第
30
页
冤
度电视陆地广播系统中
遥
高清视频解码模块基于开源标准库
FFmpeg
及
X264
库移植
袁
面
3.1
将
系统测试性能参数
B
型树莓派
袁
连接显示器
尧
键盘
袁
鼠标
袁
移动硬盘等外部设备
袁
然
向树莓派的移植主要解决了
FFmpeg
及
X264
程序库在树莓派
ARM
后在树莓派上运行编译后的高清视频播放器
OMXPlayer袁
设计实现的
平台的编译链接问题
exportCCPREFIX=野/opt/cross/x-tools
,
其关键语法如下
院
高清视频播放器用户接口如下
omxplayer
gnueabi-冶
/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-omxplayer
-o
院
./configure要要
经测试
袁
基于树莓派的高清视频播放器
-o
hdmi
hdmi
filename
URL/vidoe.m3u
袁
性能良好
袁
具有以下测试
要要
要
要host=arm-unknown-linux-gnueabi
参数
遥
要要
要
enable-static
项目音频编码视频编码分辨率帧率
要要
要
cross-prefix=${CCPREFIX}
720P
要要
要
prefix=/my/path/were/i/keep/built/arm/stuff
1080P
(MP4)
(MP4)
AAC
AAC
H264
H2641920x1080
1280x72025
20
–
–
35
30
帧
帧
/
/
秒
秒
2.2
要要
要
extra-cflags='-march=armv6'
extra-ldflags='-march=armv6'
3.2
高级音频编码
ACC
音频解码模块移植
AAC渊AdvancedAudioCoding冤
基于
MPEG-2
的音
本文设计并实现了基于树莓派实现的高清视频播放器
结束语
袁
该原型系
频编码技术是一种取代
MP3
的高压缩比的音频压缩算法
遥AAC
压缩
统经测试
袁
性能卓越
袁
体积小
袁
可携带性强
遥
本系统中运用的设计方案
比通常为
18院1袁
远胜
mp3曰
在音质方面
袁
由于采用多声道
袁
更高的采样
和基于树莓派的软硬件开发经验为进一步研究基于树莓派的其他应
率和采样精度
袁
以及使用低复杂性的描述方式
袁
使其比几乎所有的传
用具有一定的实践参考意义
遥
统编码方式在同规格的情况下更胜一筹
植
遥
移植过程分为两步
AAC
音频解码模块基于
袁
第一步需先交叉编译
FAAC
开源音频解码标准库向树莓派移
遥
FAAC
库
曰
第二部需再次
咱员暂
李明
,
译
揖
参考文献
铱
交叉编译
2014,6.
.Linux+
树莓派玩转智能家居
(
第
2
版
)[M].
北京
:
人民邮电出版社
,
./configure
FFmpeg袁
同时激活
X264
咱圆暂Peter
./configure
要要
要
及
FAAC
模块
遥
其关键语法如下
院
要要
要
host=arm-unknown-linux-gnueabi
出版社
MembreyDavidHows.
树莓派学习指南
-(
基于
Linux)[M].
北京
:
人民邮电
要要
要
arch=armel
咱猿暂Brendan
,2014,4.
要要
要
enable-libx264
--target-os=linux
要要要enable-nonfree
--enable-gpl
咱源暂
要要
要
enable-libaacplus
enable-libmp3lame
要要要enable-librtmp
2015(2).
董杰
,
辛吉涛
Horan.
,
连捷
RaspberryPi
.
基于
Android
树莓派实作应用
系统的
H.264
[M].
视频直播技术研究
北京
:
人民邮电出版社
.
电视技术
,2014,5.
,
咱缘暂
蔡丽艳
.
基于
H.264
嵌入式网络视频监控系统的研究与实现
[M].
南京邮电大
3
总结
学
,2013.
咱
责任编辑
院
邓丽丽
暂
20
科技视界
Science&TechnologyVision
.. All Rights Reserved.


发布评论