如何用C#中的原始音频样本创建wave STREAM?如何用C#中的原始音频样本创建wave STREAM?
回答
这是在C#中的读取和写入WAV文件的一个很好的示例项目:
http://www.codeproject.com/KB/audio-video/Concatenation%5FWave%5FFiles.aspx
假设你的“原始音频”是短(2字节)整数数组,这是一个简单的任务。 WAV文件的标题为44个字节(请参阅注释),因此您先写出标题(使用示例中的代码),然后再写入数据。
注意:并非所有的WAV文件都是“规范的”,这意味着它们并不都具有44字节的标头,后面跟着数据。 WAV格式实际上是一种RIFF格式,这意味着它们可以包含各种不同的数据,并且标题不一定在开头。然而,这些都不重要,因为你只是写 WAV文件。
更新:如果语音识别程序期待一个流(而不是一个文件路径),可以很容易地创建一个MemoryStream
这样的:
byte[] bytes = System.IO.File.ReadAllBytes("c:\whatever.wav");
System.IO.MemoryStream stream = new System.IO.MemoryStream(bytes);
或者你能避免文件I/O总而言之,首先创建您的WAV文件作为内存中的字节数组,然后从中创建MemoryStream
。
非常感谢您的回答! 我曾阅读过关于规范的WAV文件格式等。 链接中的代码/项目对此很有帮助。 流怎么样,你可以告诉一些关于流的东西吗? 另外,这个文件(如果最后是文件而不是流?!)将被语音识别程序读取 - 所以头文件等无所谓。 – refugee 2010-05-19 13:12:03
@refugee:我假设语音识别程序将一个流作为输入,并持续监视流中的新数据。您可能需要包含有关此程序的更多详细信息以及它期望的输入类型。 WAV *文件头*包含一个值,表示后面数据的大小 - 如果程序期望开放式流,则不适用。这可能是因为您的语音识别程序需要一个初始调用,告诉它它将使用什么格式的流数据,然后是实际的数据流。 – MusiGenesis 2010-05-19 13:31:40
- 1. 原始音频播放5
- 2. 如何在c中创建音频谱#
- 3. 使用AudioToolbox从音频信号获取原始样本流 - Swift
- 4. 从WAV文件中读取原始音频样本
- 5. 如何从Android上的音频文件中提取原始样本值
- 6. 使用原始音频
- 7. 如何播放基本原始的端口音频
- 8. NAudio的原始音频
- 9. Android从C++端播放原始音频
- 10. 从.wav音频样本创建整数数组。 NAudio C#
- 11. 用QPython audiostream原始PCM音频播放
- 12. 如何在c#中采样音频?
- 13. 原始音频转换
- 14. 如何从使用QTKit的电影中提取原始音频
- 15. 如何从音频创建HTML5中的音频播放器?
- 16. 在C++/Ubuntu中录制来自音频输入的原始音频
- 17. 检测原始音频(PCM)中的特定频率/音调
- 18. 如何在iOS中使用原始数据播放音频?
- 19. 如何在iPhone中播放原始音频? (使用ffmpeg)
- 20. 如何用原始图像(.rgb格式)创建视频并在python中添加音频?
- 21. 在C#中创建音频文件(WP7)
- 22. 在iphone SDK中读取原始音频
- 23. 样本音频整数数组(C++/QT)
- 24. 如何将原始数据转换为javascript中的音频
- 25. 在没有MOOV的MDAT Atom中识别音频样本原子
- 26. 如何在Web中使用Web(使用Web-Audio或其他)播放原始样本PCM_16音频数据记录?
- 27. 如何混合音频样本?
- 28. 如何反转音频样本?
- 29. Audacity如何混合音频样本?
- 30. 如何从wave文件中获取音频数据?
定义“原始音频” – Jake 2010-05-18 15:04:02
@Jake:“原始音频”=互联网上99%MPEG的声音轨迹? – MusiGenesis 2010-05-18 15:08:19
你想用C#读取.wav文件吗? – anishMarokey 2010-05-19 02:37:23