我想知道是否可以在XNA Framework中以任何其他方式切断声音的开头。我通过麦克风录制声音,我正在处理这样的声音实例:
Stream的定义如下:
private MemoryStream stream = new MemoryStream();
是否有可能以某种方式修改流并切断声音的开始?
SoundEffect sound = new SoundEffect(stream.ToArray(), microphone.SampleRate, AudioChannels.Mono);
var soundInstance = sound.CreateInstance();
如何确定要删除的字节数?或者以某种方式可以检测到“沉默”/“背景”并在听到真人的声音之前自动将其剪掉?
谢谢
答案 0 :(得分:1)
您必须知道录制声音的确切WaveFormat。如果您已获得精确的WaveFormat(例如16位pcm单声道),则可以遍历所有样本,检查它是否在特定范围内。如果所有样品例如小于0.1,则是静音。如果不是......播放数据。