Я строю новое приложение, используя угловые 7 и WEBRTC, и я использую Recordrtc.js к записи (аудио и видео), моя проблема заключается в том, когда я записываю несколько потоков только аудио первого потока.
public addStreamToRecorder(stream: MediaStream)
{
if (!this.recorder)
{
this.recorder = RecordRTC([stream],{type: "video"});
this.recorder.startRecording();
}
else
{
this.recorder.getInternalRecorder().addStreams([stream]);
}
}
После расследования я обнаружил, что приложение функция в recrdrtc не смешивает аудио
1 ответ
Я зафиксировал эту проблему, обновив функцию AppendStreams в RecordRTC с последней версией, в котором я получил его из Multistreamrecorder (https: // github. COM / StreamProc / MediaSreamRecorder)
Заменить приложение по течению в recordrtc с
this.appendStreams = function (streams) {
if (!streams) {
throw 'First parameter is required.';
}
if (!(streams instanceof Array)) {
streams = [streams];
}
arrayOfMediaStreams.concat(streams);
streams.forEach(stream => {
if (stream.getTracks().filter(function (t) {
return t.kind === 'video';
}).length) {
var video = getVideo(stream);
video.stream = stream;
videos.push(video);
}
if (stream.getTracks().filter(function (t) {
return t.kind === 'audio';
}).length && this.audioContext) {
var audioSource = this.audioContext.createMediaStreamSource(stream);
audioSource.connect(this.audioDestination);
self.audioSources.push(audioSource);
}
});
};
Похожие вопросы
Новые вопросы
angular
Вопросы по Angular (не путать с AngularJS), веб-фреймворку от Google. Используйте этот тег для угловых вопросов, которые не относятся к конкретной версии. Для более старой веб-платформы AngularJS (1.x) используйте тег angularjs.