《仪器仪表 与分析监测》2012年第 3期
基于嵌入 式 Linux的数字系统设计
Design of Data system Based On Embedded Linux
薄 涛
(唐山开元 自.动 焊接 装备有限公 司, 河北唐山 063000)
[摘要] 提 出了基 于嵌入式 Linux的音视频播放 系统设计与实现的系统方案 ,根据 实际需要对播放
器音视频解码库进行合理的选择 ,重新配置编译 Linux系统下通用播放器 Mplayer,在 Qt集成开发环境下
进行 用 户界 面的开发。最后 ,将 Mplayer可执行 文件和 Qt用户界 面一 并移植 到开发 板 中,和操 作 系统 一
起 实现 一个基 于友 好用户界面的、集音乐和视频播放功 能于一 体的嵌入式 多媒体播放 系统。
[关键词 ] 嵌入式 Linux;音视频 ;播放器 ;Qt
[中图分类号 ] TP23 [文献标识码] A
引 言
嵌入式 系统是 一种 以应用为 中心、以计算机
技术为基础 ,软、硬件可裁剪 的设计 系统 ,适应
于对功能 、可靠性 、成本 、体 积、功耗 等方面要
求较 高 的设 计领域 … 。随 着技 术 的不 断发 展 ,音
视频播放 系统 功能逐 步完善 ,得到越来越 多人们
的青睐。利用嵌 入式 Linux系统设计 音视频播 放
器 ,可以满足不同人群的需求。
1 Mplayer播 放器系统的分析设计
在没 有用户 界面 的前提 下 ,Mplayer可 以通 过
命令行调用的方式进行音视频文件 的播放。从播
放器 的整个 播放流 程角 度 出发 ,可以 把所 要 实现
的功能从结构上分解为 四大模块 :音视频输入模
块 、中心处理模块 、解码库模块、音视频 输 出模
块 。结 构如 图 1所示。
图 1 Mplayer模块化结构框 图
1.1 音 视频 输入模块
音视频输人模块任 务是通过在主机 串 口终端
下输人播放命令行进行 音视频文件输人操作 ,中
一
32 一
心处理模块利用该模块获得用户选择 的待播放文
件的文件路径和文件名 ,以及播放 音视频文件时
的播放 参数 。
1.2 中心处 理模块
中心处理模 块是整个播 放器 的核 心,它将输
入模块、输 出模块 和解码库模 块紧密地联系在一
起。该模块完成 的工作包 括 :通过输人 文件 的扩
展名和文件的头信息来判断该输入文件是否被播
放器所支持 ;对解码库模块 中 的所有解码器进行
注册 ;能够获取播放文件 的信息 ;能够 停止播放
文件 ,并做相应 的处理 ;能够调用解码 器对音频
采样数据进行读取 ;能够调 用解码器对视频 帧进
行读取等。中心处理模块在调用播放器 Mplayer的
主程序来播放输入模块中提供 的音视频文件前 ,需
要进行播放初始化操作。播放初始化流程见图 2。
播放 初始 化 主要是 检查 播 放器 当前是 否 有 文
件在播放 ,如果有 则调 用 停止 播 放 函数 ,使 当前
文件停止播放并关 闭 已打开的解码库 ,同时清空
音频缓冲 区,关闭对音频设备 的引用。之后 ,可
判断是否存在 可用 的解码器 ,如果不存在 ,则结
束播放初始化 ;如果存在 ,则 再判断是否有 可用
的音频通道和视频通道 ;如果 有则 进行读取文件
长度 ,获取 比特率等一些基 本的处理 ,如果 没有
则结束初始化。
评论0
最新资源