[Python-es] Visualizador de espectro de audio Python

345 views
Skip to first unread message

Acústico Cáustico

unread,
Aug 2, 2013, 7:10:22 PM8/2/13
to pyth...@python.org
Hola a todos, soy muy nuevo en python, llevo programando 6 meses y he decidido aprender en este lenguaje, en este momento estoy intentando hacer un visualizador de espectro de audio, es decir, trato de hacer algo como esto https://www.youtube.com/watch?v=-8GwCtsGpPg 

Ya se como extraer la informacion espectral del audio, lo estoy haciendo con numpy.fft, lo que no he podido descubrir es como hacer la animación, me refiero a convertir los datos obtenidos a partir de la FFT para graficarlos por banda de frecuencia.

Cualquier comentario o ayuda será bien recibido, muchas gracias.

Juan M. Puertas

unread,
Aug 5, 2013, 5:32:58 AM8/5/13
to La lista de python en castellano
 Hola.
Creo que lo que necesitas es incorporar una biblioteca gráfica como por ejemplo PIL, dado que Python no tiene una estándar.
 http://www.pythonware.com/products/pil/



_______________________________________________
Python-es mailing list
Pyth...@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/




--
Nota: Por problemas con el e-mail. Puede que recibas de nuevo este mensaje en un tiempo.

Kiko

unread,
Aug 5, 2013, 9:03:42 AM8/5/13
to La lista de python en castellano

Ya se como extraer la informacion espectral del audio, lo estoy haciendo con numpy.fft, lo que no he podido descubrir es como hacer la animación, me refiero a convertir los datos obtenidos a partir de la FFT para graficarlos por banda de frecuencia.


Puedes echarle un vistazo a matplotlib. En el siguiente enlace explican como usarlo:
http://pybonacci.wordpress.com/tag/tutorial-matplotlib-pyplot/

Y en el siguiente hay un ejemplo sobre como hacer animaciones:
http://pybonacci.wordpress.com/2012/12/16/creando-una-animacion-con-matplotlib-y-ffmpeg/

DISCLAIMER: Soy el autor de los tutoriales, para lo bueno y para lo malo :-P

Jose Sabater Montes

unread,
Aug 5, 2013, 8:57:12 AM8/5/13
to La lista de python en castellano
On Saturday 03 August 2013 00:10:22 Acústico Cáustico wrote:
> Hola a todos, soy muy nuevo en python, llevo programando 6 meses y he
> decidido aprender en este lenguaje, en este momento estoy intentando hacer
> un visualizador de espectro de audio, es decir, trato de hacer algo como
> esto https://www.youtube.com/watch?v=-8GwCtsGpPg
>
> Ya se como extraer la informacion espectral del audio, lo estoy haciendo
> con numpy.fft, lo que no he podido descubrir es como hacer la animación, me
> refiero a convertir los datos obtenidos a partir de la FFT para graficarlos
> por banda de frecuencia.

Yo le echaría un vistazo a matplotlib para empezar.
De las funciones de pyplot (http://matplotlib.org/api/pyplot_summary.html)
puedes mirar "bar"
(http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.bar) para algo
como lo del vídeo. También le echaría un vistazo a "specgram"
(http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.specgram y
http://matplotlib.org/examples/pylab_examples/specgram_demo.html) y a cómo
animar las gráficas. Para esto último busca en Google "matplotlib animation" y
aparecen varios tutoriales.

Un saludo.

Juan Luis Cano

unread,
Aug 7, 2013, 5:05:52 AM8/7/13
to La lista de python en castellano
On 08/05/2013 02:57 PM, Jose Sabater Montes wrote:
> On Saturday 03 August 2013 00:10:22 Acústico Cáustico wrote:
>> Hola a todos, soy muy nuevo en python, llevo programando 6 meses y he
>> decidido aprender en este lenguaje, en este momento estoy intentando hacer
>> un visualizador de espectro de audio, es decir, trato de hacer algo como
>> esto https://www.youtube.com/watch?v=-8GwCtsGpPg
>>
>> Ya se como extraer la informacion espectral del audio, lo estoy haciendo
>> con numpy.fft, lo que no he podido descubrir es como hacer la animación, me
>> refiero a convertir los datos obtenidos a partir de la FFT para graficarlos
>> por banda de frecuencia.
> Yo le echaría un vistazo a matplotlib para empezar.
> De las funciones de pyplot (http://matplotlib.org/api/pyplot_summary.html)
> puedes mirar "bar"
> (http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.bar) para algo
> como lo del vídeo. También le echaría un vistazo a "specgram"
> (http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.specgram y
> http://matplotlib.org/examples/pylab_examples/specgram_demo.html) y a cómo
> animar las gráficas. Para esto último busca en Google "matplotlib animation" y
> aparecen varios tutoriales.

Hablando de specgram (aunque creo que no es exactamente el efecto que
Acústico quiere conseguir), mira la última parte de este artículo:

https://pybonacci.wordpress.com/2012/09/29/transformada-de-fourier-discreta-en-python-con-scipy/

(también en Pybonacci como Kiko pero esta vez el autor soy yo :P)

xiao xiong mao panda rojo

unread,
Aug 24, 2013, 3:10:32 AM8/24/13
to python es lista
espero k no sea tarde. tal vez esto te ayude :3

al fin puede ayudar...

> Date: Wed, 7 Aug 2013 11:05:52 +0200
> From: juan...@gmail.com
> To: pyth...@python.org
> Subject: Re: [Python-es] Visualizador de espectro de audio Python

xiao xiong mao panda rojo

unread,
Aug 25, 2013, 6:09:09 PM8/25/13
to python es lista
lo siento. olvide el enlace.
un ejemplo de como graficar audio con fft y pyqt


From: ailurus...@hotmail.com
To: pyth...@python.org
Date: Sat, 24 Aug 2013 02:10:32 -0500
Reply all
Reply to author
Forward
0 new messages