剪切音效/静音的开头

本文关键字:开头 音效 | 更新日期: 2023-09-27 17:59:55

我想知道在XNA Framework或任何其他方式中是否可以剪切声音的开头。我通过麦克风录制声音,我正在处理这样的声音实例:

流的定义如下:

private MemoryStream stream = new MemoryStream();

有可能以某种方式修改流并切断声音的开头吗?

SoundEffect sound = new SoundEffect(stream.ToArray(), microphone.SampleRate, AudioChannels.Mono);
var soundInstance = sound.CreateInstance();

如何确定要删除哪些字节?或者,在听到实际人的声音之前,是否有可能检测到"静音"/"背景"并自动将其删除?

感谢

剪切音效/静音的开头

您必须知道录制声音的确切WaveFormat。如果你有确切的WaveFormat(例如,16位pcm-mono),你可以迭代所有样本,检查它是否在特定范围内。例如,如果所有样本都小于0.1,则为静默。如果不是。。。播放数据。