1.应用场景:手机app内录制不超过60秒的录音,进行保存,可以实现播放
实现过程
(1).前端调取手机麦克风,录制音频,转成base64文件传给后端
(2).后端将前端传过来的base64文件进行解析,然后作为输出流,输出为wav或者mp3文件
(3).小编是将文件上传至服务器,然后记录上传的地址+文件名,当前端需要访问时,直接将路径返回即可,前端可以利用组件直接播放
下面是后台处理base64录音的全部代码
/**
* 将base64音频文件保存到服务器
* @param base64Audio base64音频文件
* @param path 路径
* @param audioName 音频名称
*/
public static void saveAudios(String base64Audio,String path,String audioName){
byte[] bytes=null;
try {
bytes = new BASE64Decoder().decodeBuffer(base64Audio);
} catch (IOException e) {
e.printStackTrace();
}
/* Base64.Decoder decoder = Base64.getDecoder();
byte[] bytes = decoder.decode(base64Data);*/
File file = new File(path);
if (!file.exists()){
file.mkdir();
}
if (bytes.length>0){
FileOutputStream fs=null;
try {
fs = new FileOutputStream(path + audioName);
fs.write(bytes);
fs.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
前端录音用的vue,有前端小伙伴需要前端代码的可以留言,小编可以上传一份