我试图在原始PCM数据之上添加一个wav标题,以使其可以通过AVAudioPlayer播放.但我在iOS上使用Objective-C/Swift找不到任何解决方案或源代码.虽然我发现了这个,但它没有正确的答案.
但是我在这里发现了一段代码,它在C中并且还包含一些问题.wav文件无法正常播放,该文件是从该代码生成的.
到目前为止,我已经给出了我编码的代码.
int NumChannels = AUDIO_CHANNELS_PER_FRAME;
short BitsPerSample = AUDIO_BITS_PER_CHANNEL;
int SamplingRate = AUDIO_SAMPLE_RATE;
int numOfSamples = [[NSData dataWithContentsOfFile:filePath] length];
int ByteRate = NumChannels*BitsPerSample*SamplingRate/8;
short BlockAlign = NumChannels*BitsPerSample/8;
int DataSize = NumChannels*numOfSamples*BitsPerSample/8;
int chunkSize = 16;
int totalSize = 36 + DataSize;
short audioFormat = 1;
if((fout = fopen([wavFilePath cStringUsingEncoding:1], "w")) == NULL)
{
printf("Error opening out file ");
}
fwrite("RIFF", sizeof(char), 4,fout);
fwrite(&totalSize, sizeof(int), 1, fout);
fwrite("WAVE", sizeof(char), 4, fout);
fwrite("fmt ", …Run Code Online (Sandbox Code Playgroud)