Tengo un poco de problemas de programación y conversión. Estoy diseñando una IA para reconocer las notas tocadas por los instrumentos y necesito extraer los datos de sonido en bruto de un archivo de onda. Mi objetivo es realizar una operación de FFT durante períodos de tiempo en el archivo para su uso por la IA. Para esto necesito una lista de amplitud del archivo de audio, pero parece que no puedo encontrar una técnica de conversión que funcione. Los archivos comienzan como MP3 y luego los convierto en archivos wav, pero siempre termino con un archivo comprimido que escupe galimatías cuando intento leerlo. ¿Alguien sabe cómo podría convertir el archivo wav a algo que sería compatible con el módulo de onda de Python o incluso algo que convertiría directamente los datos en una lista de amplitud?Extracción de una lista de amplitudes del archivo * .wav para usar en Python
Respuesta
El módulo de onda Python predeterminado no es muy completo. Puede probar el incluido en scipy como alternativa.
Salida: Reading *.wav files in Python
Si usted va a hacer ningún trabajo pesado numérica con el audio, scipy podría ser su mejor opción de todas formas.
Creo que Python puede leer archivos .dat. Se puede utilizar para convertir SoX MP3 o WAV o lo que sea en archivos .dat que son simplemente una lista de texto de "tiempo - Izquierda de amplificador - amplificador derecho"
El código es simplemente soundfile.mp3 Medias soundfile.dat
Sox es línea de comando - Lo manejo con Terminal en mi mac, pero cualquier cosa que entienda los comandos Bash o Linux debería funcionar dependiendo de qué CPU está usando.
Espero que ayude!
Es posible que desee ver Pure Data también, tiene algunas buenas transformaciones FFT integradas en un lenguaje de programación gráfica intuitiva.
- 1. Extracción de cadenas duplicadas de una lista en Python
- 2. Extracción de una lista de otro
- 3. Obtener longitud o duración del archivo .wav
- 4. Lectura de archivos * .wav en Python
- 5. ¿Cómo usar QtMultimedia para reproducir un archivo wav?
- 6. Trazado de la forma de onda del archivo .wav
- 7. ¿Cómo puedo usar una lista de comprensión para extender una lista en python?
- 8. cómo obtener muestras wav de un archivo wav?
- 9. Reproducción de un archivo .WAV en .NET
- 10. Uso de AudioTrack en Android para reproducir un archivo WAV
- 11. Cómo escribir archivos estéreo wav en Python?
- 12. Extracción de tamaños de página de PDF en Python
- 13. Extracción del contenido del archivo comprimido a un directorio específico en Python 2.7
- 14. Usar un bucle para agregar objetos a una lista (python)
- 15. Python ordena "u11-Phrase 1000.wav" antes de "u11-Phrase 101.wav"; ¿Cómo puedo superar esto?
- 16. Extracción de múltiples documentos MongoDB en Python
- 17. Convertir archivo .wav a .mp3
- 18. Python, añadir elementos de archivo txt en una lista
- 19. Python: Escribir una lista de tuplas en un archivo
- 20. Convertir matriz de bytes a archivo wav
- 21. Reproducir archivo WAV hacia atrás
- 22. ¿Cómo unir dos archivos wav usando python?
- 23. Scrapy ¿leyó la lista de URL del archivo para raspar?
- 24. ¿Cómo reproducir un archivo wav en Delphi?
- 25. Extracción de una tabla de un archivo de volcado mysql.sql
- 26. ¿Estructura del árbol del directorio de la lista en python?
- 27. conversión wav-a-midi
- 28. ¿Qué es una forma de plataforma cruzada para reproducir un archivo de sonido en python?
- 29. Extracción elemento específico de una lista con jQuery
- 30. Interpretación de datos WAV
BTW, estoy ejecutando en un macbook pro con PyDev para Eclipse, por lo que aunque los convertidores de Windows no están completamente fuera de cuestión, son muy inconvenientes. – AlexL