需求1: 调用语音听写接口, 类似百度要pcm格式音频, 但是发现百度给的mp3转pcm的demo转出的音频识别错误, 不知道我是不是copy错哪里了...
需求2: 大量音频需要切分成多个小句子(参看jdk11 HttpClient 爬虫中, 爬了***网的音频, 其中有个精听练习, 音频分为多个段落,我需要按照这个段落切分成一个个小音频)
以上这两个需求我最终都选择了ffmpeg来实现.
下载并安装ffmpeg
windows10配置
下载, 配置环境变量到Path, cmd测试ffmpeg命令
CentOS配置
略, 百度一下
mp3转pcm
/**
* MP3转换PCM文件方法
*
* @param mp3filePath 原始文件路径
* @param pcmFilePath 转换文件的保存路径
*/
public static boolean mp32pcm(String mp3filePath, String pcmFilePath) {
// String command = "ffmpeg -y -i mp3filePath -acodec pcm_s16le -f s16le -ac 1 -ar 16000 pcmFilePath";
try {
String command1 = "ffmpeg -y -i ";
String command2 = " -acodec pcm_s16le -f s16le -ac 1 -ar 16000 ";
Runtime runtime = Runtime.getRuntime();
Process exec = runtime.ex