如何在javascript中转换音频文件的比特率?

时间:2015-01-25 16:05:08

标签: javascript node.js audio

首先,我不得不为我糟糕的英语道歉:)

无论如何,我打算开发一个简单的网站,用户可以上传他们的音频文件并播放他人的文件。我计划使用Node.js和HTML5内置音频标签来播放文件。我从来没有使用过音频标签,所以我想知道标签是否真的很好用,所以今天我轻轻地写了一个简单的代码并播放了一个mp3文件,我遇到了一个问题,就是mp3文件没有使用标签。我意识到音频标签无法播放比特率为128kbps的音频文件。所以现在,我需要一种在javascript(使用Node.js)中从128kbps到128kbps自动转换的方法。

我从未使用过Node.js,所以我从来不知道怎么做。 我想知道的事情是它有可能而且很容易。

任何人都可以告诉我如何或在哪里找到解决方案。

感谢您阅读我的不良英语问题。

祝你好运:)

1 个答案:

答案 0 :(得分:1)

你可以通过产生类似SoX,ffmpeg等的东西轻松地做到这一点。这是一个使用SoX的例子(在Debian / Ubuntu上你需要确保为mp3安装libsox-fmt-mp3libsox-fmt-all支持):

var spawn = require('child_process').spawn;

require('http').createServer(function(req, res) {
  if (req.url === '/audio') {
    res.statusCode = 200;
    var cp = spawn('sox', ['/path/to/input.mp3', '-C', '128', '-']);
    return cp.stdout.pipe(res);
  }
  res.statusCode = 404;
  res.end();
}).listen(8000);