The node.js Composite and Composite Recording examples

755 views
Skip to first unread message

Vadim Sattarov

unread,
Sep 4, 2015, 7:24:39 AM9/4/15
to kurento
Hi all,

In the attached files you can find two examples. One of them is the fixed previous example, and the second is the recorder example.

It seems that this is the usual task - recording of the videochat in one file.

I think there should be the Random Composite hub for Kurento. This composite will allow to place the videos from the hubports with custom layout, not only as a table.

If these examples were exit on the site, I would save the time.

Thanks.
kurento-one2one-composite.zip
kurento-one2one-composite-record.zip

Ivan Gracia

unread,
Sep 4, 2015, 11:49:57 AM9/4/15
to Kurento Public
Hi Vadim,

Thanks for the contribution! If you have that on github, perhaps we could link to them that way.

Cheers,

Ivan Gracia



--
You received this message because you are subscribed to the Google Groups "kurento" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kurento+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Thabungba Meetei

unread,
Oct 8, 2015, 3:06:27 PM10/8/15
to kurento
Hi Vadim Sattarov,

I can see black screen in the recorded file. I can hear the audio though. What could be the issue?

Thanks!

Vadim Sattarov

unread,
Oct 9, 2015, 2:50:01 AM10/9/15
to kurento
Hi,

I have found out the issue that causes this problem.

Look at this code in the server.js

callerWebRtcEndpoint.on('OnIceGatheringDone', function(error) {
 candidates_ready
[callerId] = true;
 
if (candidates_ready[calleeId]) {
 recorderEndpoint
.record();
 
}
});
calleeWebRtcEndpoint
.on('OnIceGatheringDone', function(error) {
 candidates_ready
[calleeId] = true;
 
if (candidates_ready[callerId]) {
 recorderEndpoint
.record();
 
}
});

In order to avoid the blaxkness in the beginning of the video file, I start the recording only when the iceCandidate for both clients are ready. But I have found out that when the recording started a bit later, the problems occure in the recording.
So just replace it with the following:

 recorderEndpoint.record();

This is placed in the end of the callbacks chain, in the deep.

Hope this helps.

четверг, 8 октября 2015 г., 22:06:27 UTC+3 пользователь Thabungba Meetei написал:
Reply all
Reply to author
Forward
0 new messages