首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将DynamicSoundEffectInstance或SoundEffectInstance保存到文件或数组?

如何将DynamicSoundEffectInstance或SoundEffectInstance保存到文件或数组?
EN

Stack Overflow用户
提问于 2011-09-04 00:31:17
回答 1查看 369关注 0票数 2

我有一个Windows Phone Silverlight应用程序。我这样做是为了放慢声音,改变麦克风流的音高:

代码语言:javascript
复制
sound = new SoundEffect(bStream, microphone.SampleRate, AudioChannels.Mono);
SoundEffectInstance soundInstance = sound.CreateInstance();
soundInstance.Pitch -= 1;
soundInstance.Play();

这里的"bStream“是一个字节数组。问题是我不能保存更改后的音高数据(尽管我可以播放它)。有没有办法在节距改变后保存我的字节数组?我也尝试了DynamicSoundEffectInstance,结果是一样的。当我将bStream保存为wav文件时,所有的效果都消失了。

感谢您的帮助和见解。

EN

回答 1

Stack Overflow用户

发布于 2011-09-05 20:31:34

你真的需要通过调整音高来保存它吗?为什么不将音高调整量与文件一起保存,并在加载文件后重新应用它(就像你已经做的那样)。

如果你真的需要调整数据的间距,你实际上是在对它进行重采样。这涉及对这些值进行插值和/或平均,以在时间上拉伸或压缩它们。我相信NAudio包含了实现这一点的C#代码:http://naudio.codeplex.com/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7294361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档