【OK210试用体验】之(6)制作本地mp3播放器 - 在线问答 - 电子技术论坛 - 最好最受欢迎电子论坛!

【OK210试用体验】之(6)制作本地mp3播放器

本次来教大家制作一个简易mp3播放器。
在linux环境下制作mp3播放器我能想到的有如下2种办法
方法一:交叉编译移植开源软件如madplayer、mplayer到板子上。然后基于按键、显示屏做人机交互,通过解析人机交互的情形来调用相关API。
方法二:自己从驱动层做起,声卡驱动->Advanced Linux Sound Architecture->然后做应用层调用API。在这种方法中也需要对文件格式的解析,比如MP3、FLAC等。这方面又离不开libmad、libflac等库的支持。
其实仔细分析的话,我们想简单快速做出项目的话还是选用现成的解决方案较好,毕竟我们自己搭建的方案可能会出现不稳定的情况。因此我选择了方案一去做我的项目。
下面开始讲解怎么移植madplayer这个开源软件到我们的板子上。
首先我们需要准备如下几个包:libid3tag-0.15.1b.tar.gz、libmad-0.15.1b.tar.gz、madplay-0.15.2b.tar.gz、zlib-1.2.3.tar.gz。准备完毕后就可以进行下一步了。
接着建立一个madplayer的文件夹,文件夹存放以上几个包的解压缩以后的文件。并建立libz文件夹用来存放生成的文件。

下面开始编译zlib,因为编译libid3tag需要用到。
先./configure --prefix=/home/wang/madplayer/libz。生成Makefile文件,
再修改(不能跟上面的步骤调转)makefile文件:
CC=/usr/local/arm/4.3.2/bin/arm-linux-gcc
AR=/usr/local/arm/4.3.2/bin/arm-linux-ar rcs
RANLIB=/usr/local/arm/4.3.2/bin/arm-linux-ranlib
注:如果之前编译过,则先要把上次编译的结果清除:make distclean
接着 make
然后make install
编译好之后就可以在上面prefix指定的目录下的lib目录下找到libz.a这个库。
编译libid3tag
./configureCC=/usr/local/arm/4.3.2/bin/arm-linux-gcc --prefix=/home/wang/madplayer/libz--host=arm-linux --disable-shared CPPFLAGS=-I/home/wang/madplayer/libz/include     LDFLAGS=-L/home/wang/madplayer/libz/lib
解释:CC后 的参数为交叉编译器的绝对路径,--prefix后指定的是安装目录,CPPFLAGS、LDFLAGS
后的-I、-L为固定形式,之后的路径为安装libid3tag的路径下的子目录。然后make, make install
接下来编译libmad
./configureCC=/usr/local/arm/4.3.2/bin/arm-linux-gcc --prefix=/home/wang/madplayer/libz--host=arm-linux --disable-shared CPPFLAGS=-I/home/wang/madplayer/libz/include     LDFLAGS=-L/home/wang/madplayer/libz/lib
然后make make install。
最后开始编译madplay
    ./configure CC=/usr/local/arm/4.3.2/bin/arm-linux-gcc--prefix=/home/wang/madplayer/libz --host=arm-linux --disable-shared CPPFLAGS=-I/home/wang/madplayer/libz/include     LDFLAGS=-L/home/wang/madplayer/libz/lib
最后make一下,就得到了可执行文件madplay。
我们通过u盘、sd卡等存储设备将madplay拷贝到板子上/bin目录下,执行madplay xxx.mp3即可听到优美的音乐了。

这样我们就制作成了一个简易的mp3播放器,由于没有屏幕的支持,因此界面神马的跟我们没有关系了。我们只好通过串口终端观察输出的信息了。

libid3tag-0.15.1b.tar.gz

330.22 KB, 下载次数: 1, 下载积分: 积分 -1 分

libmad-0.15.1b.tar.gz

490.6 KB, 下载次数: 1, 下载积分: 积分 -1 分

madplay-0.15.2b.tar.gz

577.08 KB, 下载次数: 1, 下载积分: 积分 -1 分

zlib-1.2.3.tar.gz

484.96 KB, 下载次数: 1, 下载积分: 积分 -1 分

1个回复

HelloWii 发表于 2015-9-14 13:27:40
感谢楼主的分享。。。
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /6 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 湘ICP备2023018690号 )

GMT+8, 2024-4-20 06:16 , Processed in 1.762716 second(s), Total 59, Slave 43 queries .

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表