小编use*_*752的帖子

在C#中创建.wav文件

作为学习C#的借口,我一直在尝试编写一个简单的项目:创建音频文件.首先,我想确保我可以编写符合WAVE格式的文件.我已经在线研究了格式(例如,这里),但每当我尝试播放文件时,它都无法正确打开.这是我的代码.缺少什么或不正确?

uint numsamples = 44100;
ushort numchannels = 1;
ushort samplelength = 1; // in bytes
uint samplerate = 22050;

FileStream f = new FileStream("a.wav", FileMode.Create);
BinaryWriter wr = new BinaryWriter(f);

wr.Write("RIFF");
wr.Write(36 + numsamples * numchannels * samplelength);
wr.Write("WAVEfmt ");
wr.Write(16);
wr.Write((ushort)1);
wr.Write(numchannels);
wr.Write(samplerate);
wr.Write(samplerate * samplelength * numchannels);
wr.Write(samplelength * numchannels);
wr.Write((ushort)(8 * samplelength));
wr.Write("data");
wr.Write(numsamples * samplelength);

// for now, just a square wave
Waveform a = new Waveform(440, 50);

double t = 0.0;
for …
Run Code Online (Sandbox Code Playgroud)

c# wav

14
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×1

wav ×1