MediaStreamRecorder
MediaStreamRecorder copied to clipboard
can not record local Stream and remote Stream at the same time
i try to record local stream and remote stream when two peers established a p2p connection(video chat), then upload the record-file to server ,but only remoteStream can be recorded, here's my code
pc.oniceconnectionstatechange = function(event) {
console.log("iceConnectionState:" + pc.iceConnectionState);
if (pc.iceConnectionState == 'connected') {
// when connected, start to recording
localRecorder = new MultiStreamRecorder(localStream);
localRecorder.video = inputElement; // to get maximum accuracy
localRecorder.audioChannels = 1;
localRecorder.ondataavailable = function (blobs) {
if (blobs.audio)
console.log("recorded local audio");
if (blobs.video)
console.log("recorded local video");
var currentIndex = localIndex ++;
var fileName = 'localVideo-' + currentIndex +'.webm'; //
var formData = new FormData();
// append video blob
formData.append('videoFileName', fileName);
formData.append('videoFile', blobs.video);
// append audio blob
fileName = 'localAudio-' + currentIndex +'.wav'; //
formData.append('audioFileName', fileName);
formData.append('audioFile', blobs.audio);
uploadFile(formData);
};
localRecorder.start(3 * 1000);
//record remoteStream
remoteRecorder = new MultiStreamRecorder(remoteStream);
remoteRecorder.video = videoOutput; // to get maximum accuracy
remoteRecorder.audioChannels = 1;
remoteRecorder.ondataavailable = function (blobs) {
// blobs.audio
// blobs.video
if (blobs.audio)
console.log("recorded remote audio");
if (blobs.video)
console.log("recorded remote video");
var currentIndex = remoteIndex ++;
var fileName = 'remoteVideo-' + currentIndex +'.webm';
var formData = new FormData();
// append video blob
formData.append('videoFileName', fileName);
formData.append('videoFile', blobs.video);
// append audio blob
fileName = 'remoteAudio-' + currentIndex +'.wav';
formData.append('audioFileName', fileName);
formData.append('audioFile', blobs.audio);
uploadFile(formData);
};
remoteRecorder.start(3 * 1000);
}
}
It should be recording only local-stream----NOT remote one.
Remote recording in Firefox isn't working as well.
BTW, make sure that video property is having valid reference.
recorder.video = uniqueHTMLVideoElement;
BTW, your code should be working in Chrome.
Hi, any updates on this issue?
actually can we record just remote stream only?
You can record remote-audio in Firefox using StereoAudioRecorder.js i.e. by using WebAudio solutions:
// if you're using MediaStreamRecorder.js
IsChrome = true; // this will force WebAudio solutions
var mediaRecorder = new MediaStreamRecorder(remoteStream);
mediaRecorder.mimeType = 'audio/wav';
// if you're using RecordRTC
var recordRTC = RecordRTC(remoteStream, {
type: 'audio',
recorderType: StereoAudioRecorder
});
Remote audio recording doesn't works in Chrome.
Demo, try in Firefox:
Thanks... hope chrome get working asap. On Sep 17, 2015 7:58 PM, "Muaz Khan" [email protected] wrote:
You can record remote-audio in Firefox using StereoAudioRecorder.js i.e. by using WebAudio solutions:
// if you're using MediaStreamRecorder.js IsChrome = true; // this will force WebAudio solutionsvar mediaRecorder = new MediaStreamRecorder(remoteStream); mediaRecorder.mimeType = 'audio/wav'; // if you're using RecordRTCvar recordRTC = RecordRTC(remoteStream, { type: 'audio', recorderType: StereoAudioRecorder });
Remote audio recording doesn't works in Chrome.
Demo, try in Firefox:
- https://www.webrtc-experiment.com/demos/remote-stream-recording.html
— Reply to this email directly or view it on GitHub https://github.com/streamproc/MediaStreamRecorder/issues/34#issuecomment-141104015 .
how can we record local and remote stream using recordRTC in a single stream?
how can we record local and remote stream using recordRTC in a single stream?