前端mp3文件转wav文件的实现

一、音频文件格式转换

1)安装fluent-ffmpeg和ffmpeg插件

bash 复制代码
npm install fluent-ffmpeg;
npm install ffmpeg;

2)mp3转wav

test.js文件:

bash 复制代码
const ffmpeg = require('fluent-ffmpeg');

ffmpeg('./test.mp3')
.format('wav')
.audioBitrate('16k')
.audioFrequency(16000)
.audioChannels(1)
.on('error', function(err){
    console.error('An error occurred: ', err);
})
.on('progress', (progress) => {
    console.log('Processing: ' + progress.targetSize + ' KB converted');
})
.on('end', function(){
    console.log('Processing finished !');
})
.save('test.wav');

3) 执行转换

bash 复制代码
node test.js

运行test.js文件,报错"An error occurred: Error: Cannot find ffmpeg",如下图所示

二、"An error occurred: Error: Cannot find ffmpeg"问题解决办法

1)安装'@ffmpeg-installer/ffmpeg'

bash 复制代码
npm install @ffmpeg-installer/ffmpeg

2)test.js文件修改

bash 复制代码
const ffmpegInstaller = require('@ffmpeg-installer/ffmpeg');
const ffmpeg = require('fluent-ffmpeg');
ffmpeg.setFfmpegPath(ffmpegInstaller.path);

ffmpeg('./test.mp3')
.format('wav')
.audioBitrate('16k')
.audioFrequency(16000)
.audioChannels(1)
.on('error', function(err){
    console.error('An error occurred: ', err);
})
.on('progress', (progress) => {
    console.log('Processing: ' + progress.targetSize + ' KB converted');
})
.on('end', function(){
    console.log('Processing finished !');
})
.save('test.wav');
相关推荐
特立独行的猫a21 分钟前
用仓颉写一个 Tauri:IPC 的每次往返实现原理(web层到仓颉层的触发过程)
前端·ui·harmonyos·tauri·鸿蒙·仓颉
Dovis(誓平步青云)21 分钟前
多个链接不等于多份证据,新闻核验看板怎样合并来源
java·服务器·前端·javascript·人工智能·pdf·电脑
骑着蜗牛撵大象32736 分钟前
Qt 事件机制详解:从 QEvent 派生类到事件过滤器的全景指南
前端·python
qq_2518364571 小时前
理发管理系统 —— 会员模块
开发语言·前端·python·flask
Frag0ut1 小时前
2027 年浏览器展望:Chrome 与 Edge 的 AI 智能体进化方向
前端·人工智能·chrome·edge·浏览器·新功能
计算机魔术师2 小时前
从AI绘图鼻祖到音乐版权破局者,Stability AI如何被三大唱片巨头「收编」
前端
奕鼎竜瑆2 小时前
Chrome 插件开发实战指南:从入门到发布
前端·chrome
广州华水科技2 小时前
水库北斗GNSS变形监测系统及单北斗形变监测一体机应用解析
前端
anew___4 小时前
《从零手写操作系统 (20):ELF加载器——让OS读懂现代编译器》
java·服务器·前端
ss2734 小时前
AI全栈实战 | 2.3-01 组件库实战:Element Plus 怎么搭出专业界面,过度封装为什么成维护负担
前端·javascript·elementui·vue