如何从存储在MemoryStream中的Wav获取标题信息
本文关键字:Wav 获取 标题 信息 中的 MemoryStream 存储 | 更新日期: 2023-09-27 18:21:58
我有一个内存流,其中包含一个wave文件。
wav可以这样播放:
var soundPlayer = new System.Media.SoundPlayer();
soundPlayer.Stream = stream;
soundPlayer.Play();
如何从流中提取比特率、采样率、通道等?
标头大小大约为36个字节。所以你可以创建一个缓冲区并像一样读取它
byte[] headers = byte[36];
memorystream.Position = 0;
memorystream.Read(headers,0,headers.Length);
/** doing your meta data extraction **/
String mode;
if(headers[22] == 1)
mode = "mono";
else if(headers[22] == 2)
mode = "stereo";
else
mode = "unknown";
/*************************************/
memorystream.Position = 0;
检查以下链接的标题信息:
- http://www-mmsp.ece.mcgill.ca/documents/audioformats/wave/wave.html
- http://soundfile.sapp.org/doc/WaveFormat/
希望能有所帮助。:-)