文章目录

  • 一、前言
  • 二、移植 zlib 库
  • 三、移植 mplayer
  • 四、 mplayer使用
    • 1. mplayer 播放音频
    • 2. 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 TeamPlaying 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: mp42minor_version: 19529854compatible_brands: mp42isomcreation_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的移植。

v3S移植mplayer播放器相关推荐

  1. linux mplayer_移植mplayer播放器到EK200开发板的步骤浅析

    mplayer是一款开源多媒体播放器,以gnu通用公共许可证发布 此款软件可在各主流操作系统使用,一方面它资源占用率低:另一方面,无论是音频还是视频方面,它支持的格式相当全面,能支持播放大部分的音频. ...

  2. linux mplayer_移植mplayer播放器到MY-IMX6-EK200开发板的步骤浅析

    mplayer是一款开源多媒体播放器,以gnu通用公共许可证发布. 此款软件可在各主流操作系统使用,一方面它资源占用率低:另一方面,无论是音频还是视频方面,它支持的格式相当全面,能支持播放大部分的音频 ...

  3. mplayer播放器,没有声音.

    昨晚,我试了一下CentOS下安装的mplayer播放器,能看到时间在走,就是没有声音. 在网上找到许多朋友也遇到类似的问题.他们的解决方法是: $ mknod /dev/dsp c 14 3 $ c ...

  4. mplayer播放器

    #一.mplayer播放器 https://gitee.com/qianzhen1997/linux_learning/tree/master/mymplayer ##码云链接 ##在Linux下,通 ...

  5. linux mplayer 编译,linux下源码安装mplayer播放器

    最近学习了build源码安装软件,老师布置的习题,用所学过的知识安装mplayer播放器.通过上网我了解到在linux系统下,mplayer播放器十分强大好用.但是,在安装的过程中遇到了很多问题,比如 ...

  6. 安装MPlayer播放器(号称Linux中的万能播放器)

    来源: ChinaUnix博客 日期: 2008.09.18 18:48 (共有条评论) 我要评论                                                   ...

  7. CentOS7 下源码安装MPlayer播放器

    最近学习了build源码安装软件,老师布置的习题,用所学过的知识安装mplayer播放器.通过上网我了解到在linux系统下,mplayer播放器十分强大好用.但是,在安装的过程中遇到了很多问题,比如 ...

  8. 10016.Linux下安装mplayer播放器

    Red Hat 9:Linux下安装mplayer播放器(zz from http://blog.csdn.net/lastking/) mplayer是linux下播放速度最快(正确安装了显卡驱动) ...

  9. 安装 Linux -Mplayer 播放器

    买了2209,为老高清,逼我再次安装这个该死的播放器 官方([url]http://www.mplayerhq.hu/design7/dload.html[/url]) 网上的淫民不晓得浪个的,介绍方 ...

  10. android平台移植ffmpeg 播放器

    引用:http://blog.csdn.net/ouyangtianhan/article/details/7943543 IT行业是一个踩在巨人肩膀上前进的行业,否则做的事情不一定有意义,所以我也是 ...

最新文章

  1. Python学习全家桶,Python初学者十一个热门问题
  2. 理解Kalman滤波的使用
  3. SSH框架是个怎么回事?(转)
  4. WebSocket FlashSocket
  5. STL源码剖析---空间配置器
  6. SAP ABAP实用技巧介绍系列之 How is configuration data loaded
  7. java中二叉树_java后端学习路线
  8. websocket的加密和解密过程
  9. java基于jxl.jar包生成Excel文件到指定目录和服务器下载两种模式的使用方法
  10. Facebook开发地面技术扩大互联网连接
  11. Android在Android.mk里添加TAG
  12. 说明 RISC 和 CISC 指令系统的区别?
  13. [转]MapX 操作总结
  14. linux php 集成安装,1.2.2 XAMPP-Linux版PHP集成化安装包
  15. 三页搞定GB2818/SIP/RTP、PS封装
  16. linux系统制作qcow2,oz制作qcow2镜像
  17. 第一次暑假实习面试,进入二面就算成功(没有成功)
  18. 设计技巧之:LOGO色彩搭配
  19. 对WEB应用的粗浅理解
  20. 我的世界 1.12.2 Idea 开发包构建教程

热门文章

  1. 时间触发协议(Time triggered protocol)概述
  2. JAVA版12306抢票工具
  3. 命令提示符之常用命令
  4. 吴恩达老师深度学习课程完整笔记
  5. KMP(看毛片)NEXT数组模板
  6. BladeX框架源码分析--00、包结构
  7. 玩转aws之(二)eks 设置efs(nfs)存储卷pvc
  8. AWS EFS vs EBS vs S3(差异和何时使用?)
  9. [论文评析]Long-Tail Learning via Logit Adjustment,ICLR,2021
  10. 学习笔记(05):mySQL数据库开发教程-域完整性-默认值约束