2013-11-29 3 views
0

Я пытаюсь изменить sampleRate при использовании signalGenerator в NAudio. Но читается только, есть ли причина для этого?
Могу ли я переписать его без проблем?Почему свойство SampleRate в классе WaveFormat в NAudio ReadOnly?

public void MaakGeluid(int sampleRate) { 
     waveOut = new WaveOut(); 
     waveOut.DesiredLatency = 100; 
     sg = new SignalGenerator(); 
     sg.Frequency = Frequency; 
     sg.WaveFormat.SampleRate = sampleRate; 
     sg.Type = Sgt; 
     waveOut.Init(sg); 
    } 

ответ

1

Нет, вы должны указать частоту дискретизации в конструкторе SignalGenerator. ISampleProvider не может просто изменить свою частоту дискретизации на лету, потому что ваш WaveOut будет ожидать данные с такой частотой дискретизации.

Во время воспроизведения вы можете изменять частоту генератора сигнала.

+0

thankx MarK, и btw ваши курсы по [link] (http://pluralsight.com/training/Courses/TableOfContents/audio-programming-naudio) очень интересны и понятны даже для таких людей, как я, с небольшими знаниями по звук. – herman

Смежные вопросы