前言

小程序录制的语音格式是aar和mp3, 如果想语音文本识别,像百度语音等SDK要求的都是无损原声pcm格式(wav仅仅是pcm的封装),下面提供两种将mp3转换为wav的方法

0x1通过第三方接口

  1. <?php
  2. $url = 'http://server.com/sound.mp3';
  3. $data = json_decode(file_get_contents('http://api.rest7.com/v1/sound_convert.php?url=' . $url . '&format=wav'));
  4. if (@$data->success !== 1)
  5. {
  6.     die('Failed');
  7. }
  8. $wave = file_get_contents($data->file);
  9. file_put_contents('sound.wav', $wave);

0x2通过Mpg123

  1. apt-get install mpg123
  2. // or
  3. yum install mpg123

服务器上安装mpg123

执行shell转化

  1. mpg123 -w output.wav input.mp3

拿到wav格式就可以愉快的语音识别啦~

百度的语音识别不限制调用次数,文档请看这里: 百度语音sdk文档

gongzhonghao
关注“小K前端杂谈”,得到更多学习资源