前端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');
相关推荐
Jonathan Star6 小时前
沉浸式雨天海岸:用A-Frame打造WebXR互动场景
前端·javascript
工业甲酰苯胺7 小时前
实现 json path 来评估函数式解析器的损耗
java·前端·json
老前端的功夫7 小时前
Web应用的永生之术:PWA落地与实践深度指南
java·开发语言·前端·javascript·css·node.js
LilySesy7 小时前
ABAP+WHERE字段长度不一致报错解决
java·前端·javascript·bug·sap·abap·alv
Wang's Blog8 小时前
前端FAQ: Vue 3 与 Vue 2 相⽐有哪些重要的改进?
前端·javascript·vue.js
再希8 小时前
React+Tailwind CSS+Shadcn UI
前端·react.js·ui
用户47949283569159 小时前
JavaScript 的 NaN !== NaN 之谜:从 CPU 指令到 IEEE 754 标准的完整解密
前端·javascript
群联云防护小杜9 小时前
国产化环境下 Web 应用如何满足等保 2.0?从 Nginx 配置到 AI 防护实战
运维·前端·nginx
醉方休9 小时前
Web3.js 全面解析
前端·javascript·electron
前端开发爱好者10 小时前
前端新玩具:Vike 发布!
前端·javascript