0 1 mplayer简介
mplayer是一款开源多媒体播放器,以gnu通用公共许可证发布。它资源占用率低,无论是音频还是视频方面,支持的格式相当全面,支持的输出设备也很多,可以在各种主流操作系统中使用。
移植环境:Ubuntu12
开发板:迅为i.MX6Q(别的开发板也可以)
编译器:arm-none-linux-gnueabi-gcc(4.4.1)
准备库:libmad-0.15.1b、alsa-lib-1.0.22、MPlayer-1.0rc3
0 2 交叉编译libmad
移植mplayer之前要先移植libmad库。libmad-0.15.1b的编译非常简单,我们直接在libmad这个文件目录下我们创建一个脚本,然后输入以下代码并执行这个脚本
#!/bin/sh
./configure \
--prefix=/usr/local/mplayerlibexit \
--enable-fpm=arm \
--host=arm-linux \
--disable-debugging \
--enable-shared \
--enable-static \
CC=arm-none-linux-gnueabi-gcc
exit
执行脚本成功以后,我们打开Makefile,找到-fforce-mem,然后删除他,如下图所示:
最后我们保存退出,直接make,make install就可以直接编译和安装了。安装成功如下图所示:
0 3 交叉编译alsa
我们直接在alsa这个文件目录下我们创建一个脚本,然后输入以下代码并执行这个脚本:
#!/bin/sh
./configure \
--host=arm-linux \
CC=arm-none-linux-gnueabi-gcc \
--enable-shared \
--disable-python \
--prefix=/usr/local/mplayerlib
exit
配置完Makefile文件以后,然后依次使用make和make install就可以啦。
0 4 交叉编译MPlayer
我们直接在MPlayer这个文件目录下我们创建一个脚本,然后输入以下代码并执行这个脚本:
#!/bin/sh
./configure \
--prefix=/usr/local/Mplayer \
--disable-mencoder \
--disable-live \
--disable-mp3lib \
--disable-win32dll \
--disable-dvb \
--disable-dvdread \
--disable-dvdnav \
--disable-dvdread-internal \
--disable-tv \
--disable-ivtv \
--enable-fbdev \
--disable-sdl \
--cc=arm-none-linux-gnueabi-gcc \
--host-cc=gcc \
--target=arm-linux \
--enable-mad \
--enable-alsa \
--enable-cross-compile \
--enable-armv5te \
--extra-cflags="-I/usr/local/mplayerlib/include -I/usr/local/mplayerlibexit/include" \
--extra-ldflags="-L/usr/local/mplayerlib/lib -L/usr/local/mplayerlibexit/lib"
exit
配置完Makefile之后,我们打开config.mak,找到里面的INSTALLSTRIP,删掉后面的-s,如下图所示:
修改完成以后,依次使用make和make install就可以啦。编译成功如下图所示:
然后我们在bin文件夹下就可以看到我们想要的播放器啦。
测试
将编译生成的mplayer和测试文件test.mp4和miss.mp3拷贝到开发板,启动开发板,连接耳机。
使用以下命令测试播放音频。
./mplayer /root/Documents/miss.mp3
使用以下命令测试播放视频,测试视频的时候要连接显示屏。
./mplayer -fs -zoom -x 480 -y 272 test.mp4
如下图所示:
好物推荐-IMX6Q开发板
迅为IMX6Q板卡有工业级和商业级俩种版本,连接类型有邮票孔和连接器俩种。并且在轨道交通,电器设备,控制工业,车载电脑等领域均有批量应用,均高稳定呈现。提供终身技术支持,超长生命周期,产品无忧~
|