赞
踩
我的板子是基于ARM926EJ-S处理器的,操作系统内核是linux-2.6.24,然后在Ubuntu 8.04编译了madplay,
再将madplay可执行文件下载到目标板的/bin目录下,将libmad.so.0库文件下载到目标板的/lib目录下,
通过Ubuntu 8.04终端的串口调试命令minicom建立与目标板的连接,
然后执行播放一个mp3文件的命令,比如:madplay A.mp3.音乐是播放出来了,效果也还可以,但是madplay会一直播放这首哥,什么命令都输不进去,包括停止不了,暂停不了,就是把Ubuntu 8.04的命令行终端关闭了,目标板也还会一直播放,除非把目标板的电源关了才能关闭这首歌。 怎样才能实现关闭或者暂停madplay啊?还有我想用madplay来调节音量,不知道要用什么命令或者什么程序?
高手帮帮我啊,我是Linux菜鸟啊,刚学习Linux不到半个月。
拜托了。
先谢谢大家。
|
p or SPACE pause movie (press any key to continue)
q or ESC stop playing and quit program
+ or - adjust audio delay by +/- 0.1 second
o cycle OSD mode: none / seekbar / seekbar + timer
* or / increase or decrease PCM volume
看mplayer 源码.
|
它还需要libmad 和libid3tag 两个库, 从该网站找到下载连接
http://sourceforge.net/project/showfiles.php?group_id=12349
这样我们就得到了移植madplay 所需要的关键的三个文件:
madplay-0.15.2b.tar.gz
libmad-0.15.1b.tar.gz
libid3tag-0.15.1b.tar.gz
这里有splay_fp版本的。
madplay也可以播放的,libmad是定点运算的。播放很流畅。
如果采用madplay,需要libmad, libid3tag, zlib等。
configure
1.
编译zlib 因为libid3tag需要这个库
./configure --prefix=/usr/local/arm/2.95.3/arm-linux
修改Makefile
AR=/usr/local/arm/2.95.3/bin/arm-linux-ar
CC=/usr/local/arm/2.95.3/bin/arm-linux-gcc
RANLIB=/usr/local/arm/2.95.3/bin/arm-linux-ranlib
最后AR 命令要添加rcs,否则出错
make
make install
2.
编译libid3tag
./configure --host=arm-linux CC=arm-linux-gcc --disable-debugging --disable-shared --prefix=/usr/local/arm/2.95.3/arm-linux
make
make install
3.
编译libmad
./configure --enable-fpm=arm --host=arm-linux --disable-shared --disable-debugging --prefix=/usr/local/arm/2.95.3/arm-linux CC=arm-linux-gcc
make
make install
4.
编译madplay
./configure --host=arm-linux CC=arm-linux-gcc --disable-debugging --disable-shared
make
但是,这样得到的是动态连接的。
rm madplay
拷贝make的最后一个连接的命令,在最后加上-static,然后运行,得到静态连接的程序
OK
|
madplay --help
你说的这些基本有快捷键的,源码里也可以自己定义
改声声音大小,看你用的声卡接口是oss或者alsa都有相应的shell命令控制,网上也有声音大小的接口控制,madplay中也有的
|
调节音量是标准接口,跟madplay没关系,madplay的主要工作是解码。
#define BASE_VALUE 257
int fd = open("/dev/mixer",O_RDWR);
int v = BASE_VALUE*50;
ioctl(fd,MIXER_WRITE(0),&v);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。