Dividir un archivo de audio en fragmentos de una longitud específica

Dividir un archivo de audio en fragmentos de una longitud específica

Tengo varios archivos de audio largos (80 minutos cada uno; m4a) y quiero dividirlos en partes de 5 o 10 minutos.

Veo muchas preguntas sobre cómo dividir un archivo de audio en pausas prolongadas, tonos, etc., pero parece que no puedo encontrar ninguna sobre esta sencilla operación. ¿Alguien sabe una forma sencilla de hacer esto?

Por supuesto, algo automático y de línea de comandos está bien, incluso es preferible.

¡Gracias de antemano!

Respuesta1

Con ffmpeg reciente (descargue una compilación estáticade aquí):

ffmpeg -i in.m4a -f segment -segment_time 300 -c copy out%03d.m4a

Esto utiliza el muxer de segmento y copia los flujos de bits. Si su archivo tiene transmisiones de audio y video, puede desactivar la transmisión de video con -vn.


Aquí tienes una frase, solo necesitasRubíyFFmpeginstalado:

ruby -e '(0..4500).step(300) { |x| system "ffmpeg -ss #{x} -i in.m4a -c copy -t 300 out-#{x}.m4a"}'

Simplemente ejecútelo en la misma carpeta donde in.m4aestá. Copiará el flujo de bits de audio, por lo que ejecutarlo probablemente llevará menos de unos segundos.

Para explicar:

  • 4800 segundos es la duración del archivo de audio (80 minutos × 60 segundos), por lo que nuestra última división es de 4500 (4800 - 300 segundos).
  • Pasamos de 0 a 4500, y dividimos cada 300 segundos (5min × 60s).
  • FFmpeg se iniciará a la hora especificada por-ss
  • Y se copiará durante el tiempo especificado por-t
  • Escribirá varios archivos de salida llamados out-<x>.mp4, donde <x>está la hora de inicio en segundos.

Respuesta2

Yo mismo estaba buscando una solución para esto. La forma más fácil que encontré para hacer esto es a través deMP4Box:

mp4box -split 300 infile.m4a

Donde "300" es el tiempo en segundos. MP4Box escribirá automáticamente archivos de salida numerados.

(No es necesario instalar toda la gran aplicación GPAC. Estos son los archivos que puede extraer del archivo para que funcione: js.dll; libeay32.dll; libgpac.dll; MP4Box.exe; ssleay32.dll)

Respuesta3

Ha pasado un tiempo desde que se hizo esta pregunta, pero después de jugar con Ruby y ffmpeg decidí que tenía que haber una manera más fácil de hacer esto dentro de Windows, y descubrí que la hay.

Descargar e instalar Audacity

Cree un archivo de texto en algún lugar donde pueda encontrarlo y pegue la siguiente cadena en él: (intervalos de 300 segundos, es decir, 5 minutos, 10 minutos serían 600 intervalos, etc...)

0       300  
300     600  
600     900  
900     1200  
1200    1500  
1500    1800  
1800    2100  
2100    2400  
2400    2700  
2700    3000  
3000    3300  
3300    3600  
3600    3900  
3900    4200  
4200    4500  
4500    4800  
4800    5100  
5100    5400  
5400    5700  
5700    6000  
6000    6300  
6300    6600  
6600    6900  
6900    7200  
7200    7500  
7500    7800  
7800    8100  
8100    8400  
8400    8700  
8700    9000  
9000    9300  
9300    9600  
9600    9900  
9900    10200  
10200   10500  
10500   10800  
10800   11100  
11100   11400  
11400   11700  
11700   12000  
12000   12300  
12300   12600  
12600   12900  
12900   13200  
13200   13500  
13500   13800  
13800   14100  
14100   14400  
14400   14700  
14700   15000  

Solo asegúrese de que la cantidad de intervalos sea mayor que la duración total de sus archivos de audio. Creé este que dura más de tres horas, lo suficientemente largo para mis necesidades, agréguele más para satisfacer sus necesidades.

Importe el archivo de audio a Audacity y realice cualquier equilibrio y otras ediciones que desee, luego haga clic en archivo>etiquetas>importar etiquetas

Seleccione su archivo de texto, luego seleccione la pista de etiqueta y la pista de audio al mismo tiempo y haga clic en archivo>Exportar múltiple.

Cambie el tipo de archivo al que desea exportar y ajuste la configuración, luego seleccione la carpeta de destino.

Siempre cambio el patrón de numeración a Numeración después del prefijo de nombre de archivo y escribo el nombre de archivo que quiero en el cuadro y el programa agregará los números, presiono Exportar y ¡viola!

Respuesta4

MP4Box funciona perfecto. Siempre es genial poder hacer las cosas desde la terminal. Manera más rápida.

Esta es la página de descarga: https://gpac.wp.imt.fr/downloads/gpac-nightly-builds/ Instalas el programa, luego puedes trabajar desde la terminal, no se necesita nada más.

Probado, el comando dfkt dijo que funciona perfecto: mp4box -split 59 infile.m4a

En mi caso, quería dividir en m4a <1min, para facilitar el uso de voz a texto de Google.

Audacity puede funcionar bien, pero en mi caso siempre prefiero trabajar con comandos que con una interfaz de usuario gráfica. La mejor solución para mp4box. No doy nueva información, el crédito es por dfkt (gracias hombre). Solo estoy validando que es una gran solución.

información relacionada