Informations about the Streaming plugin and the Video Room plugin

1,265 views
Skip to first unread message

Webmaster Webmaster

unread,
Feb 26, 2016, 4:47:36 PM2/26/16
to meetecho-janus
Hi,

could you please tell me if the streaming plugin allows a WebRTC-compliant peer to offer its preferred media to Janus? I do not understand if this plugin is specific to the three streaming approaches mentioned in the documentation only (i.e. gstreamer and those originated by files).

A second question is if Janus or the video room plugin honors the 'sendonly' attribute that might be received in an offer from a peer.

Lorenzo Miniero

unread,
Feb 27, 2016, 4:11:18 AM2/27/16
to Webmaster Webmaster, meetecho-janus

No, the streaming plugin only restreams a non webrtc source. The videoroom plugin does, instead, and yes, it requires publishers to be sendonly and subscribers/listeners to be recvonly, as it follows a publish/subscribe pattern.

Notice that you can also have the videoroom plugin forward the media coming from a publisher to an external component via rtp, e.g., an instance of the streaming plugin somewhere.

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

Webmaster Webmaster

unread,
Feb 28, 2016, 12:38:11 AM2/28/16
to meetecho-janus, extracivi...@gmail.com
Hi Lorenzo,

thanks for the answer. Actually this is indeed well explained in  the documentation, which I did not find initially:

https://janus.conf.meetecho.com/docs/janus__videoroom_8c.html

Could you please tell me where to find the exact accepted plugin-specific JSON payloads ('body') associated with the following three commands:

- join
- publish
- leave

which should be enough to properly broadcast to a video room? Three examples of complete JSON blocks would really help.

Also, could you tell me if the support for PLANB is still experimental?

Lorenzo Miniero

unread,
Feb 29, 2016, 3:17:01 AM2/29/16
to meetecho-janus, extracivi...@gmail.com
Plan B is still experimental and I don't even know if it still even works, as we haven't touched that part of the code in a long time. We're waiting for Google to swtitch to Unified Plan (which is what the IETF agreed upon and Firefox already does) before resuming our efforts on multistream.

As to the examples, sorry, no docs or snippets available. Just look at the demos and you should be able to learn how plugins work there.

L.

aset...@gmail.com

unread,
Jan 26, 2017, 7:25:01 PM1/26/17
to meetecho-janus
Can a non-webrtc video source also publish to a video room along with other webrtc video sources?

Can different video publishers use different codecs in the video room?

Mirko Brankovic

unread,
Jan 27, 2017, 2:14:20 AM1/27/17
to meetecho-janus
Ad long as the source can follow offer/answer sdp rules and ICE protocol also, i guess there shouldn't be a problem.
Theoretically, codec shouldn't be a problem as long as all participants can understand it, if they offer ot in their sdp, since videoroom is plugin that will just forward rtp if sdp O/A is successful.

But wait for some more answers since im also new here ;)

Mirko 

On Jan 27, 2017 01:25, <aset...@gmail.com> wrote:
Can a non-webrtc video source also publish to a video room along with other webrtc video sources?

Can different video publishers use different codecs in the video room?

--
You received this message because you are subscribed to the Google Groups "meetecho-janus" group.
To unsubscribe from this group and stop receiving emails from it, send an email to meetecho-janus+unsubscribe@googlegroups.com.

Lorenzo Miniero

unread,
Jan 27, 2017, 4:24:03 AM1/27/17
to meetecho-janus
To publish in a VideoRoom you have to use the WebRTC protocol suite: SDP and ICE are not enough. If you need non-WebRTC sources to publish in a VideoRoom, use the Streaming plugin and have users subscribe to that (from a user perspective it's just the same, it's still video streams).

And no, you cannot use different codecs in the VideoRoom. When you create a room, you choose which codecs have to be mandated for both audio and video (opus and vp8 by defauly). Leaving this up to the users could easily end up with participants using incompatible codecs.

L. 

aset...@gmail.com

unread,
Jan 27, 2017, 5:02:42 AM1/27/17
to meetecho-janus
Can the streaming plugin be daisy-chained to publish to a video room? I want both webrtc media sources and legacy(non-webrtc) media sources to be publishing to the same room.

As long as all subscribers can decode vp8&vp9&h264, what is the problem supporting differing publishers? It must be the constraint that Sdp of the video room is fixed and does not vary per publisher? For audio, let us make the assumption that they all use opus since janus actively is involved in mixing. For video, janus is a pass-through conduit and ideally shouldn't care which codec the publisher uses

Lorenzo Miniero

unread,
Jan 27, 2017, 5:16:33 AM1/27/17
to meetecho-janus
No, only the other way around (VideoRoom to Streaming via RTP forwarders).

A room is an abstract concept: VideoRoom is one way of handling the concept of room in that specific plugin. From a user perspective, a room can be whatever you want, even involving different plugins at the same time. We do that all the time. For IETF meetings, for instance, we put together Streaming mountpoints, VideoRoom publishers and SIP calls: all users see are WebRTC streams (doesn't really matter where they come from and where you send your media to), and they're logically put together at an application level (as in not in Janus, but in your own application). You may want to do something similar, if legacy sources are relevant to your application.

Lorenzo
Reply all
Reply to author
Forward
0 new messages