Intel® Collaboration Suite for WebRTC
Community support and discussions on the Intel® Collaboration Suite for WebRTC (Intel® CS for WebRTC).

Version 2.1

Artem_M_
New Contributor I
999 Views

Thank you for new version. You are really great.
We started test it and we have scome questions:

1) How to enable recording? [Added room level media recording for video conferences]
I found config.erizoController.recording_path - but it is empty.
In JS script button and function for start recording - disabled.

 

2) How to configurate turn stun servers [The default TURN/STUN server is set to our sample server]
2.1) What stun\turn server decision you can recommend? With what server app you working?
2.2) What configuration should be for:
- config.erizoController.stunServerUrl 
- config.erizoController.turnServer
- config.erizoController.turnServer.url
- config.erizo.stunserver


3) Is it possible to disable QOS policy in that version? [Added room level configuration, especially on media mixing, for setting resolution, bitrate, mixed video layout, etc]
I couldn't find anything about it in configuration file.
It is need to publish video with maximum bitrate.
Because if internet wasn't stable - video published the worst quality.

4) It really works in IE!!!

0 Kudos
15 Replies
Artem_M_
New Contributor I
999 Views

5) Is it possible to record NON mixing streams? Because mixing - use a lot of cpu - we don't want to use it. 

We want to record in separate files all publish steams

0 Kudos
Chunbo_H_Intel1
Employee
999 Views

Hi Artem,

Glad to see you get started with v2.1 so quickly!

Regarding your questions below:

1) How to enable recording? [Added room level media recording for video conferences]
[Chunbo]: Use the API of ConferenceClient.startRecorder and ConferenceClient.stopRecorder to do the media recording of mixed streams in video conference currently. Refer to the CS_WebRTC_Client_SDK_User_Guide.v2.1 doc for details.

2) How to configurate turn stun servers [The default TURN/STUN server is set to our sample server]
[Chunbo]: See the support email for more details. And let me know if any more question.

3) Is it possible to disable QOS policy in that version? [Added room level configuration, especially on media mixing, for setting resolution, bitrate, mixed video layout, etc]
[Chunbo]: No configuration of QoS is exposed. But the QoS policy is now enhanced to eliminate side effects of the worst connection to the overall MCU server. I recommend that you have a test of the previous scenario to check out.

Thanks!

0 Kudos
Artem_M_
New Contributor I
999 Views

 

1) Yes we found that. it working. But the main question is  the 5 question: Is it possible to record NON mixing streams? Because mixing - use a lot of cpu - we don't want to use it. 

2) Yes, we are testing them. But if you  send us  version and name of turn software you use in your servers - it will be great.

3) We will test it.

0 Kudos
Chunbo_H_Intel1
Employee
999 Views

For media recording, currently only mixed stream can be recorded in v2.1.

The TURN server we're using is the RFC5766 turn server. You can find it from http://turnserver.open-sys.org/downloads/.

0 Kudos
Artem_M_
New Contributor I
999 Views

Hello. We created own turn server and tested everything.

1) If we use turn server - client tries to connect for about 1 minute(no video). And then can't connect at all.

our server with turn: 

config.erizoController.turnServer.url = 'turn:5.9.150.135:3478?transport=tcp'; // default value: null
config.erizoController.turnServer.username = 'pruffme'; // default value: null
config.erizoController.turnServer.password = 'turnpassword'; // default value: null

our server is turnserver-3.2.5.7-debian-wheezy-ubuntu-mint-x86-64bits.tar

2) When we disable turn - The connection is fast - as in previous version(2.0).

But video in every 6-10 seconds - stops frame(for 2-5seconds) then gos again. Sound is ok in that time.

url to check is http://vs04.pruffme.com:3001/

one stream from cam - another from mcu. We don't use mix.

3) All logs of one session(with delays) and woogen_config are in attachments 458602

 

So, when video gas such delays - we can't test that version in production.

Such delays - is the main problem. 

I don't know why mcu cant connect to our own turn. Turn server config in attachment: 458603

 

0 Kudos
Chunbo_H_Intel1
Employee
999 Views

Hi Artem,

We've been using the same TURN server installation, and it works fine as just tested. Regarding the questions you posted, I just wonder the network logic between MCU server and your clients: a. Do you put the server on the public network? Since in most of the cases, a conference server should not be deployed behind a firewall or NAT. What is the bandwidth situation of the server? b. What is the network condition of your typical clients? How do they connect to the server? c. Is the turn server in the same network as the MCU server? What is the machine configuration and network condition? More details would help us to reproduce the issues...

http://vs04.pruffme.com:3001/ seems to not work currently. We try to reproduce the delay of video you described with forward mode applied. The details above would help. Thanks!

0 Kudos
Artem_M_
New Contributor I
999 Views

1) Yes our all servers are in public network
2) We haven't got any nat or firewall at all on that servers
3) bandwidth can have to 1Gb/s
4) Clients can be af all types. From public, non public, restricted areas
5) MCU was installed on empty server without anithing...

6) Server is turne on again. Sorry - it was rebooted;

0 Kudos
Sergey_P_1
Beginner
999 Views
Hi Chunbo!
 
I have made screenshot video http://youtu.be/C8ENhB6WMXc  of testing http://vs04.pruffme.com:3001/
 
Internet client connection:
download speed 4,8 Mb/s
upload speed 4 Mb/s
0 Kudos
Chunbo_H_Intel1
Employee
999 Views

Hi Sergey,

For the test case you presented in the video, where is the client? Is it in the same network as the server, like both in the public network?

Is TURN settings enabled on your server?

0 Kudos
Sergey_P_1
Beginner
999 Views

 

Hi Chunbo,

Client was in Russia, Server located in Germany, both are in public network. Turn was switched off because we cannot install it properly.

The top video – was the real video from camera (without network). The second video with delays and pauses was from MCU Webrtc media server.

0 Kudos
Chunbo_H_Intel1
Employee
999 Views

I think the hotfix has already resolved the delays and pauses. Thanks for your continuous support and efforts!

0 Kudos
Sergey_P_1
Beginner
999 Views

Hi Chunbo,

But we face with bugs then we try screensharing in 2.1.1 version.
 

The error is 
 
Error in event handler for (unknown): TypeError: Cannot read property 'streamId' of undefinedhandler @ extensions::uncaught_exception_handler:8
 
You can find it for examplre in chrome(last version 42.0.2311.135 m)
in 
Here is the last version.
In previous versions all worked fine. Seemed to be a javascript error.
0 Kudos
Farrukh_M_
Beginner
999 Views

Sergey,

   I had this issue for weeks and was able to do a workaround. I have opened a ticket with Intel also to resolve it fully. As a workaround, you get your own chrome extension id from the sample "screen-sharing-chrome-extension" example they gave in the files. Change woogeen.sdk.js under basic_example with your own extension id. For p2p change it in woogeen.p2p.js

b.video.extensionId||"fdpi###################"; <-- change it with your own extension id

I think the error is in below code. When it goes through the try { chrome.runtime.sendMessage...} it exits the whole if statement because of the error "Error in event handler for (unknown): TypeError: Cannot read property 'streamId' of undefined". It should tell me that I don't have extension installed or something reasonable" Please check the code. Thank you

 if (a.video && "screen" === a.video.device) {

                d = a.video.extensionId || "nkemblooioekjnpfekmjhpgkackcajhg";

                l.audio = !1;

                try {

                    chrome.runtime.sendMessage(d, {getStream: !0}, function(a) {

                        l.video.mandatory.chromeMediaSource = "desktop";

                        l.video.mandatory.chromeMediaSourceId = a.streamId;

                        j.apply(navigator, [l, o, n])

                    })

                } catch (u) {

 

 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

 

I ran it in chrome console window and got the same error while pausing at line 223 of woogeen.p2p.js

 

chrome.runtime.sendMessage(d, {getStream: !0}, function(a) {

                        l.video.mandatory.chromeMediaSource = "desktop";

                        l.video.mandatory.chromeMediaSourceId = a.streamId;

                        j.apply(navigator, [l, o, n])

                    })

undefined

 

0 Kudos
Chunbo_H_Intel1
Employee
999 Views

Hi guys,

Yes, I've talked with the feature owner regarding the much more friendly popup when this kind of error happens. Bug has been logged. Thanks!

0 Kudos
Chunbo_H_Intel1
Employee
999 Views

Hi guys,

Just checked our latest SDK doc, some information for screen sharing stream creation is currently missed there. Sorry for the inconvenience...

When you try to create local stream with screen sharing, please make sure you have the following parameters passed to stream API:

    video: {
      device: 'screen',
      extensionId: 'xxxxxxxxxxxxxx', // Your own extension ID
      .....
    },

0 Kudos
Reply