|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
0 1 mplayer简介
6 j' L* ?1 P2 b, \5 W7 ~* I, J+ C mplayer是一款开源多媒体播放器,以gnu通用公共许可证发布。它资源占用率低,无论是音频还是视频方面,支持的格式相当全面,支持的输出设备也很多,可以在各种主流操作系统中使用。
- w4 P( e8 y( `& W6 B移植环境:Ubuntu125 g" j9 {! O9 N* x
开发板:迅为i.MX6Q(别的开发板也可以)
8 {" b4 K2 e2 ~4 u# R& Y编译器:ARM-none-linux-gnueabi-gcc(4.4.1)' l2 T' }$ i( q% g( f
准备库:libmad-0.15.1b、alsa-lib-1.0.22、MPlayer-1.0rc33 J" h/ w' \1 M9 M# i
9 j5 B$ ]5 l& x0 2 交叉编译libmad
( N* o; K1 w- E- F2 S 移植mplayer之前要先移植libmad库。libmad-0.15.1b的编译非常简单,我们直接在libmad这个文件目录下我们创建一个脚本,然后输入以下代码并执行这个脚本
, D' H+ G7 [5 W. W' O- W$ d
. g( z. j4 o! X4 S: C2 d! Q#!/bin/sh
0 a' W) Z& m6 q. A./configure \4 l7 v) n! l. u/ D- R+ b
--prefix=/usr/local/mplayerlibexit \
$ x* c9 a+ Z6 z( K4 b; P--enable-fpm=arm \8 F. H. m# q% m: G7 [
--host=arm-linux \
; Z7 w% F3 n, I5 P% E--disable-debugging \
! @; ~ _1 w, A7 v--enable-shared \) n& \& H( a5 |1 f2 ?9 z
--enable-static \
' o( I8 k; {2 ?/ gCC=arm-none-linux-gnueabi-gcc
p; X) x1 a F. ^; L/ y# R5 |exit- d4 s: W# a# a! I/ O6 B G& W/ ]( z
r! D) l9 ?% V4 |执行脚本成功以后,我们打开Makefile,找到-fforce-mem,然后删除他,如下图所示: c; w/ G! \. T: k8 ^
/ a' a' ` z0 \- R. _0 b
最后我们保存退出,直接make,make install就可以直接编译和安装了。安装成功如下图所示:! D1 n5 [; v/ s6 w
4 I0 E1 v9 K3 P* u
: Z9 r4 }9 P9 _0 3 交叉编译alsa
6 R2 C1 b7 h% {* e 我们直接在alsa这个文件目录下我们创建一个脚本,然后输入以下代码并执行这个脚本:
1 r$ N; q( Y" l; Q: S _#!/bin/sh
/ m1 s) `# A4 z9 X./configure \9 l; N4 j9 ?8 N4 j Q
--host=arm-linux \: s: J+ L) E/ h L& ^; f. i% V
CC=arm-none-linux-gnueabi-gcc \! G1 g- ~- c W Y# {- D5 c
--enable-shared \
7 l" I' a- T5 i% e* f% }$ H+ X--disable-python \
0 Q0 @6 Q' y$ D7 a* a- t) k( r--prefix=/usr/local/mplayerlib
) u7 N: P5 v7 V: T* N( ?exit
5 }1 c/ A2 O7 }6 g1 B% M2 ~% o/ s1 y( B# Z7 R" {- o9 [' P: _% Z
配置完Makefile文件以后,然后依次使用make和make install就可以啦。
$ [0 |7 ?$ D' N' J; F0 4 交叉编译MPlayer+ f; G# d9 w+ `7 z u+ I {, S7 b
我们直接在MPlayer这个文件目录下我们创建一个脚本,然后输入以下代码并执行这个脚本:
& j6 G& X" H4 E4 G+ C" K$ Z#!/bin/sh
" w# _" Q8 E1 {8 G./configure \
; {9 o1 b4 F$ b/ D% V# K" n$ x--prefix=/usr/local/Mplayer \
p1 M1 ~8 K1 d. k+ ]--disable-mencoder \
' E& B& s) }0 {$ n2 x--disable-live \+ G% d8 z: w* F# K
--disable-mp3lib \1 F$ P$ y1 Q3 n- o! d% g- Z/ d1 B
--disable-win32dll \
. x2 c/ U N8 w--disable-dvb \1 I$ E+ Y. P4 @& V: E' \7 Q* [4 {$ a
--disable-dvdread \
( U" Y% A+ _) q& ~. F--disable-dvdnav \
' W( ^! e6 b* ^6 S) _--disable-dvdread-internal \: y4 b5 H7 c1 l d
--disable-tv \5 a3 q0 o, m: l! ~! D9 i I+ q
--disable-ivtv \
, Y* ?+ w5 J) _! t: ?2 y- q' ], ^--enable-fbdev \
- J- Y* G' C L0 C* r--disable-sdl \
o4 u; j+ S( `( l5 H! S' J--cc=arm-none-linux-gnueabi-gcc \
0 h$ X! |) y0 s, E! X--host-cc=gcc \
# [9 u5 {* m+ j: \9 U- h1 H3 c7 B4 ?--target=arm-linux \# n- C$ ?* ^7 ^* P% Q) h; p. O
--enable-mad \
8 B7 ?2 v1 V' Y( n; N% R$ E+ {% B--enable-alsa \- q, Y6 e6 g% R0 D: ]
--enable-cross-compile \- n5 C' i* j1 q; K+ c( ^" Z( N
--enable-armv5te \
0 C' ~+ r8 c5 L' c1 d u9 a3 ^6 P2 ^" C--extra-cflags="-I/usr/local/mplayerlib/include -I/usr/local/mplayerlibexit/include" \
" p& ~, K- L: U& @9 e4 ^/ v--extra-ldflags="-L/usr/local/mplayerlib/lib -L/usr/local/mplayerlibexit/lib" 9 I5 N. O* m- D; [( G
exit
1 ?1 w! |$ f+ {) _% R/ Y2 ]8 p7 E1 B" c- Q' Y) o
配置完Makefile之后,我们打开config.mak,找到里面的INSTALLSTRIP,删掉后面的-s,如下图所示:
& y q" h" y* M5 L# O! C& P
! L/ @4 j1 y/ B q0 }* F7 o修改完成以后,依次使用make和make install就可以啦。编译成功如下图所示:
9 T8 R$ g+ i9 J9 e: o% t
, ]8 h0 B+ P* j3 m' U5 j然后我们在bin文件夹下就可以看到我们想要的播放器啦。
% O/ y" E$ A, ]6 O; Y
' q! `0 D( n: F) E, q2 L% a3 T* \' Z% B/ m% x2 V! Y* U1 \
测试 , |6 T, L; V8 `5 v- G
将编译生成的mplayer和测试文件test.mp4和miss.mp3拷贝到开发板,启动开发板,连接耳机。
; n& e6 J; ^0 K- @7 T使用以下命令测试播放音频。
) C( X1 t9 p+ S./mplayer /root/Documents/miss.mp3
6 u8 s. r! m7 j2 E) Y使用以下命令测试播放视频,测试视频的时候要连接显示屏。, {5 b2 T$ x) t- a! R. ^" U
./mplayer -fs -zoom -x 480 -y 272 test.mp4# }& _# l7 n- Z* D: c/ I
如下图所示:
/ o! U7 V+ u2 B/ U' P5 t
% e: B& O! {8 u; {/ @, K6 S好物推荐-IMX6Q开发板+ K Y6 T. t$ d* w! y6 j3 E' z
迅为IMX6Q板卡有工业级和商业级俩种版本,连接类型有邮票孔和连接器俩种。并且在轨道交通,电器设备,控制工业,车载电脑等领域均有批量应用,均高稳定呈现。提供终身技术支持,超长生命周期,产品无忧~& `" h* }3 Y: ~$ N4 ]! [# H0 }5 e
0 q! z: j) C, c- }
+ Z- ?; o: y, N3 a+ d( q, }) x2 ~8 D5 i5 S
|
|