Comments (7)
Comparing to the others solutions, this is somewhat similar to janus videoroom plugin I guess, but videoroom plugin is hard coding 5 publishers maximum (was 3 previously).
Hubs moved to dialog/mediasoup and is able now to have a lobby with 75 subscribers in the lobby listening to the publishers' audio, and 24 publishers in the room.
from janus-plugin-sfu.
You're definitely right that currently the code assumes that every user will have a publisher which is sort of the "master" connection for that user, or else things don't make much sense.
This sounds like a fine idea, but I'm kind of hesitant to put a lot of work into it until the Janus multistream changes are live, because everything would change dramatically.
from janus-plugin-sfu.
(In general, once multistream is in, I'm open to doing a bunch of work to refit the plugin to your needs and to anyone else's needs who is interested in it, now that Hubs moved away from it -- it will depend on how much demand there is and how cool I think your projects are. But until then I am not really motivated to make big changes. Of course, in the meantime, I am happy to answer questions, help review any changes you make, etc.)
from janus-plugin-sfu.
I'm not asking you to do all the work @mqp :-)
I'm glad you did all the changes recently and answered my questions. A big thanks for that!
I want mainly to start a conversation here and see if there is an interest for others. If I really need it, I'll start to learn rust more seriously. ;-)
I agree this use case can include some important changes.
It depends of the use case, but having a publisher broadcasting in several rooms may have simpler changes and others are interested in it #55
from janus-plugin-sfu.
About my comment "And we can't currently use process_subscribe
without knowing the occupantId that is returned in the response of using process_join as a publisher..."
Not entirely true if you use an external users source like Phoenix Presence like it was the case for Hubs.
If you use an external users source, you can already use process_subscribe
to have listeners only in the room and without security check if I understand it correctly.
from janus-plugin-sfu.
I confirm you can use today the subscribe message that will call process_subscribe
and it doesn't check security, see my comment
#81 (comment)
from janus-plugin-sfu.
More detailed thinking about this use case in the PR networked-aframe#6
from janus-plugin-sfu.
Related Issues (20)
- Allow one session to join multiple rooms HOT 12
- Config erroneously implies that setting 0 for max_room_size and max_ccu means no limit HOT 2
- max_ccu setting is misleading HOT 1
- Plugin no longer loads with latest libnice and janus-gateway HOT 10
- could not compile on fresh debian 10 install HOT 7
- Travis CI free usage ends Dec 3; mozilla repos should switch to other CI platforms
- Possible split brain issue HOT 31
- Remove again lazy_static dependency? HOT 2
- Write some documentation about auth_key and the JWT content HOT 7
- [feature request] JWT valid only for a specific room HOT 6
- Optimize notify_user to use get_publisher HOT 3
- Check security token in process_subscribe HOT 2
- Add a max_sessions option? HOT 1
- Better publisher reconnection with reclaim session HOT 1
- Technical documentation
- Use a single queue for message threads instead of round-robin HOT 3
- About when to send the leave event
- Prometheus instrumentation to get metrics of the switchboard HOT 3
- Janus API 15 < 16 Build HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from janus-plugin-sfu.