v3S移植mplayer播放器

一、前言

mplayer播放器非常好用,奈何buildroot2019这个版本没有(好像2018.2之后就都没有,升级为mpv了好像,但是这个mpv不会用),这里就自行编译(虽然麻烦一点,但是还是得用啊)

二、移植 zlib 库

mplayer 用到了 zlib 库,因此要先移植 zlib 库。zlib 源码下载地址为:http://zlib.net/
下载压缩包拷贝到ubuntu下并解压

tar -vxzf zlib-1.2.11.tar.gz  //解压

在这里插入图片描述
解压完成以后得到一个名为“zlib-1.2.11”的 zlib 源码文件。另外新建一个名为“zlib”的文件夹来保存 zlib 的编译结果。进入 zlib 源码目录,然后配置并编译,命令如下

cd zlib-1.2.11/ //进去 zlib 源码
CC=arm-linux-gnueabihf-gcc  LD=arm-linux-gnueabihf-ld  AD=arm-linux-gnueabihf-as ./configure --prefix=/home/luatao/linux/tool/zlib 
make  
make install

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

执行完毕之后在zlib文件夹下

在这里插入图片描述
将图中的lib目录下的zlib库文件拷贝到开发板根文件系统的/lib目录下,命令为:

sudo cp lib/* /home/luatao/linux/nfs/rootfs/lib/ -rfa

三、移植 mplayer

mplayer 需要用到 alsa-lib 和 zlib,因此要先保证这两个已经交叉编译了。

解压

tar -vxzf MPlayer-1.4.tar.gz //解压

在这里插入图片描述
解压完成以后得到一个名为“MPlayer-1.4”的 mplayer 源码文件。另外新建一个名为“mplayer”的文件夹来保存 mplayer 的编译结果。进入 mplayer 源码目录,然后配置并编译,命令如下:

cd MPlayer-1.4/  //进去 mplayer 源码
./configure --cc=arm-linux-gnueabihf-gcc --host-cc=gcc --target=arm-linux-gnueabihf --disable-ossaudio --enable-alsa --prefix=/home/luatao/linux/tool/mplayer --extra-cflags="-I/home/luatao/linux/tool/zlib/include  -I/home/luatao/linux/tool/alsa-lib/include"  --extra-ldflags="-L/home/luatao/linux/tool/zlib/lib  -Iz  -L/home/luatao/linux/tool/alsa-lib/lib -lasound" --enable-fbdev --disable-mencoder
make 

–extra-cflags 指定 zlib 和 alsa-lib 的头文件路径,–extra-ldflags 指定 zlib 和 alsa-lib 的库文件路径。

在这里插入图片描述
执行make需要等待一段时间 11:20-11:30 大概十分钟
在这里插入图片描述
编译完成以后打开 config.mak 文件,找到“INSTALLSTRIP = -s”这一行,取消掉后面的“-s”,否则“make install”命令会失败!结果如图 所示:
在这里插入图片描述
修改完成以后使用“sudo make install”安装,

在这里插入图片描述
安装完成以后 mplayer 目录内容如图所示
在这里插入图片描述
图中的 bin 目录下有一个叫做“mplayer”的可执行文件,这就是我们需要的 mplayer播放器!将其拷贝到开发板根文件系统的/bin 目录下,命令为:

sudo cp bin/mplayer /home/luatao/linux/nfs/rootfs/bin/ -f

至此,mplayer 移植就已经完成了,接下来就是使用 mplayer 播放音视频。

四、 mplayer使用

1. mplayer 播放音频

输入“mplayer -h”即可查看帮助信息。
在这里插入图片描述
mplayer 播放歌曲很简单,不限歌曲格式,“mplayer+歌曲名”即可,比如:

在这里插入图片描述
播放MP3格式的
在这里插入图片描述
因为内核没有设置中文,可能有乱码,但是功能不影响。
播放过程中我们可以通过键盘控制播放器,常用的控制方法如下:

9 :减小音量。
0:增大音量。
左键:倒退 10 秒
右键:快进 10 秒
上键:快进 1 分钟
下键:倒退 1 分钟
空格:暂停和播放

如果 mplayer 音量已经调到最大了,但是耳机音量依旧很小的话请使用 amixer 调大声卡最大音量。

2. mplayer 播放视频

视频播放的方法和音频一样, “mplayer+视频名”即可,但是这样的话视频不是居中播放的,我们可以加入“-fs”参数让视频居中播放。

输入如下命令播放视频:

mplayer Badapple.mp4 -fs //居中播放视频
# ls
Badapple.mp4  liudehua.wav  nuannuan.mp3  pic.jpg       tmp.wav
digitalclock  meian.mp3     nvfuma.mp3    record.wav
# mplayer Badapple.mp4 -fs
MPlayer 1.4-6.3.1 (C) 2000-2019 MPlayer Team

Playing Badapple.mp4.
libavformat version 58.27.102 (internal)
libavformat file format detected.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xb9c7b0]Protocol name not provided, cannot determine if input is local or a network protocol, buffers and access patterns cannot be configured optimally without knowing the protocol
[lavf] stream 0: audio (aac), -aid 0, -alang eng
[lavf] stream 1: video (h264), -vid 0
VIDEO:  [H264]  320x240  24bpp  29.970 fps  619.6 kbps (75.6 kbyte/s)
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 58.51.100 (internal)
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
Clip info:
 major_brand: mp42
 minor_version: 19529854
 compatible_brands: mp42isom
 creation_time: 2021-05-29T17:19:43.000000Z
Load subtitles in ./
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 2 ch, floatle, 128.0 kbit/4.17% (ratio: 16002->384000)
Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4 Audio))
==========================================================================
AO: [alsa] 48000Hz 2ch floatle (4 bytes per sample)
Starting playback...
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
[swscaler @ 0xdf4290]bicubic scaler, from yuv420p to bgra using C
[swscaler @ 0xdf4290]No accelerated colorspace conversion found from yuv420p to bgra.
[swscaler @ 0xdf4290]using unscaled yuv420p -> bgra special converter
VO: [fbdev] 320x240 => 320x240 BGRA  [fs]
framebuffer too small for double-buffering, disabling
A:   1.5 V:   1.5 A-V: -0.000 ct: -0.000   0/  0 10%  7%  4.0% 0 0

播放效果
还是很流畅的,不知道播放高分辨率的怎么样。
在这里插入图片描述

到此就完成了mplayer的移植。

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值