使用lame转wav为mp3,报错MPEGMode is not defined

将wav格式转mp3,使用到lamejs ,npm安装,import导入后会报错MPEGMode is not defined,这时需要根据提示修改lamejs库代码

安装patch-package

yarn add --dev patch-package postinstall-postinstall

package.json文件scripts内添加命令

"scripts": {
    "postinstall": "patch-package"
  },

修改lamejs内代码

Lame.js:29行
Encoder.js:112行
PsyModel.js:162行
插入代码 var MPEGMode = require('./MPEGMode.js');

BitStream.js:33行
Presets.js:18行
插入代码  var Lame = require('./Lame.js');

QuantizePVT.js:54行
插入代码  var BitStream = require('./BitStream.js');

插入代码后,需要使用patch-package打个补丁

yarn patch-package lamejs
## 补丁完成后删除依赖重新安装依赖
rm -rf node_modules 
yarn

重启项目,包内修改内容已经全部更新,lamejs也不会报错了。若根据操作还报错,需要打开控制台查看错误信息,点入到resource里,查看标红的代码,然后将下面代码中匹配标红的错误,插入相应位置

var Lame = require('./Lame.js');
var Presets = require('./Presets.js');
var GainAnalysis = require('./GainAnalysis.js');
var QuantizePVT = require('./QuantizePVT.js');
var Quantize = require('./Quantize.js');
var Takehiro = require('./Takehiro.js');
var Reservoir = require('./Reservoir.js');
var MPEGMode = require('./MPEGMode.js');
var BitStream = require('./BitStream.js');
var Encoder = require('./Encoder.js');
var Version = require('./Version.js');
var VBRTag = require('./VBRTag.js');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值