Para las pruebas, quiero convertir un archivo MP3 y WAV que tengo a Opus, ¿cuáles son los pasos para hacerlo?
conversion
ogg-opus
Luis Alvarado
fuente
fuente
Respuestas:
Por defecto, el convertidor de audio incluido con las herramientas opus puede convertir audio en formato raw, wave o AIFF. La sintaxis mínima utiliza la configuración predeterminada:
Es posible que queramos agregar una mejor tasa de bits como el valor predeterminado de 96 kbps con la opción
--bitrate N.nnn
(para todas las opciones, consulte la página de manual de opusenc).Para convertir mp3 "sobre la marcha". es decir, sin crear un archivo temporal, podemos canalizar la salida de avconv a opusenc de esta manera:
fuente
for f in *.flac; do ffmpeg -i "$f" -f wav - | opusenc --bitrate 140 - "${f%.flac}.opus"; done
(Elegí 140 como bitrate porque según esto es más que suficiente para archivos estéreo.Ubuntu 14.04 y Debian 8 vienen con la versión 9 de
libav-tools
sus repositorios, y tiene soporte incorporado para Opus a través del paquetelibopus0
.Ejemplo 1: Vuelva a codificar un archivo de audio como opus
Con la versión 9
libav-tools
elibopus0
instalada, simplemente puede, por ejemplo, hacer:¿Qué hacen las opciones?
-i file.mp3
establece el archivo de entrada.-map 0:a
seleccionará todas las secuencias de audio (a
) del archivo de entrada0
. Obtenga más información-map
sobre https://libav.org/avconv.html#Advanced-options-codec:a opus
selecciona el codificador opus para las secuencias de audio (a
). Leer más acerca-codec
de https://libav.org/avconv.html#Main-options .-b:a 100k
establece la velocidad de bits del audio a 100 kilobit / s. Leer más acerca-b
de https://libav.org/avconv.html#Codec-AVOptions-vbr on
activa la tasa de bits variable. Esta es una opción específica para libopus. Aquí están todas las opciones para libopus:file.opus
establece el archivo de salida.Ejemplo 2: toma el audio de un archivo de video y codifícalo como opus
Tome la segunda secuencia de la primera entrada (
-map 0:1
), que es la secuencia de audio. Codifíquelo con libopus a 100 kbit / s con velocidad de bits variable en:Con el paquete
mediainfo
instalado:fuente
-map 0:a
hace? (¿Y tal vez detallar toda la línea?)Opus el 12.04
Sin embargo, en 12.04 (Precise), existen problemas de dependencia con la instalación de los códecs y herramientas opus, por lo que he descubierto que la mejor solución es la que ha estado disponible recientemente: compile el codificador y decodificador de audio opus como se indica aquí , y compile
ffmpeg
con soporte de opus agregando--enable-opus
a las opciones de configuración deffmpeg
(como se enumera en la guía de compilación ).Sé que
ffmpeg
está desaprobado en Ubuntu a favorLibav
, pero compilar es una buena manera de obtener un codificador / decodificador opus completamente funcional integrado enffmpeg
sí mismo. Luego puede usarlo para convertir archivos (primero a wav) y luego a.opus
. La documentación instalada con libopus y ffmpeg revelará todas las opciones que se pueden usar para convertir archivos.Al convertir archivos con
ffmpeg
después de la compilación, debe especificar-acodec libopus
offmpeg
no utilizará el códec opus:Luego puede probar el archivo creado con
Consejos de compilación
No es necesario reproducir la guía aquí en su totalidad, pero vale la pena señalar una o dos cosas:
Primero debe instalar las dependencias como se enumeran (omito
yasm
de la lista: vea mi segundo punto):Hay un problema que debe señalarse: la compilación de git parece querer
yasm-1.2
y no está disponible, por lo que debe compilar la fuente desde el sitio oficial , pero es simple. Simplemente elimine las versiones instaladas deyasm
, luego desempaquete el archivo descargado,cd
a la carpeta, ejecute./configure && make
y luegosudo checkinstall
. Si alguna otra compilación requiere la versión anterior, puede eliminar esta versión e instalar la versión del repositorio.Es necesario eliminar cualquier existente
libav
,ffmpeg
,x264
,libvpx
, ofdk-aac
paquetes antes de que comiencen a evaluar.Es fundamental que se compila e instala
x264
,fdk-aac
,libvpx
yopus
antes de construirffmpeg
, ya que esas bibliotecas serán utilizados en la construcción.No olvide agregar
--enable-opus
a las opciones de configuración cuando ejecute laffmpeg
compilación.La versión de opus compilada era 1.1alpha, por lo que es posible que deba volver a compilar la biblioteca de opus y ffmpeg en el futuro nuevamente cuando se lance una nueva versión.
Puede usar
ffplay
para reproducir cualquier archivo opus que cree.fuente
Así es como lo hago:
EDITAR:
Para audiófilos:
No es necesario especificar la
--maxdelay 10
opción porque loopusenc
hace de forma predeterminada.Salida de consola para esta conversión de archivo (
--bitrate 320
):¡Es súper rápido! Menos de 8 segundos con una complejidad de 10 (complejidad computacional de codificación (0-10, valor predeterminado: 10). Cero proporciona las codificaciones más rápidas pero de menor calidad, mientras que 10 proporciona la codificación más alta pero más lenta) y un tiempo de retraso máximo de 10 ms ( Retraso máximo del contenedor en milisegundos (0-1000, predeterminado: 1000)), por lo que si omite el tiempo en una canción, el efecto de recorte tendrá una duración de 10 ms, por lo que es imperceptible (intente con 1000 y escuche la diferencia de tiempo de omisión con su ratón). La tasa de bits es VBR por defecto. 320kbps funcionó para mí, así que es opcional, juegue con este número:
--bitrate N.nnn
=> Bitrate objetivo en kbit / seg (6-256 por canal)Por cierto, la codificación de MP3 a OPUS no es una buena idea, no va a sonar mejor, sus algoritmos de compresión son demasiado diferentes. Pero desde FLAC o WAV o cualquier otro formato de audio sin pérdida , esa es otra historia.
Nota: Para codificar otro archivo, simplemente presione la flecha hacia arriba en el mismo terminal para llamar al último comando y cambiar el nombre de los archivos de entrada y salida.
Si está buscando una interfaz gráfica de usuario de ffmpeg / avconv, quizás TraGtor sea lo que necesita.
También puede verificar las diferencias de espectograma entre los formatos Lossless y Lossy a altas tasas de bits con Spek o Audacity .
fuente
Error parsing input file: Hardvapour remix-.mp3
que estoy usando 16.04opus-tools
yAudex
.Abra Audex y agregue un nuevo perfil llamado Opus, agregue el patrón de Comando;
opusenc $i --comment="TRACKNUMBER="$trackno"" --artist "$artist" --album "$title" --title "$ttitle" --date "$date" --picture "$cover" $o
y sufijo
opus
fuente