2014-10-11 23:37 GMT+02:00 Ricardo Cisterna <r.cisternasan...@gmail.com>:

> Olvidé mencionar que el software debe mantener el "histórico" de datos
> recopilados, de forma de que el gráfico muestra los datos desde el inicio
> de la grabación hasta el momento actual.


Mira que lo dudo. :)

Estás recibiendo 44100 muestras por segundo, suficientes para hacer un
gráfico suave que te llene la pantalla de lado a lado. Es perfectamente
razonable conservar en memoria los datos en crudo, pero no tienes que hacer
el gráfico con todos ellos.

Esencialmente, lo que quieres hacer es subsampling de tus datos, y sacar
por pantalla sólo eso. Dependiendo del tipo de sonidos que grabes y lo que
te importen problemas como "aliasing", puedes simplemente hacer uno regular
usando la maquinaria de Numpy:

plt.plot(data[::int(rate)])

O tendrás que buscar algo más complicado (y computacionalmente costoso).

Si quieres pintar la forma de la onda según entra y los datos pueden ser
cualquier cosa, puedes copiar lo que Audacity hace.


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

Responder a