1.2. Instalación

Una guía de instalación rápida puede encontrarse en el archivo README. Por favor, léala primero y luego vuelva aquí para obtener el resto de detalles sanguinolientos.

En esta sección trataré de guiarlo a través del proceso de compilación y configuración de MPlayer. No es fácil, pero no necesariamente difícil. Si experimenta un comportamiento diferente al que explico, por favor busque en esta documentación y encontrará las respuestas. Si ve un enlace, por favor sigalo y lea atentamente su contenido. Le llevará algún tiempo, pero vale la pena.

Necesita un sistema relativamente reciente. En Linux, un sistema con núcleo 2.4.x es recomendado.

1.2.1. Requerimientos de Software

  • binutils - la versión sugerida es 2.11.x. Este programa es el responsable de generar instrucciones MMX/3DNow!/etc, por lo tanto muy importante.

  • gcc - versiones recomendadas son 2.95 y 3.3+. 2.96 y 3.0.x generan código con fallas, 3.1 y 3.2 tambien tuvieron sus problemas.

  • XFree86 - versión sugerida siempre la más nueva (4.3). Normalmente, todos quieren esto, desde XFree 4.0.2, viene con la extensión XVideo (referida en varios lugares como Xv) que se usa en efecto para activar la aceleración YUV por hardware (mostrado rápido de imagen) en placas que lo soportan. Asegúrese que el paquete de desarrollo este también instalado, de otra manera no funcionará. Para algunas placas de vídeo no se necesita XFree86. Vea el listado abajo.

  • make - versión sugerida siempre la última (por lo menos la 3.79.x). Esto normalmente no es importante.

  • SDL - no es obligatoria, pero puede ayudar en algunos cosas (audio malo, placas de vídeo que sufren retardo extraños con el controlador xv). Siempre use la versión más actual (empezando por 1.2.x).

  • libjpeg - decodificador opcional de JPEG, usado por la opción -mf y algunos archivos MOV de QT. Útil para ambos MPlayer y MEncoder si planea trabar con archivos jpeg.

  • libpng - recomendado y decodificador por omisión de (M)PNG. Necesario para la IGU. Útil para ambos MPlayer y MEncoder.

  • lame - recomendado, necesario para codificar audio en MP3 audio con MEncoder, la versión recomendada es siempre la más nueva (por lo menos 3.90).

  • libogg - opcional, necesaria para reproducir archivos con formato OGG.

  • libvorbis - opcional, necesario para reproducir archivos de audio OGG Vorbis.

  • LIVE.COM Streaming Media - opcional, necesario para reproducir flujos RTSP/RTP.

  • directfb - opcional, de http://www.directfb.org

  • cdparanoia - opcional, para soporte de CDDA

  • libfreetype - opcional, para soporte de fuentes TTF Versión mínima requerida es 2.0.9.

  • libxmms - opcional, para soporte de plugins de entrada de XMMS La versión mínima necesaria es 1.2.7.

  • libsmb - opcional, para soporte Samba.

1.2.2. Codecs

  • libavcodec: Este paquete de codecs es capaz de decodificar flujos de vídeo codificado en H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/SVQ1/SVQ3 y decodificar flujo de audio WMA (Windows Media Audio) v1/v2, en múltiples plataformas. Es también reconocido como el más rápido para esta tarea. Vea la sección FFmpeg para más detalles. Características:

    • obtener la decodificación de formatos de vídeo mencionados arriba, en máquinas no-x86

    • codificación con la mayoría de los codecs mencionados

    • este codec es el más rápido disponible para DivX/3/4/5 y otros tipos de MPEG4. ¡Recomendado!

  • codecs de Win32: Si planea usar MPlayer en arquitecturas x86, probablemente las necesite. Descargue los codecs de Win32 desde nuestra página de codecs e instalelos en /usr/lib/codecs ANTES de compilar MPlayer, de otra forma no se compilará soporte para Win32.

    Nota

    El proyecto avifile tiene una página similar de codecs, pero difiere de la nuestra, por lo tanto si quiere usar todos los codecs soportados, use nuestro paquete (no se preocupe, avifle funciona sin problemas con nuestro paquete).

    Características:

    • necesita esto si quiere reproducir o codificar por ejemplo películas guardadas con varios compresores de hardware, como tarjetas sintonizadoras, cámaras digitales (ejemplo: DV, ATI VCR, MJPEG)

    • necesaria si quiere reproducir películas WMV9/WMA9.

    • No es necesaria para el viejo formato AFS con vídeo MP41 o MP42 (aunque el audio VoxWare es frecuente en éstos archivos - que usa un codec de Win32), o WMV7. Tampoco se necesita para WMA (Windows Media Audio), libavcodec tiene un decodificador de fuente abierta para eso.

  • codecs de QuickTime: en plataformas x86 estos codecs pueden ser usados para decodificar RPZA y otros vídeos de QuickTime, y flujos de audio de QDesign. La instrucción para su instalación la puede encontrar en la sección codec de vídeo Sorenson.

  • DivX4/DivX5: información acerca de este codec está disponible en la sección DivX4/DivX5. Posiblemente no quiera este codec ya que libavcodec (ver más arriba) es más rápido y tiene mejor calidad que este, tanto para codificar como para decodificar. Características:

    • codificación en 1 o 2 pasadas con MEncoder

    • puede reproducir películas viejas en DivX3 mucho más rápido que la DLL de Win32 ¡pero más lento que libavcodec!

    • es de código cerrado, y solo la versión para x86 esta disponible.

  • XviD: Alternativa de código abierto a la codificación de DivX4Linux. Características:

    • codificación en 1 o 2 pasadas con MEncoder

    • es de código abierto, entonces es multiplataforma.

    • es aproximadamente 2 veces más rápido que DivX4 para codificar - la misma calidad

  • Los codecs de XAnim son los mejores (pantalla completa, zoom YUV por hardware) para decodificar películas 3ivx e Indeo 3/4/5, y algunos otros formatos antiguos. Y son multiplataforma, por lo tanto la única manera de reproducir Indeo en plataformas no-x86 (bueno, aparte de usar XAnim:). Pero por ejemplo las películas Cinepak es mejor verlas con el decodificador propio de MPlayer.

  • Para decodificación de audio Ogg Vorbis necesita instalar adecuadamente libvorbis. Use paquetes deb/rpm si están disponibles, o compile desde la fuente (esta es una versión comprimida del CVS de Vorbis actualizada todas las noches).

  • MPlayer puede usar las librerías de RealPlayer 8 o RealONE para reproducir archivos con vídeo RealVideo 2.0-4.0 y audio Sipro/Cook. Vea la sección formato de archivo RealMedia para instrucciones de instalación y más información.

1.2.3. Placas de Vídeo

Hay en general dos tipos de placas de vídeo. Un tipo (las placas más nuevas) tiene soporte de escalado por hardware y aceleración YUV, y las otras placas no.

1.2.3.1. Placas YUV

Pueden mostrar y escalar (zoom) la imagen a cualquier tamaño que entre en su memoria, con un bajo uso de CPU (aún cuando hagan zoom), por lo tanto la pantalla completa es agradable y muy rápida.

  • Placas Matrox G200/G400/G450/G550: a pesar de que se provee un controlador Vidix, es recomendado usar el módulo mga_vid en su lugar, porque funciona mucho mejor. Por favor vea la sección mga_vid acerca de su instalación y uso. Es muy importante hacer estos pasos antes de compilar MPlayer, de otro modo no se dará soporte para mga_vid. También revise la sección Salida de TV Matrox. Si no usa Linux, su única posibilidad es el controlador VIDIX: lea la sección VIDIX.

  • Placas 3Dfx Voodoo3/Banshee: por favor vea la sección tdfxfb para poder obtener una gran ganancia en velocidad. Es importante que siga esos pasos antes de compilar MPlayer, de otro modo no se dará soporte para 3Dfx. Vea también la sección Salida de TV de 3Dfx. Si usa X, use por lo menos 4.2.0, ya que el controlador de Xv para 3Dfx andaba mal en versiones previas.

  • Placas ATI: el controlador VIDIX se provee para las siguientes placas: Radeon, Rage128, Mach64 (Rage XL/Mobility, Xpert98). Vea también la sección de placas ATI de la documentación de salida de TV, para saber si la salida de TV de su placa de vídeo esta soportada en Linux/MPlayer.

  • Placas S3: Los chips Savage y Virge/DX chips tiene aceleración por hardware. Use la versión más nueva posible de XFree86, los controladores viejos tienen problemas. Los chips Savage tiene problemas con el mostrado en YV12, vea la sección S3 Xv para más detalles. Las placas más viejas Trio no tienen soporte de hardware o el soporte es lento.

  • Placas nVidia: pueden o no ser una buena elección para la reproducción de vídeo. Si no posee una placa GeForce2 (o más nueva), es poco probable que funcione sin problemas. El controlador incorporado de nVidia para XFree86 no soporta aceleración YUV por hardware en todas las placas nVidia. Debe descargar los controladores de código cerrado de nVidia.com. Vea la sección sobre controlador de Xv de nVidia para detalles. Por favor, compruebe también la sección de salida-TV de nVidia si desea usar una TV.

  • 3DLabs GLINT R3 y Permedia3: se provee un controlador VIDIX (pm3_vid). Por favor vea la sección VIDIX para más detalles.

  • Otras placas: ¿ninguna de las de arriba?

    • Pruebe si el controlador de XFree86 (y su placa) soportan aceleración por hardware. Vea la sección Xv para más detalles.

    • Si no lo hace, entonces las características de vídeos de su placa no están soportadas en su sistema operativo :( Si el escalado por hardware funciona bajo Windows, no implica que funcionará bajo Linux o algún otro sistema operativo, depende de los controladores. Muchos fabricantes ni construyen controladores para Linux ni liberan las especificaciones de sus chips - por lo tanto anda sin suerte si esta usando una de sus placas. Vea Placas sin YUV.

1.2.3.2. Placas sin YUV

Se puede conseguir una reproducción a pantalla completa tanto activando el escalado por software (use la opción -zoom o -vf, pero le advierto: esto es lento), o cambiando a un modo de vídeo más chico, por ejemplo 352x288. Si no posee aceleración YUV, este último método es lo recomendado. El cambio de modo de vídeo se activa usando la opción -vm y funciona con los siguientes controladores:

  • usando XFree86: vea los detalles en las secciones del controlador DGA y el controlador X11. ¡DGA es lo más recomendado! Además, intente usar DGA a través de SDL, muchas veces es mejor.

  • sin usar XFree86: pruebe los controladores en el siguiente orden: vesa, fbdev, svgalib, aalib.

1.2.3.3. Placas Cirrus-Logic

  • GD 7548: incorporada y testeada en la serie de notebooks Compaq Armada 41xx.

    • XFree86 3: funciona en los modos 8/16 bpp. De todas maneras, el controlador es dramáticamente lento y defectuoso en 800x600@16bpp. Recomendado: 640x480@16bpp

    • XFree86 4: el servidor X se congela apenas arranca a menos que la aceleración este desactivada, pero todo se vuelve más lento que en XFree86 3. No tiene soporte de XVideo.

    • FBdev: el framebuffer puede ser activado con el controlador clgenfb del núcleo, aunque a mi me funcionó solo en 8bpp, por lo tanto inservible. La fuente de clgenfb tiene que ser extendido para el ID 7548 antes de ser compilado.

    • VESA: la placa es solamente capaz de VBE 1.2, por lo tanto la salida VESA no puede ser usada. No puede ser usada con UniVBE para que funcione.

    • SVGAlib: detecta un chip Cirrus más viejo. Es lento pero se puede usar con la opción -bpp 8.

1.2.4. Placas de Sonido

  • Soundblaster Live!: con esta placa puede usar 4 o 6 (5.1) canales de decodificación AC3 en lugar de 2. Lea la sección decodificación de AC3 por software. ¡Para la transferencia AC3 por hardware debe usar ALSA 0.9 con emulación OSS!

  • C-Media con salida SP/DIF: transferencia AC3 por hardware es posible con estas placas, vea la sección decodificación de AC3 por hardware.

  • Las características de otras placas no están soportadas en MPlayer. ¡Es muy recomendado leer la sección de placas de sonido!.

1.2.5. Características

  • Decida si necesita GUI (interfaz gráfica de usuario). Si lo necesita, vea la sección GUI antes de compilar.

  • Si desea instalar MEncoder (nuestro gran codificador multiproposito), vea la sección MEncoder.

  • Si tiene una placa sintonizadora de TV compatible con V4L, y desea usarla para ver/capturar y codificar películas con MPlayer, lea la sección entrada de TV.

  • Existe un buen soporte de Menu en Pantalla listo para ser usado. Verifique la sección Menú en Pantalla.

Lo siguiente es armar MPlayer:

./configure
make
make install

En este punto, MPlayer ya está listo para usar. El directorio $PREFIX/share/mplayer contiene el archivo codecs.conf, que se lo usa para decirle al programa todos los codecs y sus posibilidades. Este archivo es necesario solo cuando quiera cambiar sus propiedades, ya que el archivo ejecutable principal contiene una copia interna del mismo. Revise si tiene el archivo codecs.conf en su directorio de inicio (~/.mplayer/codecs.conf) olvidado de alguna instalación previa de MPlayer y borrela.

Note que si tiene un codecs.conf en ~/.mplayer/, el codecs.conf interno y el de sistema serán ignorados por completo. No use esto a menos que quiera trapichear con las cosas internas de MPlayer lo que puede ocasionarle problemas. Si quiere cambiar el órden de búsqueda de los codecs, use la opción -vc, -ac, -vfm, o -afm en la línea de órdenes o en su archivo de configuración (vea la página de manual).

Los usuarios de Debian pueden construir un paquete .deb, es muy simple. Simplemente ejecute

fakeroot debian/rules binary

en el directorio raíz de MPlayer. Vea la sección paquetes de Debian para instrucciones más detalladas.

Siempre revise la salida de ./configure, y el archivo configure.log, ellos contienen información acerca de lo que se compilará, y que no. Quizá quiera ver también los archivos config.h y config.mak. Si alguna de las librerías que tiene instaladas no fueron detectadas por ./configure, por favor revise si tiene los archivos de encabezados correspondientes (normalmente los paquetes -dev) y que sus versiones sean las mismas. El archivo configure.log normalmente dice que falta.

Aunque no es obligatorio, las fuentes deberían ser instaladas para poder usar el texto en pantalla (OSD) y los subtítulos. El método recomendado es instalar una fuente TTF y avisarle a MPlayer que lo use. Vea la sección Subtítulos y OSD para más detalles.