【发布时间】:2020-09-10 10:03:41
【问题描述】:
我想将不同的音频媒体流混合到一个流中。我一直在使用 Web Audio audiocontext 和 createMediaStreamSource 进行此操作。
但最终的混合音频有点卡顿。
有人知道如何优化它以避免口吃吗?
// init audio context
var audioContext = new AudioContext({ latencyHint: 0 });
var audioDestination = audioContext.createMediaStreamDestination();
// add audio streams
audioContext.createMediaStreamSource(audioStream1).connect(audioDestination);
audioContext.createMediaStreamSource(audioStream2).connect(audioDestination);
audioContext.createMediaStreamSource(audioStream3).connect(audioDestination);
audioContext.createMediaStreamSource(audioStream4).connect(audioDestination);
// get mixed audio stream tracks
var audioTrack = audioDestination.stream.getTracks()[0];
// get video track
var videoTrack = videoStream.getTracks()[0];
// combine video and audio tracks into single stream.
var finalStream = new MediaStream([videoTrack, audioTrack]);
// assign to video element
el_video.srcObject = finalStream;
【问题讨论】:
标签: javascript stream web-audio-api audiocontext