为了帖子[慢更]小白探索如何使用V3s在线播放音乐 能够继续进行下去。
我没有明确的方向,先各方面玩一玩。这个帖子是在linux ubuntu下编译mad player,并播放音乐。
参考文章:构建嵌入式Linux应用系统 —— mp3播放器 madplay的移植
(1)拉取源码
ftp://ftp.mars.org/pub/mpeg/
从链接里下载一下三个源码包:
libid3tag-0.15.1b.tar.gz
libmad-0.15.0b.tar.gz
madplay-0.15.2b.tar.gz
(2)创建工作目录
mkdir /home/sinlinx/SIN-V3s/mad_player
(3)创建各版本输出目录
mkdir tarball src-x86 src-arm target-x86 target-arm
(4)上传源码进tarball
(5)解压源码
tar xzvf libid3tag-0.15.1b.tar.gz
tar xzvf libmad-0.15.0b.tar.gz
tar xzvf madplay-0.15.2b.tar.gz
(6)编译 madplay所依赖的库文件
a) libid3tag
#cd ../src-x86/libid3tag-0.15.1b
#./configure -prefix=/home/sinlinx/SIN-V3s/mad_player/target-x86
#make
#make install
b) libmad
#cd ../ libmad-0.15.1b
#./configure -prefix=/home/sinlinx/SIN-V3s/mad_player/target-x86
#make
#make install
编译libmad时候出现
cc1: error: unrecognized command line option “-fforce-mem”
解决方式是:找到libmad configure之后的Makefile,
删除 -fforce-mem
原因是gcc 3.4 或者更高版本,已经将其去除了,所以会出现上面的错误!
(7)编译安装 madplay
如果我们还是像刚才那样配置编译选项:
#cd madplay-0.15.2b
#./configure -prefix=/home/sinlinx/SIN-V3s/mad_player/target-x86
提示找不到mad.h头文件。出现这样的错误提示,是因为madplay依赖于libmad库,因此在配置madplay的时候,它会查找相关依赖库的头文件mad.h。因为我们之前已经编译并安装了依赖库,所以只需要根据提示设置 CPPFLAGS环境变量,指向mad.h头文件所在的位置即可。
#./configure -prefix=/home/sinlinx/SIN-V3s/mad_player/target-x86 CPPFLAGS=-I/home/sinlinx/SIN-V3s/mad_player/target-x86/include
提示找不到libmad库文件。出现这样的错误提示,是因为madplay依赖于libmad库,因此在配置madplay的时候,它会查找相关依赖库的库文件libmad.so。因为我们之前已经编译并安装了依赖库,所以只需要根据提示设置
LDFLAGS环境变量,指向libmad.so库文件所在的位置即可
#./configure -prefix=/home/sinlinx/SIN-V3s/mad_player/target-x86 CPPFLAGS=-I/home/sinlinx/SIN-V3s/mad_player/target-x86/include LDFLAGS=-L/home/sinlinx/SIN-V3s/mad_player/target-x86/lib
#make
#make install
(8)上传一个mp3文件到/home/sinlinx/SIN-V3s/mad_player/target-x86/bin目录。
(我的mp3文件命名为0001.mp3)
(9)在ubuntu上面播放测试madplayer是否能够工作
cd /home/sinlinx/SIN-V3s/mad_player/target-x86/bin
./madplay 0001.mp3
执行命令后,console上面输出内容如下:
MPEG Audio Decoder 0.15.2 (beta) - Copyright © 2000-2004 Robert Leslie et al.
Title: Tetris
Artist: CheetahMobile Games
Orchestra: CheetahMobile Games
Album: Rolling Sky OST
Track: 29
Comment: 163 key(Don't
modify):L64FU3W4YxX3ZFTmbZ+8/ZgOOJyVt636f0A43R5s34w/N/EwiWIaOfxUHrFg3D/M22zIla23pRDyjuXVCLS5X/ZvQzK6axrNQ8gWcDRKttQ5E3IHnFFfZNkcu3s7h5xu6T1giWpDOF7JQ+v5zZymuhXEEKJXDlvbvzCMXtWuc0tOqAFjB1LU8Bpn1KUMZfB4yc+OKKkh9RJYwYFAlPFxbnGgEw48aj1XbtIMqj1L4N90GxVZzb2UiXwC7Nq+LR3hEts1WHTw3VpwZNgfkJCk3AG+jptSFm1mr/bO6SwtthEfhcuiSRwdJPdkC00xAMqinwGKqW5vnFU31mV1xqM0JuwGInEmUNWYQMpNZP0GKJOumDCUST5+YLFBS42L00AsfaKz75jOamT5rDYPUgPLEsd3XK/Tt53wt4hscf+jekS9dUie90VDRxtghnEXkkaZn5B46TkKdSNLX160ISdbf6ywi4SypxwQOc9S/+QUi9s=
输出这样的内容,说明成功了,并且可以听到悦耳的音乐。
最近编辑记录 LinjieGuo (2021-01-08 10:23:50)
离线