【问题标题】:Merge WAV audio and WebM video合并 WAV 音频和 WebM 视频
【发布时间】:2013-11-28 10:10:08
【问题描述】:

有没有办法在 nodejs 服务器中合并音频(wav)和视频(webm)?

由于 WebM 是一种容器格式,我希望可以将音轨添加到现有的 WebM 文件中。 我是对的?

任何人都知道用于执行此操作的 NodeJS 包吗?

【问题讨论】:

标签: node.js wav webm


【解决方案1】:

找到了解决方案,但做起来并不简单。 为此需要 ffmpeg(或类似的)。

要安装它,我完成了以下步骤:

  1. (仅适用于 mac)安装 HomeBrew
  2. 使用所需的所有依赖项运行 ffmpeg 的安装:

    sudo brew install ffmpeg --with-libvpx --with-theora --whit-libogg --with-libvorbis

    现在我们可以使用这个 shell 命令合并音频和视频文件:

    ffmpeg -i video-file.webm -i audio-file.wav -map 0:0 -map 1:0 output-file-name.webm

在这里我们可以从我们的 shell 中合并文件,但我需要的不是这个。我需要从 NodeJS 服务器执行此操作的能力,为此我们现在可以运行此代码。

var util = require('util'),
  child_process = require('child_process');

var exec = child_process.exec;

function puts(error, stdout, stderr) {
  stdout ? util.print('stdout: ' + stdout) : null;
  stderr ? util.print('stderr: ' + stderr) : null;
  error ? console.log('exec error: ' + error) : null;
}

exec("ffmpeg -i video-file.webm -i audio-file.wav -map 0:0 -map 1:0 output-file-name.webm", puts);

这个简单的解决方案对我来说很好。

【讨论】:

    【解决方案2】:

    【讨论】:

    • 感谢您的建议! ;) 我已经使用 RecorderRTC 进行录制,但我为 ffmpeg 命令创建了“我自己的包”... -_- 我没有搜索包...但是现在一切正常! ;)
    猜你喜欢
    • 2016-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多