Aquí hay un rompecabezas de audio MP3 de Linux que me ha estado molestando por un tiempo:
¿Cómo recortar los primeros segundos de un archivo de audio MP3? (No puedo ffmpeg -ss
trabajar con el formato 00:01 o 1,000)
Hasta ahora, para hacer lo que quiero, recurro a hacerlo de una manera GUI que quizás sea más lenta para un solo archivo, y definitivamente más lenta para un lote de archivos.
Respuestas:
Para editar mp3 en Linux, recomendaría Sox . Tiene un
trim
efecto fácil de usar que hará lo que le pidas (vea losman sox
datos - busque (presione/
) para "recorte de inicio"). Ejemplo:No lo mencionó, pero si su objetivo es simplemente eliminar el silencio al comienzo de los archivos, encontrará el
silence
efecto mucho más útil (man sox
busque "períodos anteriores")fuente
trim
simplicidad. La única decepción fuesox FAIL formats: can't open output file 'blah.mp3': SoX was compiled without MP3 encoding support
... así que, vuelva a ingresar ffmpeg: /no handler for file extension mp3
Puede intentar usar mp3splt , que puede dividir archivos MP3 y Ogg y tiene la ventaja de que no codifica de nuevo el archivo, evitando así la pérdida de calidad.
fuente
mp3splt "$file" 4.12 27.55.7
... Permite un formato de nombre de salida personalizado y múltiples puntos divididos.Asegúrese de que sus especificaciones de tiempo comiencen con horas.
Para citar la página de manual de ffmpeg :
Eso significa que cuando elige la segunda sintaxis, solo la
.xxx
parte es opcional. De lo contrario, ffmpeg podría analizarlo incorrectamente como segundos.Lo mismo vale para la duración:
Otro escollo es el orden de los argumentos de ffmpeg (por ejemplo, las opciones
-ss
/-t
para un archivo de entrada tienen que venir antes que la-i
opción).Ejemplo
Con la especificación
-ss 1:05:59.3 -t 2:03.9
obtendría un resultado diferente (es decir, una pieza de 2 segundos de longitud).(Probado en Fedora 17 con ffmpeg versión 0.10.7.)
fuente