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.