歡迎您光臨本站 註冊首頁

裝個最新mplayer玩玩

←手機掃碼閱讀     火星人 @ 2014-03-23 , reply:0

為什麼要選擇最新的,因為最新的解決了一個好長時間的bug,原先放rm和rmvb格式的無法拖動進度條。現在最新的能拖動了。我們先到下面這個鏈接去下最新的:

要做以下得有一個編譯的環境,就是gcc4以上,gtk2以上(gtk1我不用了,常出亂碼,只要你這兒不加參數會自動調用gtk2的,不會用你的 gtk1.)glibc,以及X的頭文件庫文件(因為我們要界面)。不過一般發行版只要你選了全部安裝這個環境是有的,所以你放心的做。如果在. /configure出錯就是環境問題,很有可能是相依的軟體沒裝。你可以根據提示先把這個裝了。我們這裡先明白一個道理,我們不是win系統裝軟體。我們是從一個源碼編譯安裝。所以主要分三步:

第一步:./configure 這主要是檢查你的系統環境以及初始化一些變數,最後生成Makefile文件。
第二步:make 根據剛才生存的Makefile文件進行編譯。這裡沒出錯,整個編譯就算完成。
第三步:make install這一步就是安裝了啊。只要你沒裝在你的home目錄,得用root身份安裝。
好了下載必要的:


1、 源碼部份:最新的是

ftp://ftp1.mplayerhq.hu/MPlayer/ ... ut-snapshot.tar.bz2
2、解碼部份:下all這個幾乎各種格式都能放:
ftp://ftp1.mplayerhq.hu/MPlayer/ ... ll-20061022.tar.bz2
3、皮膚部分:就圖形界面你得要吧!(先下一個,一會再說哪兒下,你下個十幾個,天天換個樣.)
ftp://ftp1.mplayerhq.hu/MPlayer/skins/Blue-1.7.tar.bz2
4、字體我們不要了。你的系統字體多吧,到時隨便鏈一個。

首先你想裝在哪裡呢?裝在/usr/下,大部份發行版的軟體都裝在這裡。如果裝在這裡就沒有必要進入系統初始化一起變數。因為你安裝時發行版已給你設好了。為了不給裝系統軟體弄混。我們選其它地方吧。按一般習慣還有兩個地方/usr/local 和/opt下。為了說明一個問題,我們選/opt下而且專們用一個目錄來裝mplayer,到時你不想要了。直接把他刪了,決對乾淨。


首先建目錄root身分:(為了方便我們都用root身份,不要怕,不會出問題的。)
mkdir /opt (一般都有,沒有就執行這一步)
mkdir /opt/mp (專門裝mplayer的目錄)

為了找得到庫,和能在菜單欄顯圖標等,我們先設置一些初始化的變數:(因為各個發行版不一樣,可寫的地方很多,但都要去執行/etc/profile文件,所以我們把下面的寫在/etc/profile文件最後面)

export PATH="${PATH}:/opt/mp/bin"
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}/opt/mp/lib/pkgconfig"
export XDG_DATA_DIRS="${XDG_DATA_DIRS}${XDG_DATA_DIRS+:}/opt/mp/share"

好了執行下面命令使他生效:
source /etc/profile

現在再打開/etc/ld.so.conf 文件加入
/opt/mp/lib
執行: ldconfig


正式開始:

1、先裝解碼器:
mkdir /opt/mp/lib && mkdir /opt/mp/lib/codecs
cd /opt/mp/lib/codecs (把all-20061022.tar.bz2 下到這個目錄)
tar xvf all-20061022.tar.bz2
rm all-20061022.tar.bz2
chown -v root:root *

2、裝圖形界面:
mkdir /opt/mp/share && mkdir /opt/mp/share/mplayer && mkdir /opt/mp/share/mplayer/skins
cd /opt/mp/share/mplayer/skins (把Blue-1.7.tar.bz2下到這個目錄)
tar xvf Blue-1.7.tar.bz2
rm Blue-1.7.tar.bz2
chown -v -R root:root Blue
chmod -v 755 Blue{,/icons}
ln -sv Blue default
關於更多的皮膚直接到mplayer網站下了解到/opt/mp/share/mplayer/skins里就行了。

3、編譯安裝mplayer源碼:
首先我們隨便找個目錄就在/opt/mp
cd /opt/mp (把mplayer-checkout-snapshot.tar.bz2弄到這裡來)
tar xvf mplayer-checkout-snapshot.tar.bz2
rm mplayer-checkout-snapshot.tar.bz2
cd mplayer-checkout-2007-01-28 (進入源碼目錄,最後面這個號數有可能變,天天都在開發)


我們先不忙編譯,我們先看下幫助:

./configure --help (貼出部份信息,稍加解釋)
這是默認安裝的位置如下:
--prefix=DIR prefix directory for installation [/usr/local]我們裝到/opt/mp
--bindir=DIR directory for installing binaries [PREFIX/bin]這裡就變成了/opt/mp/bin
--datadir=DIR directory for installing machine independent
data files (skins, etc) [PREFIX/share/mplayer]
--mandir=DIR directory for installing man pages [PREFIX/man]
--confdir=DIR directory for installing configuration files
[PREFIX/etc/mplayer]
這個我們給他改個位置放到 /etc/mplayer下,你應該明配置的大部份都在/etc下吧。

--libdir=DIR directory for object code libraries [PREFIX/lib]
上面這些你該明白了吧!

--codecsdir=DIR directory for binary codecs [LIBDIR/codecs]
解碼器位置:我們的: /opt/mp/lib/codecs
--win32codecsdir=DIR directory for Windows DLLs [LIBDIR/codecs]
--xanimcodecsdir=DIR directory for XAnim codecs [LIBDIR/codecs]
--realcodecsdir=DIR directory for RealPlayer codecs [LIBDIR/codecs]
win xanim real 解碼器我們全部指到 /opt/mp/lib/codecs 好管理

--disable-mencoder disable MEncoder (A/V encoder) compilation [enable]
--disable-mplayer disable MPlayer compilation [enable]
--enable-gui enable GMPlayer compilation (GTK+ GUI) [disable]
圖形界面要這個關閉了的 一會選上打開
--enable-gtk1 force using GTK 1.2 for the GUI [disable]
GTK1.2不要他不選
--enable-largefiles enable support for files > 2GB [disable]
這個也要
--enable-linux-devfs set default devices to devfs [disable]
--enable-termcap use termcap database for key codes [autodetect]
--enable-termios use termios database for key codes [autodetect]
這種[autodetect]自動動根據你的系統有無配置不管他
--disable-iconv disable iconv for encoding conversion [autodetect]
--disable-langinfo do not use langinfo [autodetect]
--enable-lirc enable LIRC (remote control) support [autodetect]
--enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
上面的還有一部份沒貼,該要的都自動打開了的不管他。

--charset=charset convert the console messages to this character set
這個是設編碼的,gtk2的一般不用管他
--language=list a white space or comma separated list of languages for
translated man pages, the first language is used for
messages and the GUI (the environment variable
$LINGUAS is also honored) [en]
(Available: bg cs de dk el en es fr hu it ja ko mk nb nl pl ro ru
sk sv tr uk pt_BR zh_CN zh_TW all)
語言選項:默認英語,你懂那國語言就選哪個國語,我懂中文;我就選 zh_CN

下面這一部份是相依賴的,如果在./configure過程說沒找到,但你確信你裝了的。你就得給他指路徑。我的X之類就沒找到;如下請看:
--extra-libs=FLAGS extra linker flags
--extra-libs-mplayer=FLAGS extra linker flags for MPlayer
--extra-libs-mencoder=FLAGS extra linker flags for MEncoder
--with-extraincdir=DIR extra header search paths in DIR (*)
這個頭文件找不到,我就得在./configure (加上) --with-extraincdir=/usr/X11R7/include/
--with-extralibdir=DIR extra linker search paths in DIR (*)
庫文件也找不到 又得加上 --with-extralibdir=/usr/X11R7/lib
--with-xvmclib=NAME adapter-specific library name (e.g. XvMCNVIDIA)

--with-freetype-config=PATH path to freetype-config
--with-fribidi-config=PATH path to fribidi-config
--with-glib-config=PATH path to glib*-config
--with-gtk-config=PATH path to gtk*-config
--with-sdl-config=PATH path to sdl*-config
--with-dvdnav-config=PATH path to dvdnav-config
我已說明兩個例子,如過你在./configure過程中不過。提什麼沒找到。如果你沒裝就得裝上,如果你確信裝了的,也有可能沒找到路徑。在./configure 後面加上相應參數指明路徑就行了。


根據我剛才上面總體情況給出一個最普遍的configure的例子,如下執行:

./configure --prefix=/opt/mp --enable-gui --enable-largefiles \
--language=zh_CN --confdir=/etc/mplayer --codecsdir=/opt/mp/lib/codecs \
--win32codecsdir=/opt/mp/lib/codecs --xanimcodecsdir=/opt/mp/lib/codecs \
--realcodecsdir=/opt/mp/lib/codecs


最後結果大體如下,請檢查一下看是不是自已想要的環境。如果不是重新在./configure 加好你的參數:我cp上面執行結果:

Config files successfully generated by ./configure !

Install prefix: /opt/mp
Data directory: /opt/mp/share/mplayer
Config direct.: /etc/mplayer

Byte order: little-endian
Optimizing for: pentium4 mmx mmxext sse sse2 cmov mtrr

Languages:
Messages/GUI: zh_CN 語言部份
Manual pages: en

Enabled optional drivers:
Input: ftp network pvr tv-v4l2 tv-v4l tv libdvdcss dvdread vcd dvb
Codecs: qtx libavcodec real xanim win32 faad2 libmpeg2 liba52 mp3lib tremor(internal)
Audio output: alsa esd oss sdl mpegpes(dvb)
Video output: xvidix cvidix md5sum sdl pnm jpeg png mpegpes(dvb) fbdev opengl dga xv
x11 xover tga 支持的解碼以及一些設備。
Audio filters:
Disabled optional drivers:
Input: vstream radio live555 cddb cdda dvdnav smb
Codecs: x264 xvid libdv amr_wb amr_nb faac musepack libdts libtheora speex toolame
twolame libmad liblzo gif
Audio output: sun openal jack polyp arts ivtv dxr2 nas
Video output: winvidix bl zr zr2 ivtv dxr3 dxr2 vesa gif89a svga caca aa ggi xmga mga
xvmc dfbmga directfb tdfx_vid s3fb tdfxfb 3dfx
Audio filters: ladspa


'config.h' and 'config.mak' contain your configuration options.

Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
compile *** DO NOT REPORT BUGS if you tweak these files ***


'make' will now compile MPlayer and 'make install' will install it.

Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.

Please check mtrr settings at /proc/mtrr (see DOCS/HTML/zh_CN/video.html#mtrr)

Check configure.log if you wonder why an autodetection failed (make sure
development headers/packages are installed).

NOTE: The --enable-* parameters unconditionally force options on, completely
skipping autodetection. This behavior is unlike what you may be used to from
autoconf-based configure scripts that can decide to override you. This greater
level of control comes at a price. You may have to provide the correct compiler
and linker flags yourself.
If you used one of these options (except --enable-gui and similar ones that
turn on internal features) and experience a compilation or linking failure,
make sure you have passed the necessary compiler/linker flags to configure.

If you suspect a bug, please read DOCS/HTML/zh_CN/bugreports.html.


自已看你的輸出,不要看這上面的:確定無誤,執行:

make && make install

好了,make install執行會ldconfig的,為了穩當,再執行一次ldconfig.

最後還有幾步就完了:

install -v -m755 -d /opt/mp/share/doc/mplayer-checkout-2007-01-28 (後面的號數改成你的對應的)
cp -v -R DOCS/* /opt/mp/share/doc/mplayer-checkout-2007-01-28
ln -v -s libdha.so.1.0 /opt/mp/lib/libdha.so
install -m644 etc/codecs.conf /etc/mplayer
install -m644 etc/*.conf /etc/mplayer
echo "dev.rtc.max-user-freq=1024" >> /etc/sysctl.conf

好了做個字體鏈接找下你的字體在哪裡,一般都如/usr/share/fonts隨便找一個
ln -s /usr/share/fonts/TTF/luximb.ttf /opt/mp/share/mplayer/font/luximb.ttf
你自已找一個你喜歡的字體。然後進mplayer設置界面去選這個/opt/mp/share/mplayer/font/luximb.ttf

這下總算完了,打開菜單 應用程序-影音-mplayer (如果沒有注消X再登進來。還沒有就先用命令運行下gmplayer)


調試部份:說個例子

如果播放rm , rmvb,彈出:錯誤:打不開所需的DirectShow 編解碼器:drvc.so ,但能放,為了消去這討厭的東東你可以執行如下(如下操作好像不管用啊,俺的系統是有libstdc++.so.5的,但是既然不影響播放,姑且放過吧):
cd /opt/mp/lib/codecs
ldd drvc.so
輸出結果:
linux-gate.so.1 => (0xffffe000)
libstdc++.so.5 => not found 這個libstdc++.so.5沒找到
libc.so.6 => /lib/libc.so.6 (0xb7dd1000)
/lib/ld-linux.so.2 (0x80000000)
你得去網上找過或從其它系統cp libstdc++.so.5.0.6 到/usr/lib
然後 ln -s libstdc++.so.5.0.6 libstdc++.so.5 再執行ldconfig
這下執行就不會彈這個框了,這只是一個例子。具體情況具體辦。
如果彈出Not audio/video stream or unsupported! 這個框要修改一下源碼再編譯就不會有這個框了,再此不做討論。反正不影響播放,按下?定就完了。
試試進度條rm rmvb格式也能拖動了,不用鍵盤上的方向鍵操作了。

[火星人 ] 裝個最新mplayer玩玩已經有490次圍觀

http://coctec.com/docs/linux/show-post-123414.html