MP3 en Gnome
[ Sistemas operativos / Linux ]



Soy un usuario de GNU/Linux plenamente convencido de sus posibilidades como PC de escritorio desde que probé la versión de Gnome de Helix Code. Tengo no obstante algún problemilla que me gustaría consultaros. Cuando desde el gestor de archivos de Gnome hago doble clic sobre un fichero MP3 comienza a sonar, pero no sé cómo pararlo hasta que acaba. Si pulso por ejemplo mientras sobre otro fichero, sonarán los dos a la vez. A propósito, la multitarea de GNU/Linux me ha sorprendido muy gratamente sobre la de Windows 98 y NT Workstation. Sin embargo, a veces oyendo un MP3 se notan una especie de cortes si se está realizando alguna operación especialmente pesada en el disco duro, como copiar un fichero de varios "megas".
Luis Calle Cádiz



Lo que nos cuentas en primer lugar ocurre porque el reproductor de MP3 que lanza por defecto Gnome es mpg123, que es un programa no interactivo que se ejecuta en segundo plano. Está diseñado para ejecutarse sobre la consola y se para pulsando "Control+c". Ahora bien, al ser un programa no interactivo no necesita un terminal, de modo que en la configuración por defecto de Gnome se lanza tal cual, en lugar de dentro de un emulador de terminal. Al no tener ventana asociada, no podemos seleccionarla para que recoja el evento "Control+c" ni para cerrarla. Habrá por tanto que usar los mecanismos propios del sistema Unix.

La forma genérica de parar un proceso es Unix es buscar su pid con ps -ef y pedirle "educadamente" que acabe ejecutando kill <pid>. Si no responde le obligamos a morir con kill -SIGKILL <pid>. Linux además tiene una variante de kill en la que no se usa el pid sino el nombre del ejecutable, que además tiene la propiedad de que si hay varias copias lanzadas las matará todas. Se trata de killall y en Gnome la podemos usar por ejemplo desde la opción Lanzar.... En nuestro caso ejecutaríamos killall mpg123, mientras que por ejemplo con killall netscape-communicator cerraremos todas las ventas de este navegador. ¡Ojo con utilizar killall en otro sistema POSIX distinto de Linux como Solaris! Allí su significado cambia y no mata todos los procesos con ese nombre sino directamente todos los procesos de la máquina.

Con la llegada de los escritorios para matar un proceso ya no hace falta buscar su pid o el nombre de su ejecutable para pararlo, contamos con herramientas interactivas. Es el caso de gtop (monitor del sistema en el menú programas/sistema), que muestra información sobre los procesos que están ejecutándose y su consumo en CPU y memoria. Este programa permite seleccionar con el ratón cualquier proceso y pedirle que acabe de forma suave o brusca (usando -SIGKILL). Para los que prefieran el terminal puro y duro a X-Window, existe un programa llamado gitps que también permite matar procesos seleccionándolos con las teclas del cursor.

De todos modos, lo que también puedes hacer es usar otro reproductor de MP3 que sí sea interactivo; uno muy bueno es el XMMS, que tiene muchas opciones y permite cambiar su aspecto mediante skins. De hecho, al pulsar el botón derecho sobre el fichero verás que te da la opción de usar xmms. Si quieres que utilice por defecto xmms al hacer doble clic en lugar de mpg123, en Gnome es muy fácil asociar aplicaciones a tipos de ficheros. Dentro del gestor de archivos, el menú comandos tiene la opción editar tipos MIME. Buscas la extensión "mp3" o directamente el tipo MIME "audio/x-mp3" y ya sólo tienes que cambiar en Abrir el comando mpg123 %f por xmms %f.

Como podrás comprobar, el sistema de Gnome es mucho más completo que el de Windows. Permite por ejemplo reconocer el tipo de los ficheros por su contenido en lugar de por su extensión o configurar para un fichero concreto un programa distinto para abrirlo, por medio de las propiedades que salen al pulsar el botón derecho. Además, permite fijar por separado un programa para abrir con doble clic, para visualizar y para editar, además de contar con un visualizador genérico de texto y ficheros binarios, y ser configurable el editor por defecto.

Los problemas que comentas con la reproducción del MP3 pueden deberse a que algunas operaciones monopolizan el kernel por un tiempo que no es apreciable en las tareas ordinarias de un servidor, pero sí en multimedia. La multitarea de los sistemas operativos fuerza a los procesos a liberar la CPU tras un número determinado de milisegundos si hay otros esperando, pero sólo mientras se ejecuta en modo de usuario: cuando se procesa una llamada al sistema el kernel no se interrumpe a sí mismo, tanto por simplicidad como por eficiencia. El lado negativo es que estando la CPU en realidad muy poco utilizada, se puede dar el problema que comentas por ejemplo al operar con ficheros muy grandes.

Hay parches para limitar también el tiempo de CPU en modo kernel, así como para convertir Linux en un kernel de tiempo real. Sin embargo, la solución para la versión 2.4 del kernel será más simple: se ha reducido la latencia del núcleo en aquellos puntos en que monopolizaba la CPU por más milisegundos de los recomendables en reproducción de multimedia. Si buscas en números antiguos de la revista electrónica LWN (lwn.net), en la sección dedicada al kernel encontrarás más detalles.

Aprovechamos para comentarte que los ficheros MP3 tienen severos problemas con las patentes y que la empresa propietaria piensa aplicar en breve tasas por su difusión. Existe un substituto llamado Vorbis que ofrece además varias ventajas técnicas. Por el momento los reproductores y codificadores son prototipos de prueba y consumen más tiempo de CPU que sus equivalentes para MP3, pero pronto comenzarán a optimizarse. Para más información: www.vorbis.org






Anterior         Siguiente         





© 2002 VNU Business Publications España. Queda terminantemente prohibida su reproducción total o parcial por cualquier medio sin el permiso explicito y por escrito del propietario del copyright.