wpf 语音通话_[WPF 学习] 15.播放百度合成的语音

SoundPlayer是为应用程序添加音频功能最简单、最轻量型的方法,但只能播放wav格式的语音。

百度在线语音合成可以合成wav格式的语音,保存为本地文件,SoundPlayer出错,仔细看文档发现百度的wav就是pcm-16k(3为mp3格式(默认); 4为pcm-16k;5为pcm-8k;6为wav(内容同pcm-16k))

而pcm格式转换成wav格式只要在前面添加44字节的格式数据

_WaveHeader = new byte[] {

(byte)'R',(byte)'I',(byte)'F', (byte)'F', //4

0,0,0,0,//4字节文件长度,包括这44个字节

(byte)'W',(byte)'A',(byte)'V', (byte)'E', //4

(byte)'f',(byte)'m',(byte)'t', (byte)' ', //4

16,0,0,0,// length of FORMAT chunk (always 0x10)

1,0,//format: 1(PCM) ,2字节

1,0,//Channels 1 = 单声道,2字节

128,62,0,0,//采样频率 16000(16K)

0,125,0,0,//采样速率 1*16000*2

2,0,//采样字节数(16/8 2字节)

16,0,//采样位数(16位)

(byte)'d',(byte)'a',(byte)'t', (byte)'a', //4

0,0,0,0 //4字节语音数据长度

};

替换4-7和40-43字节的内容便是wav格式的文件了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值