Reproduzir sons simples criados dinamicamente em C # sem bibliotecas externas

Eu preciso ser capaz de gerar dinamicamente uma forma de onda e reproduzi-lo, usando C #, sem bibliotecas externas, e sem ter que armazenar arquivos de som no disco rígido. A latência não é um problema; os sons seriam gerados bem antes de serem necessários pelo aplicativo.

Na verdade, o método Console.Beep () pode atender às minhas necessidades, se não fosse pelo fato de que a Microsoft diz que não é suportado nas versões de 64 bits do Windows.

Se eu gerar meu próprio som dinamicamente, posso ter um visual mais sofisticado do que um simples bipe. Por exemplo, eu poderia fazer uma forma de onda a partir de uma onda triangular que aumenta em frequência de 2 KHz a 4 KHz enquanto decai em volume. Eu não preciso de estéreo sofisticado de 16 bits, apenas mono de 8 bits é bom. Eu não preciso de controle dinâmico sobre volume e pitch, apenas basicamente gero um soundfile na memória e o reproduzo sem armazená-lo.

A última vez que precisei gerar sons foi há muitos anos, no Apple II, em estações de trabalho HP e no meu antigo computador Amiga. Não precisei fazer isso desde então, e parece que algo simples que eu descrevo ficou muito mais complicado. Estou tendo dificuldade em acreditar que algo tão simples parece tão difícil. A maioria das respostas que vejo se referem ao NAudio ou bibliotecas similares, e isso não é uma opção para este projeto (além do fato de que puxar uma biblioteca inteira apenas para tocar um tom parece um desperdício).

questionAnswers(4)

yourAnswerToTheQuestion