九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
嵌入式加入mplay


轉(zhuǎn):::

arm-linux-gcc交叉編譯器:gcc version 4.3.3(Sourcery G++ Lite 2008q3-72)

MPlayer版本:

MPlayer-1.0rc2.tar.bz2

準(zhǔn)備源碼包:

MPlayer-1.0rc2.tar.bz2         libmad-0.15.1b.tar.gz


MPlayer 1.0已經(jīng)把大部分解碼庫都自帶了,如ffmpeg,但是自帶的音頻庫在S32440下效果非常不好.換成使用libmad效果不錯.因此MPlayer 在ARM-Linux的最簡單的移植只需要移植這兩個即可.移植后即進行字符界面的播放.ARM的版本由我學(xué)生程磊最早運行成功.

但完整版本需要如下庫.

如果需要字幕支持.需要移植freetype庫.支持JPG皮膚需要 libjpeg庫,打開DVD光盤格式,需要dvdread,dvdnav等,支持pnm庫需要libpnm

MPlayer的皮膚主要采用X11支持.但移植X11需要大量工作.這一部分程序由我的學(xué)生童軍實現(xiàn),已經(jīng)在S3C2440開發(fā)板上看皮膚的效果.

MPlayer也支持SDL,但是實測好象其實現(xiàn)并不支持皮膚顯示.一般將其關(guān)掉.

ARM版同樣可以加入live555支持,支持遠程的RTSP的流媒體播放器,方法同X86版類似.

源碼拷貝到/opt/EmbesdSky/video 并分別解壓

MPlayer的簡單移植

1.    編譯 libmad

首先配置 configure 文件(事實證明,每次configure之前看一下./configure --help是個好習(xí)慣)
*************************************************************************************************************************************
        #./configure CC=arm-linux-gcc --enable-fpm=arm --host=arm-linux --disable-shared --disable-debugging --prefix=/opt/EmbestSky/video/MPlayer-1.0rc2 

2.make

完成之后會出現(xiàn)錯誤,找到Makefile并刪除“--fforce-mem”就OK了, 原因是gcc 4.4.3已經(jīng)將其去除了,所以會出現(xiàn)上面的錯誤

3.make install

編譯安裝MPlayer  

1.下載MPlayer-1.0rc

2.tar.gz解壓到/opt/Embesdsky中。

3.首先配置 configure 文件

關(guān)鍵就是后面的配置參數(shù)了。rc2版本的配置參數(shù)相比pre版本而言有些微的改變

**************************************************************************************************
        #./configure  --enable-cross-compile --host-cc=gcc --cc=arm-linux-gcc --as=arm-linux-as --ar=arm-linux-ar --ranlib=arm-linux-ranlib --target=arm-linux --enable-static--prefix=/home/lyh/mplayer-make/MPlayer --disable-dvdread  --disable-win32dll--enable-fbdev --disable-mencoder --disable-live --disable-mp3lib--enable-mad --enable-libavcodec_a--language=zh_CN,en --disable-armv5te --disable-armv6--with-extraincdir=/home/lyh/mplayer-make/mplayer/include--with-extralibdir=/home/lyh/mplayer-make/mplayer/lib


     ./configure  --prefix=/mywork/mplayer --disable-mencoder --enable-linux-devfs --disable-iconv --enable-network --disable-live  --disable-dvdnav --disable-dvdread --disable-dvdread-internal --disable-libdvdcss-internal --enable-ftp  --enable-libavcodec_a  --enable-libavcodec_mpegaudio_hp --enable-mad --disable-mp3lib –disable-ivtv --enable-fbdev --enable-ossaudio --enable-cross-compile --cc=arm-linux-gcc --host-cc=gcc --target=arm-linux --enable-static --with-extraincdir=/mywork/libmab/mad/include --with-extralibdir=/mywork/libmab/mad/lib 2>&1 |tee logfile

注意:如果不加–disable-ivtv會出現(xiàn)ivtv文件產(chǎn)生的錯誤。

MPlayer不支持常見的--host來修改編譯工具前綴.必須用--cc,--ar,--ranlib這樣參數(shù)來修改.

--disable-mp3lib是關(guān)閉默認的MP3解碼庫,--enable-mad 是使用libmad支持.

--disable-dvbhead --disable-dvdread --disable-dvdnav  --disable-dvdread-internal 都是跟DVD相關(guān)庫

--enable-fbdev  打開framebuffer支持.ARM開發(fā)板必須的.

--enable-static 如果使用靜態(tài)編譯尺寸大約是8M,動態(tài)編譯是6M多,這樣可能是無論哪種編譯方式,mplayer都把自帶的解碼庫鏈接到自身,多出2M應(yīng)該是系統(tǒng)標(biāo)準(zhǔn)庫的尺寸。

--enable-static 設(shè)置靜態(tài)連接

--disable-mencoder 禁止編碼功能

--disable-live 禁止live 555流媒體(我也不知道是什么玩意兒。。。)

--enable-libavcodec_a 啟用靜態(tài)的libavcodec解碼

4.        在make之前修改兩個地方,否則會出現(xiàn)不支持pld [r1]指令的問題

在MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S文件

和MPlayer-1.0rc2/libavcodec/armv4l/dsputil_arm_s.S文件的開始處寫入


#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

然后make

5.    make install

會出現(xiàn)一個錯誤,可以不管它,因為此時mplayer已經(jīng)出來了,也就是說已經(jīng)成功了。。。。

修改make install的bug

查資料看install帶-s 參數(shù)時會自動調(diào)用strip來strip應(yīng)用程序。但是arm編譯時要調(diào)用arm-linux-strip才有正確處理。解決辦法是取消-s參數(shù),查看Makefile可以發(fā)現(xiàn)-s是如下

          $(INSTALL) -m 755 $(INSTALLSTRIP) mplayer$(EXESUF)     $(BINDIR)

的INSTALLSTRIP設(shè)置的,它默認是-s,因此只要簡單在Makefile的前面(95行)加入

         INSTALLSTRIP :=  #       (將其置為空即可)

6.    把mplayer通過tftp軟件傳到開發(fā)板中,在傳一個視頻文件eg:new.avi

7.   輸入./mplayer new.avi -framedrop -quiet -vf rotate=1,scale=240:320測試

為什么沒有聲音呢???上網(wǎng)查詢解決……….

解決方法:

mkdir -p /dev/sound
ln -s /dev/dsp /dev/sound/

原因:目標(biāo)系統(tǒng)上有 /dev/dsp 音頻設(shè)備文件,只是OSS音頻驅(qū)動需要的是 /dev/sound/dsp 設(shè)備文件,這問題的簡單解決方法是建一個符號鏈接,當(dāng)然這兩條命令可以寫在系統(tǒng)的啟動文件的適當(dāng)位置,即修改系統(tǒng)的/etc/init.d/rcS文件。

4.   將編譯的mplayer放置開發(fā)板上運行:

   ./mplayer –fs –zoom –x 320 –y 240 -ac mad –nosound –cache 4096 output.avi  –loop 0

    參數(shù)解釋:
   -zoom -x 320 -y 240 全屏

         -ac mad 是必須,表示強制用libmad解碼.
   -nosound 取消音頻
   -cache 4096 緩存設(shè)置為4M
   -loop 循環(huán)播放,為0則無限循環(huán)播放,!0則有限播放
  
5.      其它:

   播放循環(huán)列表的方式
  a). 制作一個播放列表
   ls /mnt/*.avi > tom.lst
   b). 循環(huán)播放
   mplayer -playerlist tom.lst –shuffle
   其中
   -playerlist 指定播放列表
   -shuffle 指定隨機播放
  
   播放中文字幕的方法
   Vi ~/.mplayer/config
   輸入
   Font=/usr/share/fonts/truetype/arphic/uming.ttf
   Subcp=cp936
   Subfont-autoscale=2
   Subfont-text-scale=5
   Vo=xv
   

         MPlayer完整在LCD上顯示       

         可以用video filter 參數(shù) scale來設(shè)置


         /mplayer -vf scale=240:320    也可以用  -zoom -x 320 -y 240來代替

         如果搞不清自己分辯率的,可在MPlayer用 -fullscreen參數(shù) .或者執(zhí)行busybox shell命令fbset查看自n己板的分辯率


6.      附錄:
   ./mplayer guizu.mpg –nosound –aspect 320:240 –bpp 24 -vf scale=320:240 –cache 5120


         有人測試發(fā)現(xiàn)在有一些開發(fā)板下.Mplayer播放后,輸出會干擾后續(xù)shell的執(zhí)行行.用下面比較長的參數(shù)一般沒事

         ./mplayer -ac mad 2.mpg -quiet \ -vf scale=320:240 2>&1 1>/dev/null &&

至此MPlayer移植成功… …此移植過程參考大量水友的操作步驟,在此深表感謝?。?!

歡迎指錯!?。?/p>

 

 2.         cd /opt/Embesdsky/MPlayer-1.0rc2

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
MPlayer,移植
Mplayer 移植
mplayer編譯錯誤127
FFmpeg移植S3C2440
VLC裁剪和移植到S3C6410
ffmpeg + x264 編碼H264 (arm Linux) 轉(zhuǎn)載
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服