0
有人可以提供一个简单的WAV 16位到8位(如果可能的话)转换器的源代码(最好是C/C++)的链接吗?我有C++的基本知识,我需要一个资源来理解wav编写和转换我的新项目的值。在这一刻我有一个关于RIFF块结构的讲座。简单的wav 16位/ 8位转换器源代码?
还可以理解为不同的位深度之间进行转换的值的任何式(也未这些标准)...
我喜欢它是简单的和命令行这样就可以与记事本编辑和容易编译。
在此先感谢!
有人可以提供一个简单的WAV 16位到8位(如果可能的话)转换器的源代码(最好是C/C++)的链接吗?我有C++的基本知识,我需要一个资源来理解wav编写和转换我的新项目的值。在这一刻我有一个关于RIFF块结构的讲座。简单的wav 16位/ 8位转换器源代码?
还可以理解为不同的位深度之间进行转换的值的任何式(也未这些标准)...
我喜欢它是简单的和命令行这样就可以与记事本编辑和容易编译。
在此先感谢!
用于读取和写入WAV文件看看规格:
https://ccrma.stanford.edu/courses/422/projects/WaveFormat/
用于转换8位和16之间,你只需要分或256
乘以例如(从16转换成C:8位):
fopen()
打开16位文件和(不存在的)8位文件。int sample = 0;
// read 2 bytes (= 16 bits) from the 16 bit file into sample:
fread (&sample, 2, 1, wav_file_16bit);
sample /= 256; // divide sample by 256
// write 1 byte (= 8 bits) to the 8 bit file:
fwrite (&sample, 1, 1, wav_file_8bit);
如果您需要更具体的信息,请询问。