javascript - 如何在 JavaScript 中剪切录音

标签 javascript recorder.js

假设我使用 Recorder.js 从我的麦克风录制音频。我怎样才能 trim/裁剪/切片/剪切录音?意思是,假设我记录了 3.5 秒,而我只想要前 3 秒。有什么想法吗?

最佳答案

您可以在 3 秒时停止原始录制或使用 <audio>元素,HTMLMediaElement.captureStream()MediaRecorder录制 3 秒的原始录音回放。

const audio = new Audio(/* Blob URL or URL of recording */);
const chunks = [];
audio.oncanplay = e => {
  audio.play();
  const stream = audio.captureStream();
  const recorder = new MediaRecorder(stream);
  recorder.ondataavailable = e => {
    if (recorder.state === "recording") {
      recorder.stop()
    };
    chunks.push(e.data)
  }
  recorder.onstop = e => {
    console.log(chunks)
  }
  recorder.start(3000);
}

关于javascript - 如何在 JavaScript 中剪切录音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45662302/

相关文章:

javascript - Materialise CSS 框架抛出错误

JavaScript 定义然后调用语法

html - 降低使用 recorderjs 创建的 WAV 文件的比特率

javascript - 当尝试在另一个组件内渲染一个组件时, Prop 会变得未定义

php - 当包含空格或特定字符时,Javascript 参数不能很好地执行

javascript - 如果使用 XMLHttpRequest 发送 wav 文件,如何在 PHP 中将其保存在服务器上?

javascript - 使用 recorder.js 以低 kbps 录制音频

javascript - 如何在 Angular 模块中定义层次结构路由

javascript - 连接音频 blob