79 - Convertir formatos multimedia en Linux

79 - Convertir formatos multimedia en Linux

Como convertir formatos multimedia de audio y video en Linux, tanto en aplicaciones de escritorio como desde el terminal mediante potentes scripts

1:25
-3:15

Sinceramente esto de convertir formatos multimedia cada vez lo hago menos. Salvo el script que cree hace algún tiempo para crear un video a partir de un audio para tener el podcast en YouTube, lo cierto es que cada vez lo hago menos.

Esto creo que es debido principalmente a dos razones. Por un lado, está el tema que cada vez consumo mas multimedia vía streaming. Por otro lado, antes utilizaba algún dispositivo para consumir el contenido multimedia que tenía problemas con determinados formatos. Sin embargo, actualmente, todo el contenido multimedia que consumo, lo hago a través de dispositivos Android. Ya sea en el móvil, que en este caso es principalmente podcast o en la TV, para lo que utilizo un TVBox.

Sin embargo, esta es mi situación. Es probable que tu estés consumiendo el contenido multimedia, en algún dispositivo que no permite uno u otro formato. Si este es tu caso, en el episodio del podcast de hoy, precisamente quiero tratar la conversión entre formatos multimedia en Linux.

convertir formatos multimedia

Convertir formatos multimedia en Linux

Como te he comentado en la introducción, el objetivo del podcast de hoy es ver diferentes herramientas y aplicaciones, que te permitan convertir entre diferentes formatos multimedia de forma sencilla, y sin excesivas complicaciones.

En este sentido, como hago normalmente, te voy a mostrar algunas herramientas, para el entorno de escritorio, y otras que son para utilizar directamente en el terminal. ¿porque utilizar el terminal para la conversión de archivos? Que te voy a decir. Sin lugar a dudas, la conversión de formatos es carne de automatización.

Así, puedes utilizar dos técnicas,

  • Mediante un cron que cada cierto tiempo revise lo que contienes en un determinado directorio, y si tienes un formato determinado lo convierte a otro
  • Detectando que se han producido cambios en el directorio. En el caso de que así sea, se lanza un script que realice la conversión, si se encuentra algún archivo con el formato a convertir.

Sin embargo, esto te lo comentaré mas adelante para que tu seas el que decida… Antes, primero te quiero comentar las herramientas gráficas.

Herramientas gráficas

HandBrake

Como dicen los propios desarrolladores de HandBrake, esta aplicación, es una herramienta para convertir vídeo de casi cualquier formato, a una selección codecs actuales y ampliamente soportados. Se trata de una herramienta multiplataforma, disponible para los tres grandes sistemas operativos de escritorio, Linux, MacOs y Windows, que es Open Source, liberado bajo licencia GPLv2, y gratuita.

Características

HandBrake tiene una serie de características que lo hacen ideal para el propósito para el que fue creado. Pero sobre todo, está orientado a la sencillez, para que empieces a convertir formatos multimedia cuanto antes.

  • Configuraciones predefinidas. HandBrake, tiene una serie de configuraciones predefinidas para diferentes medios y dispositivos. Así, por ejemplo, puedes encontrar configuraciones para web, para dispositivos como diferentes modelos de iPhone y Android, y mucho mas. Lo cierto es que las, configuraciones predefinidas por defecto son ingentes. Te diría que no te las vas a acabar. Por supuesto, que si ninguna de estas configuraciones predefinidas se adapta a tus necesidades, tu puedes definir o establecer la que tu realmente necesites.
  • Como he comentado anteriormente, HandBrake, puede procesar los formatos multimedia mas habituales, así como DVD o BlueRay, con la condición de que no tengan ningún tipo de protección para evitar copias.
  • Respecto a los formatos de salida, soporta los mas habituales. En lo que se refiere a contenedores, utiliza MP4 y MKV. Codecs de vídeo utiliza H.264 y H265, MPEG-4 y MPEG-2, VP8, VP9 y Theora. Y por último, respecto a los codecs de audio tienes AAC, MP3, Flac, AC3 y Vorbis.
  • Permite la selección por título o capítulo.
  • Se puede convertir por lotes.
  • Permite el tratamiento de subtítulos.
  • Tiene diferentes filtros para vídeos
  • Permite la previsualización de vídeo, tanto en estático como en vivo.

Instalación

HandBrake, se encuentra en los repositorios oficiales de Ubuntu, con lo que su instalación es tremendamente sencilla. Tan solo tienes que hacer clic en instalar HandBrake. O bien recurrir al terminal, y ejecutar la siguiente instrucción,

sudo apt install handbrake

Selene Media Converter

Selene es otro conversor multimedia que permite la conversión tanto de audio como de vídeo. Se trata de una aplicación Open Source liberada bajo licencia GNU/GPLv3, y que soporta casi cualquier formato de entrada, permitiendo convertir a los formatos mas populares. Además de estas características, tiene algunas otras realmente interesantes como,

  • permite pausar y reanudar las conversiones
  • puedes dejarlo funcionando en segundo plano
  • se puede programar para que cuando termine la codificación apague el equipo
  • puedes trabajar directamente desde el terminal, lo que te permitirá realizar scripts, u operaciones sin supervisión. Este es sin lugar a dudas un punto realmente interesantes.

Instalación

Selene Media Converter no se encuentra en los repositorios oficiales de Ubuntu, pero lo puedes instalar fácilmente ejecutando las siguientes instrucciones en un terminal,

sudo apt-add-repository -y ppa:teejee2008/ppa
sudo apt-get install selene

SoundConverter

Si las dos aplicaciones anteriores estaban destinadas a la conversión de cualquier formato multimedia, SoundConverter está especializada exclusivamente en el audio. No solo eso, sino que además, según sus propios desarrolladores, tiene una perfecta integración con el escritorio GNOME. Se trata de una aplicación Open Source liberada bajo licencia GPLv3. Algunas de las características mas interesantes de esta aplicación son las siguientes,

  • Presenta una interfaz de usuario simple, sencilla y minimalista, cumpliendo con los parámetros de diseño de GNOME.
  • La conversión la realiza en modo multihilo, pudiendo procesar un gran número de archivos de forma simultánea y en un tiempo récord.
  • Permite el renombrado automatizado de archivos, así como la creación de directorio, y todo ello en base a etiquetas.

Instalación

SoundConverter se encuentra en los repositorios oficiales de Ubuntu, de forma que la instalación es tan sencilla como hacer clic en instalar SoundConverter, para hacerlo de forma gráfica. O bien, si prefieres recurrir al terminal, solo tienes que ejecutar la siguiente instrucción,

sudo apt install soundconverter

Desde el gestor de archivos Nautilus

Otra interesante opción es realizar las conversiones directamente desde el gestor de archivos Nautilus, Nemo o Caja, dependiendo de si utilizas GNOME, Linux Mint o Mate. En este sentido, hace algún tiempo desarrollé dos herramientas que te pueden ayudar para convertir formatos multimedias.

La primera de las dos herramientas en para convertir vídeo a MP3. Si lo has escuchado bien, básicamente se trata de extraer el audio de un vídeo para poder escucharlo donde quieras. ¿Y para que que quiero esto? Pues para escucharlo tipo podcast. Así, por ejemplo, me resultan especialmente interesantes las charlas TED. Sin embargo, en general, verla, no aporta gran cosa, y la verdad, es que no tengo mucho tiempo para dedicarlo a ver vídeo. Solución de vídeo a MP3.

La segunda de las herramientas es para convertir el formato de audio a OGG. La razón de preferir OGG a MP3 son varias. Además del tema de la licencia, que actualmente se encuentra en tierra de nadie, la ventaja es que la calidad de sonido es, en general, mejor en OGG que en MP3 sobre todo con bitrates bajos.

El funcionamiento de ambas extensiones es realmente sencillo. Solo tienes que seleccionar los archivos que quieres convertir, directamente en tu gestor de archivos Nautilus, Nemo o Caja. A continuación, desde el menú contextual selecciona la opción de conversión que quieras y lo tienes.

Instalación

Ninguna de estas dos extensiones están disponibles en los repositorios oficiales de Ubuntu. Las puedes instalar fácilmente añadiendo el repositorio, actualizando e instalando. La cuestión es que depende del gestor de archivos que utilices, tendrás que añadir uno u otro repositorio, e instalar una u otra aplicación. Así, los repositorios son los siguientes,

  • Nautilus
sudo add-apt-repository ppa:atareao/nautilus-extensions
sudo apt-get install nautilus-convert2ogg
sudo apt-get install nautilus-convert2mp3
  • Nemo
sudo add-apt-repository ppa:atareao/nemo-extensions
sudo apt-get install nemo-convert2ogg
sudo apt-get install nemo-convert2mp3
  • Caja
sudo add-apt-repository ppa:atareao/caja-extensions
sudo apt-get install caja-convert2ogg
sudo apt-get install caja-convert2mp3

Desde el terminal

Como he comentado en la introducción, creo sinceramente, que esto de convertir formatos multimedia, es sin lugar a dudas carne de scripting. No tiene sentido lanzar una interfaz gráfica para hacer algo a lo que no le vamos a prestar atención alguna. Lo suyo es tener un proceso en segundo plano, y que no tengamos que preocuparnos por este proceso. En este sentido, como mucho sería interesante que nos mostrara una notificación en el momento que el proceso a terminado.

A continuación, te indico algunas opciones para realizar tus propios scripts. Voy a indicar las opciones mas habituales,

  • Para bajar la calidad de un MP3 y así reducir el tamaño del mismo.
lame -b 64 archivo_origen.mp3 archivo_destino.mp3
  • Para convertir de MP3 a OGG
mp32ogg archivo_origen.mp3 archivo_destino.ogg
  • Para extraer el audio de un vídeo
ffmpeg -i archivo_origen.avi -ab 128k archivo_destino.mp3

Por supuesto no solo tienes estas opciones. Lo cierto es que puedes convertir casi cualquier cosa en casi cualquier otra. Así, puedes convertir imágenes PNG o JPG a vídeo, convertir un vídeo de YouTube a un GIF, convertir un MPG a 3GP, o a FLV. Pero no solo esto, sino que además puedes añadir subtítulos e incorporarlos directamente al propio video.

En este sentido, te recomiendo que visites Guia Ubuntu, donde encontrarás un listado muy extenso de diferentes opciones de conversión.

Script

Si estás siguiendo el tutorial de scripts en Bash, se te estará haciendo la boca agua, con las posibilidades que estás viendo. Así, para convertir todos los archivos de audio de MP3 a OGG, que no estén convertidos todavía, podemos hacer algo como lo que ves a continuación,

#!/bin/bash
for i in *.mp3
do
    ogg=${i/.mp3/.ogg}
    if [ ! -e "$ogg" ];then
        ffmpeg -i "$i" -vn -acodec libvorbis -y "$ogg"
    fi
done

Este sencillo script lo puedes poner programar directamente con CRON para que se ejecute cada 30 minutos por ejemplo. O también mediante un timer de Systemd.

Sin embargo, puedes dar un paso mas. Se trata de mejorar el script para que el monitorice el directorio en cuestión. Para ello, te recomiendo le des una lectura al artículo publicado por David en Colaboratorio.net en el que habla sobre el registro de cambios en el sistema de ficheros con inotify.

De esta manera puedes monitorizar ese directorio, en busca de cambios correspondientes a añadir un archivo con extensión MP3. En ese caso, realizas la conversión. Fíjate en el script,

!/bin/bash
while inotifywait -e create --format "*.mp3" --timefmt %d-%m-%Y . >> out.log  2>&1
do
    for i in *.mp3
    do
        ogg=/tmp/${i/.mp3/.ogg}
        if [ ! -e "$ogg" ];then
            ffmpeg -i "$i" -vn -acodec libvorbis -y "$ogg" >> out.log 2>&1
            cp "$ogg" ./
        fi
    done
done

Si no has votado por atareao.es en los Open Awards 2019, por favor, ayúdame para darle mas visibilidad a este proyecto. Muchas gracias por tu ayuda, para este, nuestro proyecto.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *