[心得]mplayer 的 gl 和 live 问题

Totem,mplayer,sopcast,realplayer,bmp
回复
头像
arli
帖子: 194
注册时间: 2006-11-24 11:00
来自: 太阳系第3行星
联系:

[心得]mplayer 的 gl 和 live 问题

#1

帖子 arli » 2006-12-08 6:30

晚上重装了 mplayer 折腾了老半天,终于Ok鸟。。

编译 mplayer 官方版时,没有 libgl1-mesa-dev 那么GL就不会开启(我的显卡放rm时用xv会偏色只能用GL2),哪怕已经加了 --enable-gl 也没用

要使用 live555 (RTP/RTCP, RTSP, SIP流媒体),必须使用官站 live 包(源里的不行,死都不认,因为源码里认准了 /livemedia 相对路径),从 http://www.live555.com/liveMedia/public ... est.tar.gz 下载后,解压到一个目录,执行:./genMakefiles linux

然后在编译 mplayer 时加上 --enable-live --with-livelibdir=live包目录全路径(就是上面那个解压路径)

最后建议加上 --enable-largefiles(支持大于2G放文件) --enable-smb(支持windows 文件共享,就是播放NT局域网文件)

我的编译行为

./configure --enable-gui --enable-largefiles --enable-smb --enable-gl --enable-xv --with-codecsdir=/usr/local/lib/codecs/ --enable-live --with-livelibdir=../live

安装过程一起写上吧,仅供参考,我的路径设置都是按 mplayer 官站说明的,可能与部分兄台不一样:
下载 http://www.mplayerhq.hu/MPlayer/release ... 22.tar.bz2 并解压到 /usr/local/lib/codecs/

下载 http://www.mplayerhq.hu/MPlayer/skins/slim-1.2.tar.bz2 并解压到 /usr/local/share/mplayer/skins/default/

下载 http://www1.mplayerhq.hu/MPlayer/releas ... c1.tar.bz2 并解压到随意目录,然后进入该目录执行上面的那个 ./configure

注意瞧它回显的东西,哪些没有被支持自己注意补包(源里都可以找到,因为是头文件,通常以 dev 结尾)

然后执行 make 注意它回显的东西,差什么补什么,这步很重要,通常情况下新编译环境都会少些什么在这步会报错

然后是 make install 搞定,命令行敲 gmplayer 启动试下(因为有时要重启才会刷local 的菜单出来)
附 ./configure 对照:
Usage: ./configure [OPTIONS]...

Configuration:
-h, --help display this help and exit

Installation directories:
--prefix=DIR use this prefix for installing mplayer [/usr/local]
--bindir=DIR use this prefix for installing mplayer binary
[PREFIX/bin]
--datadir=DIR use this prefix for installing machine independent
data files (fonts, skins) [PREFIX/share/mplayer]
--mandir=DIR use this prefix for installing manpages [PREFIX/man]
--confdir=DIR use this prefix for installing configuration files
[PREFIX/etc/mplayer]
--libdir=DIR use this prefix for object code libraries [PREFIX/lib]

Optional features:
--disable-mencoder disable mencoder (a/v encoder) compilation [enable]
--enable-gui enable gmplayer compilation (GTK+ GUI) [disable]
--enable-gtk1 force using GTK 1.2 for GUI [disable]
--enable-largefiles enable support for files > 2 GBytes [disable]
--enable-linux-devfs set default devices to devfs ones [disable]
--enable-termcap use termcap database for key codes [autodetect]
--enable-termios use termios database for key codes [autodetect]
--disable-iconv do not use iconv(3) function [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]
--enable-joystick enable joystick support [disable]
--disable-vm disable support X video mode extensions [autodetect]
--disable-xf86keysym disable support for 'multimedia' keys [autodetect]
--enable-radio enable Radio Interface [disable]
--enable-radio-capture enable Capture for Radio Interface (through pci/line-in) [disable]
--disable-radio-v4l2 disable Video4Linux2 Radio Interface support [autodetect]
--disable-tv disable TV Interface (tv/dvb grabbers) [enable]
--disable-tv-v4l1 disable Video4Linux TV Interface support [autodetect]
--disable-tv-v4l2 disable Video4Linux2 TV Interface support [autodetect]
--disable-tv-bsdbt848 disable BSD BT848 Interface support [autodetect]
--disable-pvr disable Video4Linux2 MPEG PVR support [autodetect]
--disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
--disable-network disable network support (for: http/mms/rtp) [enable]
--enable-winsock2 enable winsock2 usage [autodetect]
--enable-smb enable Samba (SMB) input support [autodetect]
--enable-live enable LIVE555 Streaming Media support [autodetect]
--disable-dvdnav disable libdvdnav support [autodetect]
--disable-dvdread Disable libdvdread support [autodetect]
--disable-mpdvdkit Disable mpdvdkit2 support [autodetect]
--disable-cdparanoia Disable cdparanoia support [autodetect]
--disable-bitmap-font Disable bitmap font support [enable]
--disable-freetype Disable freetype2 font rendering support [autodetect]
--disable-fontconfig Disable fontconfig font lookup support [autodetect]
--disable-unrarlib Disable Unique RAR File Library [enabled]
--enable-menu Enable OSD menu support (NOT DVD MENU) [disabled]
--disable-sortsub Disable subtitles sorting [enabled]
--enable-fribidi Enable using the FriBiDi libs [autodetect]
--disable-enca Disable using ENCA charset oracle library [autodetect]
--disable-macosx Disable Mac OS X specific features [autodetect]
--disable-maemo Disable maemo specific features [autodetect]
--enable-macosx-finder-support Enable Mac OS X Finder invocation parameter parsing [disabled]
--enable-macosx-bundle Enable Mac OS X bundle file locations [autodetect]
--disable-inet6 Disable IPv6 support [autodetect]
--disable-gethostbyname2 gethostbyname() function is not provided by the C
library [autodetect]
--disable-ftp Disable ftp support [enabled]
--disable-vstream Disable tivo vstream client support [autodetect]
--disable-pthreads Disable Posix threads support [autodetect]
--disable-ass Disable internal SSA/ASS subtitles support [autodetect]
--enable-rpath Enable runtime linker path for extra libs [disabled]

Codecs:
--enable-gif enable gif support [autodetect]
--enable-png enable png input/output support [autodetect]
--enable-jpeg enable jpeg input/output support [autodetect]
--enable-libcdio enable external libcdio support [autodetect]
--enable-liblzo enable external liblzo support [autodetect]
--disable-win32 disable Win32 DLL support [autodetect]
--disable-qtx disable Quicktime codecs [autodetect]
--disable-xanim disable XAnim DLL support [autodetect]
--disable-real disable RealPlayer DLL support [autodetect]
--disable-xvid disable XviD codec [autodetect]
--disable-x264 disable H.264 encoder [autodetect]
--disable-nut disable libnut demuxer [autodetect]
--disable-libavutil disable libavutil [autodetect]
--disable-libavcodec disable libavcodec [autodetect]
--disable-libavformat disable libavformat [autodetect]
--disable-libpostproc disable libpostproc [autodetect]
--disable-libavutil_so disable shared libavutil [autodetect]
--disable-libavcodec_so disable shared libavcodec [autodetect]
--disable-libavformat_so disable shared libavformat [autodetect]
--disable-libpostproc_so disable shared libpostproc [autodetect]
--disable-libavcodec_mpegaudio_hp disable high precision audio decoding
in libavcodec [enabled]
--enable-libfame enable libfame realtime encoder [autodetect]
--disable-tremor-internal do not build internal Tremor support [enabled]
--enable-tremor-low build with lower accuracy internal Tremor [disabled]
--enable-tremor-external build with external Tremor [autodetect]
--disable-libvorbis disable libvorbis support [autodetect]
--disable-speex disable Speex support [autodetect]
--enable-theora build with OggTheora support [autodetect]
--enable-faad-external build with external FAAD2 (AAC) support [autodetect]
--disable-faad-internal disable internal FAAD2 (AAC) support [autodetect]
--enable-faad-fixed enable fixed-point mode in internal FAAD2 [disabled]
--disable-faac disable support for FAAC (AAC encoder) [autodetect]
--disable-ladspa disable LADSPA plugin support [autodetect]
--disable-libdv disable libdv 0.9.5 en/decoding support [autodetect]
--disable-mad disable libmad (MPEG audio) support [autodetect]
--disable-toolame disable Toolame (MPEG layer 2 audio) support in mencoder [autodetect]
--disable-twolame disable Twolame (MPEG layer 2 audio) support in mencoder [autodetect]
--enable-xmms build with XMMS inputplugin support [disabled]
--disable-mp3lib disable builtin mp3lib [enabled]
--disable-liba52 disable builtin liba52 [enabled]
--enable-libdts enable libdts support [autodetect]
--disable-libmpeg2 disable builtin libmpeg2 [enabled]
--disable-musepack disable musepack support [autodetect]
--disable-amr_nb disable amr narrowband, floating point [autodetect]
--disable-amr_nb-fixed disable amr narrowband, fixed point [autodetect]
--disable-amr_wb disable amr wideband, floating point [autodetect]
--disable-decoder=DECODER disable specified FFmpeg decoder
--enable-decoder=DECODER enable specified FFmpeg decoder
--disable-encoder=ENCODER disable specified FFmpeg encoder
--enable-encoder=ENCODER enable specified FFmpeg encoder
--disable-parser=PARSER disable specified FFmpeg parser
--enable-parser=PARSER enable specified FFmpeg parser
--disable-demuxer=DEMUXER disable specified FFmpeg demuxer
--enable-demuxer=DEMUXER enable specified FFmpeg demuxer
--disable-muxer=MUXER disable specified FFmpeg muxer
--enable-muxer=MUXER enable specified FFmpeg muxer

Video output:
--disable-vidix-internal disable internal VIDIX [for x86 *nix]
--disable-vidix-external disable external VIDIX [for x86 *nix]
--enable-gl build with OpenGL render support [autodetect]
--enable-dga[=n] build with DGA [n in {1, 2} ] support [autodetect]
--enable-vesa build with VESA support [autodetect]
--enable-svga build with SVGAlib support [autodetect]
--enable-sdl build with SDL render support [autodetect]
--enable-aa build with AAlib render support [autodetect]
--enable-caca build with CACA render support [autodetect]
--enable-ggi build with GGI render support [autodetect]
--enable-ggiwmh build with GGI libggiwmh extension [autodetect]
--enable-directx build with DirectX support [autodetect]
--enable-dxr2 build with DXR2 render support [autodetect]
--enable-dxr3 build with DXR3/H+ render support [autodetect]
--enable-ivtv build with IVTV TV-Out render support [autodetect]
--enable-dvb build with support for output via DVB-Card [autodetect]
--enable-dvbhead build with DVB support (HEAD version) [autodetect]
--enable-mga build with mga_vid (for Matrox G200/G4x0/G550) support
(check for /dev/mga_vid) [autodetect]
--enable-xmga build with mga_vid X Window support
(check for X & /dev/mga_vid) [autodetect]
--enable-xv build with Xv render support for X 4.x [autodetect]
--enable-xvmc build with XvMC acceleration for X 4.x [disable]
--enable-vm build with XF86VidMode support for X11 [autodetect]
--enable-xinerama build with Xinerama support for X11 [autodetect]
--enable-x11 build with X11 render support [autodetect]
--enable-xshape build with XShape support [autodetect]
--enable-fbdev build with FBDev render support [autodetect]
--enable-mlib build with mediaLib support (Solaris only) [disable]
--enable-3dfx build with obsolete /dev/3dfx support [disable]
--enable-tdfxfb build with tdfxfb (Voodoo 3/banshee) support [disable]
--enable-s3fb build with s3fb (S3 ViRGE) support [disable]
--enable-directfb build with DirectFB support [autodetect]
--enable-zr build with ZR360[56]7/ZR36060 support [autodetect]
--enable-bl build with Blinkenlights support [disable]
--enable-tdfxvid build with tdfx_vid support [disable]
--disable-tga disable targa output support [enable]
--disable-pnm disable pnm output support [enable]
--disable-md5sum disable md5sum output support [enable]

Audio output:
--disable-alsa disable ALSA sound support [autodetect]
--disable-ossaudio disable OSS sound support [autodetect]
--disable-arts disable aRts sound support [autodetect]
--disable-esd disable esd sound support [autodetect]
--disable-polyp disable Polypaudio sound support [autodetect]
--disable-jack disable JACK sound support [autodetect]
--disable-openal disable OpenAL sound support [autodetect]
--disable-nas disable NAS sound support [autodetect]
--disable-sgiaudio disable SGI sound support [autodetect]
--disable-sunaudio disable Sun sound support [autodetect]
--disable-win32waveout disable Windows waveout sound support [autodetect]
--disable-select disable using select() on audio device [enable]

Miscellaneous options:
--enable-runtime-cpudetection Enable runtime CPU detection [disable]
--enable-cross-compile Enable cross-compilation [autodetect]
--cc=COMPILER use this C compiler to build MPlayer [gcc]
--host-cc=COMPILER use this C compiler to build apps needed for the build process [gcc]
--as=ASSEMBLER use this assembler to build MPlayer [as]
--target=PLATFORM target platform (i386-linux, arm-linux, etc)
--enable-static build a statically linked binary. Set further linking
options with --enable-static="-lslang -lncurses"
--charset convert the help messages to this charset
--language=list a white space or comma separated list of languages
for translated man pages, the first language is the
primary and therefore used for translated messages
and GUI (also the environment variable $LINGUAS is
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)
--with-install=PATH use a custom install program (useful if your OS uses
a GNU-incompatible install utility by default and
you want to use GNU version)
--install-path=PATH the path to a custom install program
this option is obsolete and will be removed soon,
use --with-install instead.

Advanced options:
--enable-mmx build with MMX support [autodetect]
--enable-mmxext build with MMX2 support (PIII, Athlon) [autodetect]
--enable-3dnow build with 3DNow! support [autodetect]
--enable-3dnowext build with extended 3DNow! support [autodetect]
--enable-sse build with SSE support [autodetect]
--enable-sse2 build with SSE2 support [autodetect]
--enable-shm build with shm support [autodetect]
--enable-altivec build with Altivec support (PowerPC) [autodetect]
--enable-armv5te build with DSP extensions support (ARM) [autodetect]
--enable-iwmmxt build with iWMMXt support (ARM) [autodetect]
--disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy() [enable]
--enable-big-endian Force byte order to big-endian [autodetect]
--enable-debug[=1-3] compile debugging information into mplayer [disable]
--enable-profile compile profiling information into mplayer [disable]
--disable-sighandler disable sighandler for crashes [enable]
--enable-crash-debug enable automatic gdb attach on crash [disable]
--enable-dynamic-plugins Enable support for dynamic a/v plugins [disable]

Hazardous options a.k.a. "DO NOT REPORT ANY BUGS!"
--disable-gcc-check disable gcc version checking [enable]

Use these options if autodetection fails (Options marked with (*) accept
multiple paths separated by ':'):
--with-extraincdir=DIR extra headers (png, mad, sdl, ...) in DIR (*)
--with-extralibdir=DIR extra linker search paths in DIR (*)
--extra-libs=FLAGS extra linker flags
--with-x11libdir=DIR X library files in DIR (*)
--with-mliblibdir=DIR libmlib (mediaLib support) in DIR (Solaris only)
--with-codecsdir=DIR Binary codec files in DIR
--with-win32libdir=DIR W*ndows DLL files in DIR
--with-xanimlibdir=DIR XAnim DLL files in DIR
--with-reallibdir=DIR RealPlayer DLL files in DIR
--with-xvidlibdir=DIR libxvidcore (XviD) in DIR (*)
--with-x264libdir=DIR libx264 in DIR
--with-libdtslibdir=DIR libdts library in DIR (*)
--with-livelibdir=DIR LIVE555 Streaming Media libraries in DIR
--with-toolamelibdir=DIR Toolame library in DIR
--with-xmmsplugindir=DIR XMMS plugins in DIR
--with-xmmslibdir=DIR libxmms.so.1 in DIR
--with-cdparanoialibdir=DIR cdparanoia libraries (libcdda_*) in DIR (*)
--with-xvmclib=NAME name of adapter-specific library (e.g. XvMCNVIDIA)

--with-freetype-config=PATH path to freetype-config
(e.g. /opt/bin/freetype-config)
--with-fribidi-config=PATH path to fribidi-config
(e.g. /opt/bin/fribidi-config)
--with-glib-config=PATH path to glib*-config (e.g. /opt/bin/glib-config)
--with-gtk-config=PATH path to gtk*-config (e.g. /opt/bin/gtk-config)
--with-sdl-config=PATH path to sdl*-config (e.g. /opt/bin/sdl-config)
--with-dvdnav-config=PATH path to dvdnav-config (e.g. /opt/bin/dvdnav-config)

This configure script is NOT autoconf-based, even though its output is similar.
It will try to autodetect all configuration options. If you --enable an option
it will be forcefully turned on, skipping autodetection. This can break
compilation, so you need to know what you are doing.
要爱护linux 就象爱护我们的庄稼地一样
回复