Commit Graph

18 Commits

Author SHA1 Message Date
Paulo Lanzarin
936363b310 feat(bbb-webrtc-sfu): enable new mediasoup balancing strategies
We currently use a simple producer round-robin algorithm to distribute
elements between mediasoup workers. This works for most scenarios but
fails in some edge cases, such as:
  - 1-to-N scenarios where N >= ~600-800 (sample number, varies by
  single-core performance). This is due to subscribers being pinned to a
  producer's worker.
  - Poor distribution results from round-robin.

Enable the following new features in bbb-webrtc-sfu via after-install by
default:
  - `mediasoup.workerBalancing.strategy: least-loaded`: Replaces
  round-robin with load scoring. Workers are selected based on which is
  least loaded.
  - `mediasoup.enableWorkerTransposing: true`: Allows media streams to be
  bridged between workers through internal RTP pipes. This, along with a
  per-worker stream limit, enables seamless offloading of streams between
  workers (whether publishers or subscribers). The per-worker stream limit
  is still under review.

These changes should address the issues mentioned. They are enabled via
after-install because the SFU version is shared with previous BBB versions
where these features are not desirable yet.
2024-08-01 18:21:07 +00:00
Anton Georgiev
fabcb7a3ef
build: Clean up sfu after-install (#20595) 2024-06-27 19:24:37 -04:00
Paulo Lanzarin
a3759f681f
build(bbb-webrtc-sfu): use bbb-webrtc-recorder, drop kurento from config
- Set bbb-webrtc-recorder as the default `recordingAdapter` in bbb-webrtc-sfu by default
  - Set `kurento` in SFU's config to an empty array; Kurento isn't provided by 2.8+ by default
2023-08-22 17:55:34 -03:00
Anton Georgiev
a3f07f700f made bbb-graphql-server dep of bbb-html again 2023-07-20 08:18:58 -04:00
Anton Georgiev
543be9e44e sfu after-install to not mention kurento 2023-07-19 20:31:02 -04:00
Anton Georgiev
334a83a1b2 change yq syntax in sfu after-install 2023-07-19 10:24:52 -04:00
Anton Georgiev
ff086191ae
build: fix mismatched quote 2023-06-21 09:14:32 -04:00
Anton Georgiev
3b5062ed16
build: resetting mcs-address from localhost to 127.0.01 2023-06-21 08:58:23 -04:00
Anton Georgiev
3de540f0ab build: swap bionic with focal 2022-03-14 19:04:23 +00:00
Anton Georgiev
8674cf7615 !build: remove config storing to /tmp when upgrading a package
Remaining, to be handles separately:
bbb-html5 before-remove and after-install -- sip.nginx needs to be
handled in bbb-conf
bbb-freeswitch-core -- /tmp/vars xml, etc. -- not sure how to handle
2022-02-27 19:08:25 +00:00
Anton Georgiev
9c2f85ceea
Merge pull request #13479 from prlanzarin/u24-ferrofluid
build: set mediasoup IPs in webrtc-sfu post install
2021-10-14 09:28:02 -04:00
Anton Georgiev
164258274b
Merge pull request #13451 from schrd/bbb-webrtc-package-size
Update bbb-webrtc-sfu packaging to include mediasoup
2021-10-14 09:24:21 -04:00
Anton Georgiev
906b4253de
Merge pull request #13403 from prlanzarin/u24-parasole
chore(build): bbb-conf and build script changes to handle /var/mediasoup
2021-10-14 09:11:14 -04:00
prlanzarin
1a439a371c chore(build): make sure /var/mediasoup is created (webrtc-sfu) 2021-10-13 14:37:21 +00:00
prlanzarin
7e49069add build: set mediasoup IPs in webrtc-sfu post install 2021-10-13 13:39:14 +00:00
Daniel Schreiber
c5f351d238 Update bbb-webrtc-sfu packaging to include mediasoup and ...
... drop build artifacts from compiling mediasoup. This reduces package
size from ~ 54 MB to ~ 12 MB.

Additionally this drops the `npm rebuild` command from the after-install
script. It should not be necessary to recompile stuff during
installation. To ensure a clean `node_modules` directory, it will be
cleaned in the before-install script.
2021-10-08 22:54:57 +02:00
prlanzarin
ca8df23002 refactor(build): webrtc-sfu`s localIpAddress is defunct 2021-10-06 22:53:04 +00:00
Johannes Barthel
6c8525ef54 initial public version 2021-08-13 12:53:18 +02:00