如何使用 npm mp3 转 wav
Posted
技术标签:
【中文标题】如何使用 npm mp3 转 wav【英文标题】:How to use npm mp3 to wav 【发布时间】:2019-05-22 22:36:27 【问题描述】:当尝试使用 npm mp3-to-wav
将 mp3 转换为 wav 时,控制台返回,
"mp3 to wav exec err: saveForWav err: Path must be a string. 收到 ['C:\Projects\Weatherman\meme.wav']"
我相当确定我给它喂的是一个字符串,所以我不知道问题出在哪里。 npm mp3-to-wav
可以在 https://www.npmjs.com/package/mp3-to-wav#2-usage 找到,这是我的代码。
const Mp32Wav = require('mp3-to-wav');
new Mp32Wav("C:/Projects/Weatherman/meme.MP3").exec()
如何让文件接收目录路径,我的目录路径有问题吗?
【问题讨论】:
大多数 Windows 路径使用反斜杠 (\\
)。不过,我对图书馆的了解还不够,不知道这是否是问题所在。
【参考方案1】:
你得到的错误不是来自 'mp3-to-wav' 它来自 fs 你的路径没有问题
class Mp32Wav
constructor(input_file_path, output_dir)
if (!utils.checkArgsNotNull(...input_file_path))
throw new Error('err arguments')
output_dir = utils.judgeNotNull(output_dir) ? output_dir : utils.splitFileDir(input_file_path)
this._input_file_path = input_file_path
this._input_file_name = utils.splitFilename(input_file_path)
this._output_dir = output_dir
this._output_file_name = this._input_file_name.toString().replace(/\.mp3/i, '')
正如你在他们的构造函数中看到的,他们忽略了大小写敏感
.replace(/\.mp3/i, '')
我不使用 windows,但我认为使用路径模块创建路径并检查其是否绝对对您有所帮助
Node.js path.isAbsolute() 方法
https://www.w3schools.com/nodejs/met_path_isabsolute.asp
另外,w3c 中的所有示例都在 windows 中使用双 \\ insted of \
例如
console.log(path.isAbsolute('C:\\test\\demo_path.js')); //true
【讨论】:
以上是关于如何使用 npm mp3 转 wav的主要内容,如果未能解决你的问题,请参考以下文章
小程序语音红包中遇到的 语音识别silk转wav格式 如何在线转 或者mp3转wav格式
如何利用 iTunes 把 m4a/wav 文件转成 MP3 格式
微信小程序语音识别开发过程记录 微信小程序silk转mp3 silk转wav 以及ffmpeg使用
如何使用 python 脚本停止/关闭音频文件(mp3/.wav)