嵌入式Linux下基于ARM9的媒体播放的设计

来源:
导读 大家好,我是本期栏目编辑小友,现在为大家讲解 嵌入式Linux下基于ARM9的媒体播放的设计问题。 如今,大多数

大家好,我是本期栏目编辑小友,现在为大家讲解 嵌入式Linux下基于ARM9的媒体播放的设计问题。

如今,大多数嵌入式设备都需要播放音频和视频。ARM9 Linux广泛应用于嵌入式系统。因此,本文提出了一种嵌入式Linux下基于ARM9的多媒体播放系统。

1玩家系统平台。

播放器的嵌入式Linux系统的层次结构如图1所示。硬件通电后,CPU的程序指针首先指向一个特定的内存地址,该地址通常存储Boot-loader。CPU和内存初始化后,Bootloader将Linux内核从rom设备解压到内存,然后程序指针跳转到内存中内核的起始位,Linux内核继续完成剩下的系统引导。内核重新初始化系统后,会加载根文件系统并运行用户应用程序。图2是开发系统的硬件设计框图。

硬件平台的核心处理器是S3C2410X,微处理器是基于三星为手持设备设计的ARM7TDMI内核的低功耗、高集成度微处理器。为了降低系统总成本,减少外围设备数量,该芯片还集成了:16 KB指令缓存、16 KB数据缓存、MMU、外部存储控制器、LCD控制器(STN和TFT)、NAND Flash控制器、4个DMA通道、3通道UART、1个12C总线控制器和1个I2S总线控制器。以及4通道PWM定时器和1个内部定时器、通用I/o口、实时时钟、8通道10位ADC和触摸屏接口、USB主机、UsB从机、SD/MMC卡接口等。该处理器广泛应用于PDA、移动通信、路由器、工业控制等领域。

软件系统设计必须与硬件平台紧密结合。S3C2410采用NAND Flash作为整个系统的程序存储区。系统启动时,通过片上ROM的boot loader程序加载并执行来自NAND Flash的外部引导程序,实现整个系统的启动步骤。整个软件系统采用图3所示的设计结构。

2 madplay MP3播放器移植。

2.1系统零件代码。

madplay主程序头文件信息数据结构如下:

2.2安装和编译。

该系统需要Madplay源代码、libid3tag库和libmad库。这里用的是madplay-0.15.1b.tar.gz、libid3tag-0.15.1b.tar.gz和libmad-0.15.1b.tar.gz。此外,libid3tag库在编译时需要zlib库。将文件复制到/home/cvteeh/jx2410/examples。安装后的目录是:

其中,安装目录是libid3tag和libmad库安装后的安装目录,madplay在编译时必须正确指定该目录下的include和lib子目录作为其include搜索目录和库文件搜索目录;Libid3tag-0.15.1b是Libid3tag库的源代码目录;Mad-0.15.1b是libmad库的源代码目录;Libz是li-bz库的安装目录,编译libid3tag库时使用;Madplay-0.15.1b是Madplay源程序目录;MK是编译脚本。

在此目录中直接执行以下语句:

[root@localhost madplay]#。/mkall

该脚本将编译libid3tag库、libmad库和madplay。编译成功后在madplay-0.15.1b目录下生成的madplay文件就是MP3播放器程序。

成功编译后,将在madplay目录中生成一个mplayer文件,它是一个mplayer媒体播放器:

[root @ localhost madplay-0 . 15 . 1 b]# CP madplay/tftpboot

下载并运行。启动ARM9 Linux平台,使用u盘中的MP3音频文件zgl.mp3,系统使用该文件进行测试:

将耳机插入SPK座椅,如果正常,你会听到歌声。

三层媒体播放器的移植。

Mplayer只支持16 bpp以上的图形显示,不支持8 bpp。因此,当mplayer程序在LCD配置为STN的教学系统中运行时,它只能播放声音而不能播放图形,而当LCD配置为TFT时,它可以同时播放声音和图形。

以下是音频和视频同步代码。

安装和编译结果如下:

MPlayer-0.93目录:mkall中有一个脚本文件,是编译脚本。直接在此目录中执行:

[root@localhost MPlayer-0.93]#。/mkall

该脚本将配置和编译mplayer。以下是该脚本的配置和编译命令:

编译成功后,会在mplayer-0.93目录下生成一个MPlayer文件,这是一个MPlayer媒体播放器。

[root @ localhost MPlayer-0.93]# CP MPlayer/tftpboot

下载并运行。启动ARM9 Linux平台,在u盘中用mpeg视频进行测试。

将耳机插入SPK座椅,观察液晶显示屏。测试系统是否有音频和视频输出。

12下一页全文。

标签:

版权声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢您的支持与理解。