Paso 1: Cómo ir sobre el audio y algunas historia de trituración.
Inspiración
Después de haber sido un fan de sitios como instructables durante mucho tiempo y en varias ocasiones vi que había proyectos orientados a la generación de sonido o música de un microcontrolador llegó a ser seguro que algún día voy a llegar a tratar de esta materia fresca yo.
He trabajado en proyectos de audio antes pero es primera vez que he salido de mi forma de crear las herramientas necesarias para que sea reproducible fácilmente.
Uno de mis proyectos anteriores era utilizar un módulo DDS barato de china, cambie su frecuencia y luego detectar con un SDR (radio definida Software) en LSB (banda lateral inferior) y jugó música de tetris. De todos modos. Estoy divagando lol.
En su mayoría estos proyectos tenían en común que requirieron 8 pines de salida y resistencias para formar un DAC, que es bastante impresionante y suena bastante bien... Hubo sin embargo un par de proyectos que tratan de 1-bit audio necesitando sólo 1 pin de I/O digital para generar el sonido que es esencialmente una onda cuadrada. Me enamoré con esta idea debido a cómo suena porque cuando produzco música tiendo a utilizar una gran cantidad de distorsión y me llena de sentimientos difusos calientes!
Aquí decidimos lo que queremos lograr, esperaba lograr una resolución de grabación de 24 bits de audio de 1-bit... Dejé trató de encontrar una herramienta para hacer esto pero luchó y en última instancia y empecé a escribir mi propia. Ahora tengo que decir que para simplificar este proceso y dado que necesitaba para cortar la muestra de audio para obtener la pieza que yo realmente quería jugar, solía audacity para exportar un archivo con los siguientes parámetros:
- sin signo de 8 bits
- crudo (sin encabezado)
Por supuesto también edité el canal audio de la mano derecha antes de exportar porque sólo estaba interesado en tratar con una muestra de audio mono.
Análisis del archivo
La cosa fresca sobre este archivo exportado es que es muy fácil hacer frente a cada byte del archivo representa una muestra completa de audio, como en... cuánta energía o volumen es ese momento del sonido.
Una muestra de 8 bits o 1 byte es simplemente un valor de intensidad entre 0 y 255, que le da un rango posible de 256 valores.
Entonces mi programa reduce abajo de 256 valores posibles hasta 2. Encendido o apagado.
La única ADVERTENCIA que tienes que tomar una decisión, lo que constituye el ser y lo que se descarta por apagarlo.
Mi decisión es escoger un lugar que está aproximadamente en el centro de los 256 valores. Digamos que por causa de discusiones que elegimos 128 como el punto de corte, si una muestra de sonido no es lo suficientemente alta para llegar a por lo menos 128 es desechado y considera que se fuera y que se almacena a 0.
Si sin embargo la muestra tiene suficiente amplitud pico por encima de los 128 decimos bien que consideramos que en bastante así dejar de lado un valor de 1.