Я пытаюсь записать медиапоток удаленного пользователя. Объект Media Stream, который передается от удаленного пользователя, похоже, очень похож на локальный объект Media Stream, созданный с помощью getUserMedia, однако при передаче этого в визуализатор Media Stream ничего не выводится (если я пропускаю локальный медиапоток, то визуализатор имеет вывод). Я могу слышать медиа-поток удаленного пользователя, поэтому я знаю, что что-то передается.Как записать удаленный webRTC MediaStream?
поток удаленного медиа выглядит как
active: true
id: "Q7aYJkeOt5xhHJ53c3JVhr41scl6QQEib5lt"
onactive: null
onaddtrack: null
onended:()
oninactive: null
onremovetrack: null
__proto__: MediaStream
и имеет звуковую дорожку
enabled: true
id: "021f5032-a524-42ae-ad40-bf0798df89cd"
kind: "audio"
label: "021f5032-a524-42ae-ad40-bf0798df89cd"
muted: false
onended: null
onmute: null
onunmute: null
readyState: "live"
remote: true
__proto__: MediaStreamTrack
Местные СМИ Поток выглядит что-то вроде
active: true
id: "fP3smf9D78yl9YXV8jZwGPkMNL2UkwrXc2sl"
onactive: null
onaddtrack: null
onended:()
oninactive: null
onremovetrack: null
__proto__: MediaStream
с аудио дорожкой
enabled: true
id: "32da421e-0a35-4fe4-b553-8a3206d244ec"
kind: "audio"
label: "Default"
muted: false
onended: null
onmute: null
onunmute: null
readyState: "live"
remote: false
__proto__: MediaStreamTrack
Единственная реальная разница, которую я вижу, - это удаленный флаг в звуковой дорожке.
Я намерен использовать инфраструктуру записи на основе облака, такие как Twilio запись медиапотоков, главным образом, уменьшить нагрузку на клиентскую сторону. Я не вижу разницы между локальным медиапотоком и удаленным, кроме локального, можно визуализировать и записывать, тогда как пульт не может. Нужно ли мне разбирать объект Media Stream, или я могу использовать MediaStreamTrack и передать его в инфраструктуру записи? –
@ muaz-khan [Chrome 49 является первым, кто поддерживает API MediaRecorder без флага] (https://github.com/addpipe/Media-Recorder-API-Demo). –