请问如何将pcm的wave转换成ulaw的wave文件

mengxiang2003 2009-11-30 03:42:47
如何将无压缩的wave文件(pcm)转换成ulaw格式的wave文件。
其实主要是转换后的文件头不会写。
...全文
373 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
nba676583050 2010-02-15
  • 打赏
  • 举报
回复
我要加分发烧多福多寿呵呵发烧合法是 减肥膏就发给你发生改变反射光会发给你家他敢规范激发就是飞机赶赴回过神施肥教辅书减肥膏肌肤设计风格发过 飞凤山发过
CyberLogix 2010-02-15
  • 打赏
  • 举报
回复
wFormatTag这个字段设置为WAVE_FORMAT_MULAW; // 0x0007
tufaqing 2009-12-15
  • 打赏
  • 举报
回复
给你一段文件头看看:
00000000h: 52 49 46 46 32 7F 02 00 57 41 56 45 66 6D 74 20 ; RIFF2..WAVEfmt
00000010h: 12 00 00 00 07 00 01 00 40 1F 00 00 40 1F 00 00 ; ........@...@...
00000020h: 01 00 08 00 00 00 66 61 63 74 04 00 00 00 00 7F ; ......fact.....
00000030h: 02 00 64 61 74 61 00 7F 02 00 7F FF FF FF FF FF ; ..data...

WAVEFORMATEX的填法:
pAudioFormat->wFormatTag = WAVE_FORMAT_MULAW; // 0x0007
pAudioFormat->nAvgBytesPerSec = pAudioFormat->nSamplesPerSec * pAudioFormat->nChannels;
pAudioFormat->wBitsPerSample = 8;
pAudioFormat->nBlockAlign = pAudioFormat->nChannels;
pAudioFormat->cbSize = 0;

fact段可以不需要,windows下Wave Parse + ACM Wapper可以正常播放。不过标准中说要加上,这个字段总共12字节,只有4个字节的描述,一个DWORD,表示文件中总共有多少个samples。可以参考WAV文档看看。
rightorwrong 2009-11-30
  • 打赏
  • 举报
回复
找个G711的编码器,G711编码没有文件头啊。
需要把wave文件的文件头wFormatTag标志设置下就好了。
mengxiang2003 2009-11-30
  • 打赏
  • 举报
回复
没人回答么?

2,554

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧