【问题标题】:Why is the Property SampleRate in the WaveFormat Class in NAudio ReadOnly?为什么 NAudio ReadOnly 中 WaveFormat 类中的属性 SampleRate 是只读的?
【发布时间】:2013-11-29 18:16:59
【问题描述】:

在 NAudio 中使用 signalGenerator 时,我尝试更改 sampleRate。但是是只读的,有它的原因吗?
我可以轻松覆盖它吗?

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);
    }

【问题讨论】:

    标签: signal-processing naudio sample-rate


    【解决方案1】:

    不,您必须在 SignalGenerator 构造函数中指定采样率。 ISampleProvider 不能简单地即时更改其采样率,因为您的 WaveOut 将期望以该采样率的数据。

    您可以在播放时更改信号发生器的频率。

    【讨论】:

    • 谢谢马克,顺便说一句,您在link 上的课程非常有趣,而且解释清楚,即使对于像我这样对声音知之甚少的人也是如此。
    猜你喜欢
    • 2021-10-16
    • 2015-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-11
    • 1970-01-01
    • 1970-01-01
    • 2013-03-05
    相关资源
    最近更新 更多