15 ejemplos impresionantes de manipular archivos de audio utilizando intercambio sano (SOX)

Este artículo forma parte del Software en curso para la serie de los frikis. SoX es sinónimo de Así und e X el cambio. SoX es una línea de comando herramienta para uso de audio multiplataforma que funciona en Linux, Windows y MacOS. Es muy útil en las siguientes áreas en el trato con los archivos de audio y de la música.

  • convertidor de archivos de audio
  • Editar archivos de audio
  • Cambiar atributos de audio
  • Adición de efectos de audio
  • Plus montón de características avanzadas de manipulación de sonido


En general, los datos de audio es descrito por las siguientes cuatro características:

  1. tarifa – La frecuencia de muestreo es en muestras por segundo. Por ejemplo, 44100/8000
  2. tamaño de datos – La precisión de los datos se almacenan pulg Por ejemplo, 8/16 bits
  3. codificación de datos – Lo que codifica el tipo de datos utiliza. Por ejemplo, u-ley, una ley
  4. Canales – ¿Cuántos canales están contenidos en los datos de audio, por ejemplo, estéreo 2 canales

SoX soporta más de 20 audio. formatos de archivo. Para obtener la lista de todos los formatos soportados, ejecute sox-h desde la línea de comandos. Una de las principales ventajas de una herramienta de audio / música de línea de comandos es fácil de usar en los scripts para realizar tareas más complejas en modo batch.

Los 15 ejemplos mencionados a continuación puede ser usado para manipular archivos de audio en Unix, Windows y MacOS. Asegúrese de descargar la utilidad SoX correspondiente a su plataforma de los Medias -. Página de descargas Intercambio de sonido

1. Combine archivos de audio múltiple para solo archivo

Con el flag-m, sox agrega dos archivos de entrada para producir su salida. El ejemplo siguiente añade first_part.wav y second_part.wav dejando el resultado en whole_part.wav. También puede utilizar soxmix comando para este propósito.

 $  Sox-m whole_part.wav /> first_part.wav second_part.wav 


$ soxmix first_part.wav second_part.wav whole_part.wav

2. Extracción de parte del archivo de audio

Recortar puede recortar el audio no deseado del archivo de audio

 Sintaxis:.. Sox old.wav new.wav recortar [SEGUNDO PARA INICIAR] [SEGUNDOS DURACION] 
  • SEGUNDO PARA COMENZAR - Punto de partida, en el archivo de voz
  • SEGUNDOS

  • DURACIÓN -.. Duración del archivo de voz para eliminar

El siguiente comando extraerá primero 10 segundos desde input.wav y almacenado en output.wav

 $  sox input.wav output.wav recortan 0 10 
 

3. De aumento y disminución de volumen Uso de la opción-v

Aumentar Volumen

 $  sox-v 2.0 foo.wav bar.wav 

Disminuir Volumen

Si tenemos que bajar el volumen de algunos archivos, podemos bajar a ellos mediante los números negativos. Menor número negativo se volverá más suave. En el siguiente ejemplo, la primera orden (-0,5) será más fuerte que el segundo comando (-0,1)

 $  sox-v srcfile.wav -0,5 test05.wav 

$ sox-v -0,1 srcfile.wav test01.wav

4. Obtener información de archivo de audio

La opción de estadísticas puede proporcionar gran cantidad de información estadística acerca de un archivo de audio especificado. La opción-e indica sox no generar cualquier salida que no sea la información estadística

 $  sox foo.wav-e stat 
Las muestras leen:. 3528000 />
escalado por: 2147483647,0
amplitud máxima: 0.999969
amplitud mínima: -1.000000
línea media amplitud: -0.000015
norma media: 0.217511
Mean amplitud: 0.003408
RMS de amplitud: 0.283895
delta máxima: 1.478455
delta mínima: 0.000000
Mean delta: 0.115616
RMS delta: 0.161088
frecuencia Rough: 3982
Ajuste de volumen: 1.000

5. Juega una canción de audio

Medias proporciona la opción para reproducir y grabar archivos de sonido. En este ejemplo se explica cómo reproducir un archivo de audio en Unix, Linux. Reproducción de un archivo de sonido se logra mediante la copia del archivo en el dispositivo especial de archivos / dev / dsp. El siguiente comando juega el music.wav archivo:. Opción-t especifica el tipo del archivo / dev / dsp

 $  sox-t music.wav ossdsp / dev / dsp 

También puede utilizar el comando de reproducción para reproducir el archivo de audio como se muestra abajo

 Sintaxis:. audio_effects opciones de reproducción de nombre de archivo 

$ play-r 8000-w music.wav

6. Juega un revés Audio Song

Utilice el efecto «inversa» para invertir el sonido en un archivo de sonido. Esto invertirá el archivo y almacenar el resultado en output.wav

 $  sox input.wav output.wav revertir 

También puede utilizar el comando play para escuchar la canción al revés sin modificar el archivo de origen como se muestra a continuación.
$

 jugar test.wav revertir 

7. Grabar un archivo de voz

'play' y los comandos 'rec' son los comandos compañero para sox. / Dev / dsp es el muestreo digital y dispositivo de grabación digital. Leyendo el dispositivo activa el convertidor A / D para la grabación y el análisis de sonido. Archivo / dev / dsp funciona tanto para la reproducción y grabación de muestra para escuchar.

 $  Sox-t ossdsp / dev / dsp test.wav 

También puede utilizar el comando rec para la grabación de voz. Si SoX se invoca como 'rec' el dispositivo de sonido predeterminado se utiliza como fuente de entrada.

 $  Rec-r 8000-c 1 record_voice.wav 

8. Cambio de la velocidad de muestreo de un archivo de sonido

Para cambiar la frecuencia de muestreo de un archivo de sonido, utilice la opción-r, seguido de la frecuencia de muestreo a utilizar, en Hertz. Utiliza el siguiente ejemplo, para cambiar la frecuencia de muestreo del archivo 'old.wav' a 16.000 Hz, y escribir el resultado en 'new.wav'

 $  sox old.wav-r 16000 new.wav 

9. Cambio del tamaño de muestreo de un archivo de sonido

Si aumentamos el tamaño de la muestra, vamos a obtener una mejor calidad. Tamaño de la muestra para el audio se expresa más comúnmente como 8 bits o 16 bits. Audio de 8 bits se utiliza más a menudo para la grabación de voz.

  • -B Muestra el tamaño de los datos en bytes
  • -w Tamaño de la muestra de datos en palabras
  • -l Muestra el tamaño de los datos en las palabras largas
  • -d Tamaño de la muestra de datos en palabras dobles largos

El siguiente ejemplo convertir archivos de audio de 8 bits a archivos de audio de 16 bits.

 $  sox-b-w input.wav output.wav 

10. Cambio del número de canales

El siguiente ejemplo convierte archivos de audio mono a estéreo . Utilice la opción-c para especificar el número de canales.

 $  Sox mono. wav-c 2 stereo.wav 

Hay métodos para convertir los archivos de sonido estéreo a mono sonido . es decir, para obtener un único canal de un archivo estéreo.

Selección un canal en particular

Esto se hace mediante el uso de el efecto promedio con una opción que indica qué canal a utilizar. Las opciones son-l para la izquierda, por la derecha-r,-f para el frente, y-b para volver. Siguiendo el ejemplo que va a extraer el canal izquierdo

 $  sox stereo.wav-c 1 mono. wav promedio-l 

Promedio de los canales

 $  sox stereo.wav-c 1 avg 

11 mono.wav. Audio Converter - Formato de la música del archivo de conversión

Medias es útil para convertir un formato de audio a otro. es decir de una codificación (ALAW, MP3) a otro. Medias puede reconocer la entrada y formatos de salida deseados analizando las extensiones de nombre de archivo. Tomará infile.ulaw y crea un archivo llamado GSM codificado outfile.gsm. También puede utilizar sox para convertir wav a mp3 .

 $  Sox infile.ulaw outfile.gsm 

Si el archivo no tiene una extensión en su nombre, usando 't-' opción podemos expresar nuestra intención. Opción-t se utiliza para especificar el tipo de codificación.

 $  Sox-t ulaw infile-t gsm archivosalida 

12. Generar diferentes tipos de sonidos

Uso de efectos de sintetizador que podemos generar una serie de formas de onda estándar y tipos de ruido. Opción Aunque este efecto se utiliza para generar el audio, debe ser suministrado un archivo de entrada, 'n' se utiliza para especificar el archivo de entrada de archivo como nulo.

 $  Sox-n sintetizador tipo len frec 
  • len - duración de audio para sintetizar. Formato para especificar longitudes en el tiempo es hh: mm: ss.frac
  • tipo es una de seno, cuadrada, triangular, diente de sierra, trapecio, exp, [blanco] ruido, PinkNoise , el ruido marrón />
  • f req - frecuencias al inicio / final de la síntesis en Hz

El siguiente ejemplo produce un 3 segundos 8.000 kHz, archivo de audio que contiene una onda sinusoidal de barrido 300-3.300 Hz

 $  sox-r 8000-n output.au synth 3 sine 300-3300 

13. Acelera el sonido en un archivo de audio

Para acelerar o ralentizar el sonido de un archivo, utilice la velocidad para modificar el tono y la duración del archivo. Esto plantea la velocidad y reduce el tiempo. El factor por defecto es de 1,0 lo que hace ningún cambio en el audio. Velocidad 2.0 dobla, por lo tanto la longitud de tiempo se redujo a la mitad y el tono es un escalón más alto

 Sintaxis:. Sox input.wav factor de velocidad output.wav 

$ sox input.wav Velocidad output.wav 2.0

14. Múltiples cambios en archivos de audio en Command Individual

Por defecto, SoX intenta escribir datos de audio utilizando el mismo tipo de datos, frecuencia de muestreo y el número de canales de acuerdo a los datos de entrada. Si el usuario desea que el archivo de salida sea de un formato diferente, entonces el usuario tiene que especificar las opciones de formato. Si un formato de archivo de salida no admite el mismo tipo de datos, frecuencia de muestreo, o el número de canales como el formato de archivo de entrada dado, entonces SoX seleccionará automáticamente los valores más cercanos que apoya.
Convertir un wav a prima. Siguiendo el ejemplo de convertir la frecuencia de muestreo, tamaño de la muestra, el canal en línea de comandos única.

 $  Sox-r 8000-w-c 1-t wav fuente-r 16000-b-c 2-t destino prima 

15. Convertir Raw Audio File para MP3 Music File

No hay manera de convertir directamente en bruto a archivo mp3 mp3 porque requerirá información de compresión de archivo RAW. En primer lugar tenemos que convertir en bruto a wav. Y a continuación, convertir WAV a MP3 En el exampe continuación, la opción-h indica una alta calidad
Convertir formato Raw para Wav Formato:..

 $  sox-w -c 2-r 8000 audio1.raw audio1.wav 

Conver WAV a formato MP3:

 $  lame-h audio1.wav audio1.mp3
 
 
http://www.thegeekstuff.com/2009/05/sound-exchange-sox-15-examples-to-manipulate-audio-files/
 
 http://billposer.org/Linguistics/Computation/SoxTutorial.html
 

 

 

2 Comments

  1. Yeison Manrique

    Buenas Noches.
    Me podrían resolver el siguiente inconveniente?:
    Tengo 1000 archivos con formato .gsm y requiero convertirlos a formato .ulaw o .alaw para poder trabajar en Asterisk.
    No sé como correr la herramienta sox para poder realizar esta conversion.
    Muchas Gracias Por la información que me puedan brindar.

    Reply
    1. Gerbless

      Hola, es recomendable hacer todo esto usando python… Le dejo mi correo cualquier cosa [email protected]

      Reply

Leave a Comment

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