您现在的位置是:网站首页> 软件下载软件下载
将PCM数据转换成WAV文件(pcm2wav)下载绿色版-软件下载
2021-05-20
172人已围观
简介 将PCM数据转换成WAV文件(pcm2wav)下载绿色版-软件下载
将PCM数据转换成WAV文件其实只是加个文件头。但要做给普通用户用,界面比较费时间。增加了单声道、双声道选择,样本宽度,提供更多采样率,并允许输入采样率。

实现原理:
wav文件通常包含4段:RIFF、格式段、FACT段和数据段。 PCM数据就放在数据段。只要格式段设置的格式与数据段的数据一致,播放程序就可以正确解析。 下面这个数组的数据其实就是一个最小的wav文件。
static const unsigned char wav_template[] = { // RIFF WAVE Chunk 0x52, 0x49, 0x46, 0x46, // "RIFF" 0x30, 0x00, 0x00, 0x00, // 总长度 整个wav文件大小减去ID和Size所占用的字节数 0x57, 0x41, 0x56, 0x45, // "WAVE" // Format Chunk 0x66, 0x6D, 0x74, 0x20, // "fmt " 0x10, 0x00, 0x00, 0x00, // 块长度 0x01, 0x00, // 编码方式 0x01, 0x00, // 声道数目 0x80, 0x3E, 0x00, 0x00, // 采样频率 0x00, 0x7D, 0x00, 0x00, // 每秒所需字节数=采样频率*块对齐字节 0x02, 0x00, // 数据对齐字节=每个样本字节数*声道数目 0x10, 0x00, // 样本宽度 // Fact Chunk 0x66, 0x61, 0x63, 0x74, // "fact" 0x04, 0x00, 0x00, 0x00, // 块长度 0x00, 0xBE, 0x00, 0x00, // Data Chunk 0x64, 0x61, 0x74, 0x61, // "data" 0x00, 0x00, 0x00, 0x00, // 块长度 }; 这个wav文件的数据长度为0。我们要增加PCM数据只要完成以下工作:
在数据段尾增加PCM数据;
修改数据段的块长度,修改RIFF段的总长度;
正确设置格式段的PCM参数。
样本长度可能不是8的整数倍,这时wav文件还是要求样本按照字节对齐。在一个样本中数据是左对齐的,右侧空位用0填充。 pcm2wav只考虑了样本长度是16位的情况。
如果有多个声道,wav文件要求先放样本1的各声道数据,再放样本2的各声道数据,依此类推。 因为我没有碰到过处理多声道数据的需求,所以pcm2wav只考虑了单声道。
相关内容
- 光盘刻录视频转换器(VSDC Free Video Converter)下载2.4.4 官方版-软件下载
- 音乐MX下载v1.0 绿色版-软件下载
- mencoder.exe下载0.9.0 最新版-命令行视频格式转换工具软件下载
- 视频音频分离工具(AVI MPEG WMV RM to MP3 Converter)下载1.8.4 汉化绿色版-软件下载
- midi格式音乐播放器 Midi Player下载v2.0 汉化版-软件下载
- 云影盒下载1.0 官方绿色版-软件下载
- 字幕格式转换 ASS to SRT下载1.20.13.15 免费版-软件下载
- Leapic Media Converter 媒体转换工具下载4.0 官方版-软件下载
- 将文本转变为音频(txt2wav)下载绿色版-软件下载
- DVD转换工具(AVStoDVD)下载v2.7.2 安装版-是一个灵活的媒体格式转换工具软件下载


