Al mostrar una forma de onda de audio, querrá hacer algún tipo de reducción de datos en los datos originales, porque normalmente hay más datos disponibles en un archivo de audio que píxeles en la pantalla. La mayoría de los editores de audio crean un archivo separado (llamado archivo de pico o archivo de resumen) que almacena un subconjunto de los datos de audio (generalmente los picos y valles de una forma de onda) para usar en diferentes niveles de zoom. Luego, al acercarse un cierto punto, comienza a hacer referencia a los datos de audio en bruto.
Éstos son algunos buenos artículos sobre esto:
Waveform Display
Build an Audio Waveform Display
En lo que va de código fuente, recomendaría mirando a través del código fuente Audacity. La pantalla de forma de onda de Audacity es bastante buena y es más probable que haga un tipo similar de reducción de datos al renderizar las formas de onda.