mplayer的定点实现

来源:互联网 发布:python字符串查找 编辑:程序博客网 时间:2024/05/02 10:16

      今天完成了mplayer的交叉编译,并且成功了利用了采用定点运算的第三方库libmad库替代mplayer自有的mp3解码库,从而实现了音乐的流畅播放。       

 主要编译步骤为:       

 (1)编译libmad库。       首先解压libmad-0.15.1b.tar.tar        主要过程为:./configure --enable-fpm=arm --host=arm-linux --disable-shared --disable-debugging --prefix=/usr/local/mplayer CC=arm-linux-gcc         (其中/usr/local/mplayer为安装目录)        

 make        

 make install      

(2) 编译生成mplayer       首先解压MPlayer-1.0rc1.tar.bz2

配置:./configure --enable-cross-compile --cc=/usr/local/arm/3.3.2/arm-linux/bin/gcc --as=/usr/local/arm/3.3.2/arm-linux/bin/as --host-cc=gcc --target=arm-linux --with-extraincdir=/usr/local/arm/3.3.2/arm-linux/sys-include/:/usr/local/arm/3.3.2/lib/include --with-extralibdir=/usr/local/arm/3.3.2/arm-linux/lib:/usr/local/arm/3.3.2/lib/lib --enable-static --enable-ftp --enable-radio --enable-network --enable-libavutil --enable-libavcodec --enable-libavformat --enable-libavcodec_mpegaudio_hp --enable-mp3lib --disable-debug --disable-crash-debug --enable-alsa --disable-libfame --disable-mencoder --disable-gui --disable-largefiles --disable-linux-devfs --disable-termcap --disable-termios --disable-iconv --disable-langinfo --disable-lirc --disable-lircc --disable-joystick --disable-vm --disable-xf86keysym --disable-radio-capture --disable-radio-v4l2 --disable-tv --disable-tv-v4l1 --disable-tv-v4l2 --disable-tv-bsdbt848 --disable-pvr --disable-rtc --disable-winsock2 --disable-smb --disable-live --disable-dvdnav --disable-dvdread --disable-mpdvdkit --disable-cdparanoia --disable-bitmap-font --disable-freetype --disable-fontconfig --disable-unrarlib --disable-menu --disable-sortsub --disable-fribidi --disable-enca --disable-macosx --disable-maemo --disable-macosx-finder-support --disable-macosx-bundle --disable-inet6 --disable-gethostbyname2 --disable-vstream --disable-ass --disable-rpath --disable-gif --disable-png --disable-jpeg --disable-libcdio --disable-liblzo --disable-win32 --disable-qtx --disable-xanim --disable-real --disable-xvid --disable-x264 --disable-nut --disable-libpostproc --disable-libavutil_so --disable-libavcodec_so --disable-libavformat_so --disable-libpostproc_so --disable-tremor-internal --disable-tremor-low --disable-tremor-external --disable-libvorbis --disable-speex --disable-theora --disable-faad-external --disable-faad-internal --disable-faad-fixed --disable-faac --disable-ladspa --disable-libdv --enable-mad --disable-toolame --disable-twolame --disable-xmms --disable-liba52 --disable-libdts --disable-libmpeg2 --disable-musepack --disable-amr_nb --disable-amr_nb-fixed --disable-amr_wb --disable-vidix-internal --disable-vidix-external --disable-gl --disable-dga --disable-vesa --disable-svga --disable-sdl --disable-aa --disable-caca --disable-ggi --disable-ggiwmh --disable-directx --disable-dxr2 --disable-dxr3 --disable-ivtv --disable-dvb --disable-dvbhead --disable-mga --disable-xmga --disable-xv --disable-xvmc --disable-vm --disable-xinerama --disable-x11 --disable-xshape --disable-fbdev --disable-mlib --disable-3dfx --disable-tdfxfb --disable-s3fb --disable-directfb --disable-zr --disable-bl --disable-tdfxvid --disable-tga --disable-pnm --disable-md5sum --enable-ossaudio --disable-arts --disable-esd --disable-polyp --disable-jack --disable-openal --disable-nas --disable-sgiaudio --disable-sunaudio --disable-win32waveout --disable-select --disable-mmx --disable-mmxext --disable-3dnow --disable-3dnowext --disable-sse --disable-sse2 --disable-altivec --disable-fastmemcpy --disable-profile --disable-sighandler --disable-dynamic-plugins --with-extraincdir=/usr/local/arm/3.3.2/arm-linux/sys-include/:/usr/local/arm/3.3.2/lib/include:/usr/local/mplayer/include --with-extralibdir=/usr/local/arm/3.3.2/arm-linux/lib:/usr/local/arm/3.3.2/lib/lib:/usr/local/mplayer/lib --enable-ossaudio

其中extralibdir为库文件所在位置,extraincdir为头文件所在位置

make

之后将编译生成的mplayer可执行程序移植到arm板子上

运行./mplayer -ac mad file.mp3

注意必须有-ac mad 这是设置为mad库解码,如果没有则会默认为是mplayer自带的mp3解码库进行解码,会使播放非常不流畅。

参考网址为:

http://203.208.37.104/search?q=cache:NNYTA6sBM5EJ:www.avantech.com.cn/bbs/Thread.asp%3Ftid%3D309+mplayer+libmad&hl=zh-CN&ct=clnk&cd=16&gl=cn&st_usg=ALhdy2-XlcJTRiv-7qc3lXoZThvM4s-JXg

http://ys25.blogspot.com/2007/12/porting-mplayer-on-pxa270.html

http://203.208.37.104/search?q=cache:x6-yeoce0_EJ:linux.chinaunix.net/techdoc/desktop/2008/02/14/978306.shtml+mplayer+%E5%AE%9A%E7%82%B9%E8%BF%90%E7%AE%97&hl=zh-CN&ct=clnk&cd=4&gl=cn&st_usg=ALhdy283RwodLcCG6ZnpM4lKoFSBli3kww