Buenas tardes queridos compañeros del foro. Hoy no vengo a reclamar el conocimiento de nadie sino a colaborar con esta comunidad (y otras también) que tanto me han ayudad y aportan a la sociedad a través de la inteligencia colectiva.
En este caso les traigo un pequeño programita que hice en una macro de Excel (porque era el lenguaje de programación que dispongo en mi lugar de trabajo en mi tiempo libre).
Sin más preámbulos, el programa es un decodificador de archivos de audio WAV.
Para entender qué es lo que hace, primero debemos saber cómo se graban los sonidos en la PC. No quiero entrar en mayores detalles, pero básicamente para poder grabar sonidos hay que convertir la presión sonora en pulsos eléctricos.
Para ello se necesita de un transductor. En este caso el transductor es el micrófono. Existen distintos tipos de micrófonos, por nombrar los más comunes, están los dinámicos o de bobina móvil que en esencia es un parlante usado al revés los electret que funcionan como una especie de capacitor.
Las señales eléctricas son muy débiles por lo que requieren de un preamplificador. Hasta aquí la señal eléctrica generada es analógica, es decir que su forma es continua y tiene la misma forma que las ondas de audio que las generan.
La señales llegan a la placa o tarjeta de audio de la PC, la cual no es otra cosa que un conversor analógico/Digital (A/D) de una determinada cantidad de bits. En general son de 8 bits. El conversor transforma esta señal continua en una muestra discreta de puntos en el tiempo. La frecuencia de muestreo de la señal en general es de 44.1Hz, esto es el doble que la máxima frecuencia audible y no es casualidad. También hay frecuencias superiores, pero cuanto mayor la frecuencia, tanto menor es el periodo de muestreo, por lo que la señal es más fiel, pero el archivo generado es más pesado.
Pero qué es lo que me da el programa?
Al cargarle un archivo de audio, el programa genera un archivo txt donde dice información sobre cómo se grabó ese archivo de audio… la frecuencia de muestreo, si la señal es mono o estero, los bits de conversor y algún otro dato.
Luego de esto muestra los datos recopilados. Si la frecuencia de muestreo es de 44.1KHz, el tiempo entre muestra y muestra es de 1/44.1KHz=0.02268ms=22.68us (microsegundos). Si el conversor es de 8bits la señal se divide en 256 niveles, esto es de 0 a 255. Como la presión sonora puede ser positiva o negativa, se asume como silencio el nivel 127. El pico máximo no puede superar el valor 255 y el mínimo el 0, de otro modo satura el conversor y se deforma la señal de audio.
Los datos del archivo generado pueden copiarse y pegarse en una hoja de Excel y observar la forma de la onda. Además con un poco de habilidad en la programación se puede modificar el programa y aplicar filtros, derivar, integrar, etc.
Este proyecto abre las puertas de la imaginación. Por ejemplo (con la precaciones correspondientes para evitar quemar todo) podríamos grabar como audio las señales analogicas de un generador de señales, luego llevar el archivo de audio a la PC y con este programa ver la forma de la onda, su periodo y realizar un análisis como si fuese un osciloscópio.
En mi caso particular, grabe el audio del chispazo de la bujia de un karting, simplemente con una pinza cocodrilo, un jack de audio y un reproductor de mp3 viejo. Como digo, el limite es la imaginación.
Espero les sea de utilidad en sus proyectos, que lo modifiquen y mejoren y adapten.
Saludos
Matías
Adjunto el archivo de Excel y dos imágenes del análisis del ruido de una bujía de karting.
Saludos!
Les adjunto el codigo fuente de la macro en un archivo txt
En este caso les traigo un pequeño programita que hice en una macro de Excel (porque era el lenguaje de programación que dispongo en mi lugar de trabajo en mi tiempo libre).
Sin más preámbulos, el programa es un decodificador de archivos de audio WAV.
Para entender qué es lo que hace, primero debemos saber cómo se graban los sonidos en la PC. No quiero entrar en mayores detalles, pero básicamente para poder grabar sonidos hay que convertir la presión sonora en pulsos eléctricos.
Para ello se necesita de un transductor. En este caso el transductor es el micrófono. Existen distintos tipos de micrófonos, por nombrar los más comunes, están los dinámicos o de bobina móvil que en esencia es un parlante usado al revés los electret que funcionan como una especie de capacitor.
Las señales eléctricas son muy débiles por lo que requieren de un preamplificador. Hasta aquí la señal eléctrica generada es analógica, es decir que su forma es continua y tiene la misma forma que las ondas de audio que las generan.
La señales llegan a la placa o tarjeta de audio de la PC, la cual no es otra cosa que un conversor analógico/Digital (A/D) de una determinada cantidad de bits. En general son de 8 bits. El conversor transforma esta señal continua en una muestra discreta de puntos en el tiempo. La frecuencia de muestreo de la señal en general es de 44.1Hz, esto es el doble que la máxima frecuencia audible y no es casualidad. También hay frecuencias superiores, pero cuanto mayor la frecuencia, tanto menor es el periodo de muestreo, por lo que la señal es más fiel, pero el archivo generado es más pesado.
Pero qué es lo que me da el programa?
Al cargarle un archivo de audio, el programa genera un archivo txt donde dice información sobre cómo se grabó ese archivo de audio… la frecuencia de muestreo, si la señal es mono o estero, los bits de conversor y algún otro dato.
Luego de esto muestra los datos recopilados. Si la frecuencia de muestreo es de 44.1KHz, el tiempo entre muestra y muestra es de 1/44.1KHz=0.02268ms=22.68us (microsegundos). Si el conversor es de 8bits la señal se divide en 256 niveles, esto es de 0 a 255. Como la presión sonora puede ser positiva o negativa, se asume como silencio el nivel 127. El pico máximo no puede superar el valor 255 y el mínimo el 0, de otro modo satura el conversor y se deforma la señal de audio.
Los datos del archivo generado pueden copiarse y pegarse en una hoja de Excel y observar la forma de la onda. Además con un poco de habilidad en la programación se puede modificar el programa y aplicar filtros, derivar, integrar, etc.
Este proyecto abre las puertas de la imaginación. Por ejemplo (con la precaciones correspondientes para evitar quemar todo) podríamos grabar como audio las señales analogicas de un generador de señales, luego llevar el archivo de audio a la PC y con este programa ver la forma de la onda, su periodo y realizar un análisis como si fuese un osciloscópio.
En mi caso particular, grabe el audio del chispazo de la bujia de un karting, simplemente con una pinza cocodrilo, un jack de audio y un reproductor de mp3 viejo. Como digo, el limite es la imaginación.
Espero les sea de utilidad en sus proyectos, que lo modifiquen y mejoren y adapten.
Saludos
Matías
Adjunto el archivo de Excel y dos imágenes del análisis del ruido de una bujía de karting.
Saludos!
Les adjunto el codigo fuente de la macro en un archivo txt
Adjuntos
Última edición: