Linux----Mplayer音视频库的移植

想要播放视频音乐就得移植相关库到板子上

Mplayer移植需要依赖以下源文件:(从官网获取或者网上)

1、zlib-1.2.3.tar.gz   :通用的内存空间的压缩库。

2、libpng-1.2.57.tar.gz :png格式图片的压缩或解压库

3、Jpegsrc.v9b.tar.gz :  jpeg格式图片的压缩或解压库

4、alsa-lib-1.1.0.tar.bz2 :alsa音频库--处理声音的

5、fftw-3.3.4.tar.gz:  傅里叶变换库--算法库

6、MPlayer-1.3.0.tar.gz:Mplayer音视频播放源码

//1、zlib-1.2.3.tar.gz   :通用的内存空间的压缩库。

以下三步:(其他5个库也一样)

①configure配置:(在ubuntu上 该解压后的库的目录路径下的终端上运行以下代码)

CC=aarch64-linux-gnu-gcc  \

./configure --prefix=/home/edu118/rk3399/rk/xiangmu/install \

 --libdir=/home/edu118/rk3399/rk/xiangmu/install/lib  \

   --includedir=/home/edu118/rk3399/rk/xiangmu/install/include  \

 --shared

②配置完后再make -j8编译一下

③再make install -j8 运行一下动态文件

//2、libpng-1.2.57.tar.gz :png格式图片的压缩或解压库

./configure  --prefix=/home/edu118/rk3399/rk/xiangmu/install  \

CC=aarch64-linux-gnu-gcc  --host=aarch64-linux-gnu  \

--enable-shared  --enable-static  \

CPPFLAGS=-I/home/edu118/rk3399/rk/xiangmu/install/include  \

LDFLAGS=-L/home/edu118/rk3399/rk/xiangmu/install/lib   \

LIBS=-lz

//3、libjpeg源码包移植

./configure --prefix=/home/edu118/rk3399/rk/xiangmu/install  \

CC=aarch64-linux-gnu-gcc  --host=aarch64-linux-gnu  \

--enable-shared  --enable-static

//4、fftw源码包移植  ---傅里叶变换算法

./configure --prefix=/home/edu118/rk3399/rk/xiangmu/install  \

CC=aarch64-linux-gnu-gcc  --host=aarch64-linux-gnu  \

--enable-shared  --enable-static

//5、alsa-lib源码包移植(音频库)

./configure --prefix=/home/edu118/rk3399/rk/xiangmu/install  \

CC=aarch64-linux-gnu-gcc  --host=aarch64-linux-gnu  \

--disable-python

//6、Mplayer源码包移植---开发--需要使用的对应库API函数

./configure --prefix=/home/edu118/rk3399/rk/xiangmu/install  \

 --cc=aarch64-linux-gnu-gcc  --host-cc=gcc \

 --target=aarch64-linux-gnu \

 --enable-cross-compile  --enable-fbdev \

 --enable-png  --enable-jpeg  --enable-alsa --enable-ossaudio \

 --disable-x264-lavc --disable-freetype --disable-fontconfig \

 --extra-cflags="-I/home/edu118/rk3399/rk/xiangmu/install/include  -DHAVE_ARMV8=0"  \

 --extra-ldflags="-L/home/edu118/rk3399/rk/xiangmu/install/lib/"  \

 --extra-libs="-lasound -ljpeg -lpng"  2>&1 |tee logfile

//configure配置好了后,make -j8 编译的时候出现了错误,需要修改config.mak文件,删除第33行的 ‘ -s '

Mplayer播放(在超级终端运行)

  1. mplayer播放器简单启动测试(第一种方法)
  2. 在开发板串口终端进行播放视频测试

参数说明:

rotate=1   参数表示把屏旋转90度,可根据播放的视频尺寸关系决定是否旋转

-vo fbdev2 表示指定使用framebuffer设备显示---就是LCD设备/dev/fb0(屏幕的节点)

-ao alsa    表示使用 alsa 子系统输出声音

以下是在开发板串口终端执行的启动播放器命令(哪一条都可以),请直接复制粘贴到串口终端上执行:

下面的命令,将目前所遇到的所有情况,全部列举出来。

1)旋转90度,注意,旋转后原来的LCD屏w和h就调换了。

mplayer -vo fbdev2 -ao alsa -vf rotate=1  xm.mpg

转换完之后,x轴会变成y轴

2)放置视频在屏幕的位置---把视频放到屏幕的任意位置

mplayer -vo fbdev2 -ao alsa -geometry 0:0  xm.mpg

3)然后指定 x,y 尺寸播放视频,随意修改尺寸

mplayer -vo fbdev2 -ao alsa -zoom -x 800 -y 1280  xm.mpg

4)等比例比例缩放

mplayer -slave  -quiet  -vo fbdev2 -ao alsa -vf scale=480:-3 -sws 9  video.mp4

参数:说明等比例比例缩放

-vf scale=480:-3 -sws 9 :变换至480像素宽,高度按比例缩放

mplayer -vo fbdev2 -ao alsa -geometry 0:0 -vf scale=200:-3 -sws 9 qnzl.mp4

任意比例播放:

注意:

可以在ubuntu下创两个文件

build文件下:放解压后的库的源码

Install文件下:放配置安装的路径 所以的动态库都放在一起

然后install文件夹下创建 lib  include文件 编译生成的头文件放include里

CPPFLAGS=-I/home/huzhiyuan/work/ddd/Mplayer_install/include  \

LDFLAGS=-L/home/huzhiyuan/work/ddd/Mplayer_install/lib   \

l---链接   z---zlib这个库  LIBS---是Makefile里面的变量

最后将bin lib 文件发送给板子(超级终端上)

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 17:00:04       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 17:00:04       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 17:00:04       58 阅读
  4. Python语言-面向对象

    2024-07-17 17:00:04       69 阅读

热门阅读

  1. Vue 接口用FormData() 提交数据

    2024-07-17 17:00:04       26 阅读
  2. 把关键字当作列名 不报错的方法 (数据库)

    2024-07-17 17:00:04       19 阅读
  3. 图论建模技巧搜集

    2024-07-17 17:00:04       20 阅读
  4. 【仿真建模-anylogic】数据源组件

    2024-07-17 17:00:04       16 阅读
  5. 【14】水仙花数

    2024-07-17 17:00:04       18 阅读
  6. vue3项目,管控部分路由仅管理员可见

    2024-07-17 17:00:04       18 阅读