studio - Espectrograma biblioteca C++
visual studio installer (4)
Para mi proyecto actual en C ++ / Qt necesito una biblioteca (se prefiere LGPL) que pueda calcular un espectrograma a partir de una señal (básicamente una matriz de dobles). Ya uso Qwt para la parte GUI.
¿Alguna sugerencia? Gracias.
Sería bastante fácil armar su propio espectrograma. Los pasos son:
- función de ventana (bastante trivial, por ejemplo, Hanning)
- FFT (FFTW sería una buena opción, pero si la licencia es un problema, vaya a Kiss FFT o similar)
- calcular la magnitud del registro de los componentes del dominio de la frecuencia (trivial: registro (sqrt (re * re + im * im))
podría usar fftw (fftw.org) para calcular el espectrograma, aún tendría que trazar los datos, pero eso no debería ser un problema
"¿Cómo creo una gráfica de frecuencia vs tiempo?" enumera varias bibliotecas, cada una de las cuales puede calcular un espectrograma a partir de una señal.
Copiado y pegado de mi propia respuesta:
Algún código fuente para generar spectrograms / gráficos en cascada a partir de datos de audio:
- SoX - Sound eXchange incluye código fuente de espectrograma
- Audacity incluye el código fuente del espectrograma
- glfer incluye el código fuente del espectro de visualización de espectro en cascada
- Código fuente que utiliza fftw para calcular el spectrogram de un flujo de audio
- más código fuente que utiliza OpenAL y fftw para calcular el spectrogram para una transmisión de audio
- "Grabador de sonido activado con espectrograma en C #" por Jeff Morton
- Topographica parece incluir el código fuente del espectrograma
- SpectroGraph para iTunes
Imagen a espectrograma va en la dirección inversa de las utilidades anteriores.