Cómo Transcodificar Archivos FLAC Con flac2all en Linux
flac2all es una utilidad simple que te permite convertir archivos FLAC de alta calidad a casi cualquier formato de audio moderno. A diferencia de ffmpeg, esta utilidad automatiza el proceso de clasificación, etiquetado y codificación de tu audio FLAC. flac2all es fácil de instalar y usar. Aprende cómo utilizar este programa altamente versátil que puede actuar como una interfaz para todas tus necesidades de transcodificación de audio.
Tabla de Contenidos
- Por qué Usar flac2all
- Instalando flac2all
- Usando flac2all para Transcodificar Audio
- Transcodificando a Múltiples Formatos
- Creando Trabajos de Transcodificación Personalizados
- Creando un Clúster de Transcodificación flac2all
- Configurando un Montaje de Red
- Iniciando el Clúster flac2all
- Preguntas Frecuentes
También lee: 4 Formas de Aumentar la Duración de la Batería de Tu Laptop Linux
Por qué Usar flac2all
En su núcleo, flac2all es tanto un envoltorio como un programa de programación. Toma una lista de archivos FLAC y utiliza varios códecs para ordenar y gestionar el proceso de transcodificación.
Una ventaja de este enfoque es que flac2all no depende de un solo codificador, lo que significa que puedes adaptar fácilmente el programa a cualquier nuevo formato que desees usar. Por ejemplo, puedes instalar el codificador personalizado Fraunhofer FDK AAC junto con AAC regular.
Finalmente, flac2all también preserva la estructura de carpetas de tu colección FLAC, por lo que no necesitas rehacer el directorio de tu archivo mientras usas este programa. Estas características hacen de flac2all una herramienta útil si estás buscando una forma rápida y fácil de recrear tu colección FLAC en un formato diferente.
También lee: Las Diferencias entre Su, Sudo Su, Sudo -s y Sudo -i
Instalando flac2all
Antes de instalar flac2all, es importante obtener todas sus dependencias para asegurar que no habrá conflictos después de la instalación:
sudo apt install python3 flac python3-pip python3-zmq python3-notcurses lame opus-tools
Lo siguiente que debes hacer es descargar flac2all a través de pip, un gestor de paquetes específico de Python que puedes usar para instalar software adicional. Ejecuta el siguiente comando para usar pip:
pip3 install --user flac2all Esto instalará flac2all en el directorio “.local” del usuario actual. Así que si estás en un sistema de múltiples usuarios, otros usuarios no podrán ejecutar el programa.
Para ejecutar flac2all, incluye tu directorio “.local” en la variable PATH de tu máquina añadiendo la siguiente línea de código a tu archivo “.bash_profile”:
PATH=$PATH:/home/$USER/.local/bin/
export PATH Finalmente, reinicia o cierra sesión en tu sesión actual para aplicar los nuevos ajustes, tras lo cual puedes ejecutar flac2all -h para confirmar que has instalado correctamente el programa.
Usando flac2all para Transcodificar Audio
El desarrollador de flac2all diseñó el programa para que sea lo más simple posible. Por ejemplo, la sintaxis para transcodificar un directorio FLAC a un solo formato se ve así:
flac2all mp3 -o ./output ./royalty-free - El primer elemento después de “flac2all” destaca el formato al que deseas transcodificar. Estoy convirtiendo mi carpeta FLAC a MP3 en este ejemplo.
- El segundo elemento contiene opciones para el trabajo de transcodificación actual. Aquí, la opción
-ole dice a flac2all que envíe los archivos MP3 a la carpeta “output”. - Finalmente, el tercer elemento indica la carpeta de origen para tus archivos FLAC. En mi caso, es mi carpeta “royalty-free”.
También lee: Cómo Redimensionar y Optimizar Imágenes Desde la Terminal de Linux
Transcodificando a Múltiples Formatos
También puedes usar flac2all para transcodificar archivos a múltiples formatos en paralelo, lo cual puede ser útil si deseas transferir tu archivo a reproductores con diferentes requisitos de formato.
Por ejemplo, puedo ejecutar el siguiente comando para transcodificar mi carpeta “royalty-free” a MP3 y Opus:
flac2all mp3,opus -o ./output ./royalty-free Nota que una transcodificación de múltiples formatos tomará más tiempo que una transcodificación de un solo formato porque flac2all codificará cada archivo en tu directorio para cada formato que especifiques. En mi caso, transcodificar MP3 y AAC tomará el doble de tiempo que solo transcodificar MP3.
Creando Trabajos de Transcodificación Personalizados
Aparte de crear transcodificaciones simples, es posible ajustar cómo se comportan los codificadores con flac2all, lo cual es especialmente útil si deseas que la copia de tu archivo tenga una cierta calidad de audio. Mira el siguiente comando, por ejemplo.
flac2all mp3 --lame-options='b 320' -o ./output ./royalty-free Este comando le dice al programa que utilice el codificador MP3 LAME para transcodificar mi carpeta “royalty-free” a una tasa de bits constante de 320k.
También puedes crear trabajos personalizados para transcodificaciones de múltiples formatos. Por ejemplo, el siguiente comando le dice a flac2all que cree una transcodificación personalizada con MP3 y Opus:
flac2all mp3,opus --opus-options='downmix-mono' --lame-options='b 320' -o ./output ./royalty-free
Creando un Clúster de Transcodificación flac2all
Si bien puedes usar flac2all en una sola computadora, también es posible expandir el programa a múltiples sistemas, una solución práctica para acelerar el proceso de transcodificación. Asegúrate de tener los siguientes recursos listos:
- Dos o más máquinas que puedan conectarse directamente entre sí
- Un NAS al que puedas acceder en todas las máquinas porque el proceso maestro de flac2all solo instruye a sus clientes trabajadores a procesar datos existentes
- Una conexión de red confiable entre el proceso maestro y sus clientes trabajadores
Conociendo estos factores, este tutorial se centrará en crear un pequeño clúster de flac2all entre dos máquinas Ubuntu 22.04.
También lee: Cómo Configurar y Usar SSH en Linux
Configurando un Montaje de Red
Crea un montaje de almacenamiento en red para comenzar. Para esto, voy a usar SSHFS ya que es fácil de usar y está disponible para casi todas las distribuciones de Linux.
Para comenzar, instala SSHFS en todas las máquinas que deseas usar:
sudo apt install ssh sshfs
A continuación, crea la carpeta a la que se montará SSHFS. Crearé una carpeta “royalty-free” en el directorio principal de mi máquina trabajadora:
mkdir /home/$USER/royalty-free
Ahora monta el directorio “royalty-free” en cada una de tus máquinas trabajadoras con el siguiente comando:
sshfs -o allow_other,default_permissions [email protected]:/home/$USER/royalty-free /home/$USER/royalty-free
Iniciando el Clúster flac2all
Ahora puedes iniciar el clúster de transcodificación ejecutando el proceso maestro y añadiendo tanto -m como -C a flac2all.
Por ejemplo, ejecuta este comando en tu máquina principal para crear un proceso maestro:
flac2all lame,aac -m -C --lame-options='b 320' -o /home/$USER/output /home/$USER/royalty-free
A diferencia del flac2all regular, crear un proceso maestro no iniciará la sesión de transcodificación. Para transcodificar archivos, también necesitas conectar a los trabajadores al proceso maestro ejecutando el siguiente comando en tus máquinas trabajadoras:
flac2all_worker 192.168.68.10 Una vez hecho esto, el cliente trabajador creará un proceso sin cabeza que se conecta al programa maestro. Después de eso, flac2all comenzará inmediatamente una vez que encuentre un número suficiente de trabajadores en espera.
También lee: Cómo Descargar y Configurar DaVinci Resolve en Linux
Preguntas Frecuentes
flac2all no termina después de procesar mis archivos de audio. ¿Cómo soluciono este problema?
Esto ocurre cada vez que hay un conflicto entre flac2all y sus dependencias de Python. Soluciona esto actualizando tu instalación para reflejar cualquier cambio entre flac2all y sus dependencias. Ejecuta pip install --user --upgrade flac2all para actualizar flac2all.
flac2all está lanzando un error “FileNotFound”. ¿Está rota mi instalación?
¡No! Este problema ocurre cuando el programa no puede detectar el codificador para el formato al cual deseas transcodificar.
Por ejemplo, ejecutar flac2all opus […] sin el codificador Opus resultará en un error “FileNotFound”. Puedes solucionar el problema instalando ffmpeg. Este es un programa general que también instalará la mayoría de los codificadores de audio comunes. Ejecuta sudo apt install ffmpeg para añadir ffmpeg a tu sistema.
El proceso trabajador no pudo encontrar ningún medio en mi montaje SSHFS. ¿Está roto flac2all?
No. Esto generalmente ocurre debido a una discrepancia de directorios entre el proceso maestro y sus trabajadores. Para asegurar que el clúster de transcodificación funcione, verifica que las rutas de archivo entre cada máquina sean las mismas ejecutando pwd tanto en tu carpeta de medios como en la raíz de tu montaje SSHFS.
Crédito de la imagen: Unsplash y Wikimedia Commons. Todas las alteraciones y capturas de pantalla por Ramces Red.