Questions tagged [licode]

Open Source WebRTC Communications Platform Based that implements webRTC API and using node.js, it is for building videoconference/chat rooms, it provides a development of videoconference features based on HTML5.

Licode Is an open source WebRTC communications platform based implements webRTC API and using node.js.

Architecture:

Clients:

Are JavaScript applications that run on browsers. Users will be able to access Licode rooms by using these clients. When connecting to a room a client needs the access token that is usually taken by server apps. But the use of these rooms depends on your imagination! You could implement videoconference rooms, chat, synchronization mechanisms, VoIP applications, and so on. Clients talk to Erizo Controller through Erizo client, which is part of this project.


Server:

Developers will manage rooms (creation and deletion) from their server apps.

Typical server apps can create a room, and request access for their users to Nuve, via a token-based authentication mechanism.

This mechanism allows these servers to create access tokens, and they will provide these tokens to their clients.

Server talks to Nuve in order to do these actions.


Rooms:

All users and clients in a room can share their streams through Licode.

They can act like videoconferencing chats, instant messaging rooms, video streaming sessions, and any other kind of virtual space for real-time collaboration.

A room is created by server apps through Nuve API, and the users will connect to these rooms through Erizo.

Rooms are controlled by Erizo Controller, which manages Erizo through a JavaScript wrapper called Erizo API to control streams.


Erizo:

Clients will connect users to rooms through Erizo service. Developers can manage this service with a JavaScript library that runs in the browser.

Erizo is a cloud-based scalable service that allows multiple users to connect to Licode rooms. These rooms are created by the server apps using Nuve API.

Erizo Controllerwhich manages Erizo through a JavaScript wrapper called Erizo API to control streams.


Nuve API:

Developers can manage Licode rooms by sending requests to this API. These requests are typically sent from server apps, coded in python, node.js, Ruby on Rails, and so on.

Licode provides different libraries, plug-ins and add-ons to facilitate the tasks of creating and removing rooms.

Server apps can also ask for access tokens to this API. These tokens are needed for user connections, so developers should pass them to clients.

Server talks to Nuve in order to do these actions.


Resources:

20 questions
8
votes
1 answer

How do I handle packet loss when recording video peer to server via WebRTC

We are using the licode MCU to stream recorded video from Google Chrome to the server. There isn't a second instance of Google Chrome to handle the feedback and the server must do this. One thing that we have encountered is when there is packet…
Jay Prall
  • 5,295
  • 5
  • 49
  • 79
7
votes
1 answer

How should PLI packets be used in WebRTC video recording

We are using the licode MCU to streaming video from Google Chrome to the server and record it. The tricky part here is that there is only one Chrome browser involved so the server-side code has to handle sending feedback to the client. We added…
Jay Prall
  • 5,295
  • 5
  • 49
  • 79
5
votes
1 answer

Licode Erizo.Stream Video Frame quality

I use Licode it is Open Source WebRTC Communications Platform. I want to reduce the video quality (Video-Frame bits size). The stream looks like this: var stream = Erizo.Stream({ audio:true, video:video_constraints, data: true, …
Muath
  • 4,351
  • 12
  • 42
  • 69
4
votes
1 answer

Streaming video with transparent pixels using webrtc

I am trying to capture html5 canvas using captureStream API which has drawings on it and play it using html5 video tag. Problem I am facing is, when I capture the stream and play it with in video tag It plays exactly same.But when I send that stream…
piyush
  • 868
  • 13
  • 29
1
vote
0 answers

Publish or initialize audio only stream in licode

I need to initialize audio only stream (audio: true, video: false). But when I pass the options (audio: true, video: false) in erizo.stream I'm unable to hear the voice of published stream. I tried different cases like: (none is working) did not…
Shubham Gupta
  • 19
  • 1
  • 4
1
vote
0 answers

audio(sound) is missing in licode recorded *.mkv files

I am using licode docker latest image on my machine to run and test licode video recording feature. The recording feature is working as expected only audio is missing in recored *.mkv file. I have already cross checked the configuration part. Audio…
Bharat Bhushan
  • 2,077
  • 2
  • 21
  • 34
1
vote
0 answers

What is the optimal usage of Bandwidth for a Signaling server?

We are using Licode for a Audio/Video conferencing solution. For a conference room with 15 members (audio only, without video), the bandwidth usage of the Signaling Server is in the range of 4 MB/sec (Out) and 750 KB/sec (In). Is this expected…
Prakash G. R.
  • 4,746
  • 1
  • 24
  • 35
1
vote
2 answers

How to start / stop Licode?

I don't know how to stop ,how to start the Licode server .I just know the shell script ./licode/scripts/initLicode.sh. to let the example run. Can anyone help me to figure out how to start / stop the Licode server? http://lynckia.com/licode/
Bill
  • 4,614
  • 13
  • 77
  • 132
0
votes
0 answers

How can I go about building Licode sources for use in Android JNI?

How can I go about building Licode sources for use in Android JNI? I was hoping to build Licode to build it to the various Android ABIs : armeabi-v7a, arm64-v8a, x86, and x86-64. Thank you all in advance.
Program-Me-Rev
  • 6,184
  • 18
  • 58
  • 142
0
votes
0 answers

What is the best webrtc sfu server for voice call large group?

I want to create app and website , server can join a room and voice chat (100 users) like Ptt(Push to talk). I find out that webrtc can do it, so I use Peerjs. After that I saw some many problems that can't not work with large group user. I know sfu…
SonPham
  • 1
  • 1
0
votes
0 answers

Over release a object in an dictionary that cause EXC_BAD_ACCESS error?

I have a object ECClient, it is retained by a dictionary in ECSignalingChannel and also by ECRoom. Unfortunatly, ECClient crashes when it's being released. I guess the reason it crashes is because it's released by owner (ECRoom) and the dictionary…
allenlinli
  • 2,066
  • 3
  • 27
  • 49
0
votes
1 answer

Licode falls after not using it in a certain time

I'm working with the webRTC Licode and I've noticed that, sometimes (it does not always happen) after about two days approximately without using Licode it falls and stops working. I get the following error. Image here Does anyone know how could I…
Xavi
  • 23
  • 6
0
votes
1 answer

Rename recordings that are stored on the server - Licode webRTC

I’m trying to save the recordings with the user name that is added to the room, I see that to rename the recordings I have to edit the variable recordingId in the erizoController.js file , but this leaves me a static name for all recordings and I…
Xavi
  • 23
  • 6
0
votes
2 answers

Licode: Publishing Stream has failed after successful ICE checks

I'm following the guide on Licode page I have installed everything on Ubuntu 14.04. I have configure ssl for licode and erizo controller in licode_config.js file to make the example works. Every other configurations i just keep them un-touch. I have…
khoa_chung_89
  • 975
  • 9
  • 25
0
votes
1 answer

Licode Export Frames as JPG

I am trying to build a one to many video publish application based on webrtc and installed licode to my server. My question is, Is there any way export frames to a specific folder as jpg, png etc.
CnR
  • 68
  • 1
  • 7
1
2