Commit Graph

34 Commits

Author SHA1 Message Date
Jasper Hugo 594414138c Send the full presence when muting/unmuting 2021-11-19 12:08:57 +07:00
Jasper Hugo 6b33952074 Remove capsfilters from pipeline (fixes #5) 2021-11-05 10:52:17 +07:00
Jasper Hugo 16a33d7448 removed unused imports & unused serde-with dependency 2021-10-25 10:39:19 +07:00
Jasper Hugo 9250084436 pluggable TLS implementations, defaulting to native-tls 2021-10-25 10:21:05 +07:00
Emmanuel Gil Peyrot 66cfaa4da5 implement caps to avoid a panic
The previous disco#info was missing the required disco#info feature and
an identity, and the ecaps2 was computed from an empty disco#info
instead of the one we advertise.

In our case caps is a tiny optimisation which lets other participants
cache our disco#info to avoid querying us every time.

A future improvement will be to reply to ecaps2 queries as well.
2021-10-25 10:11:26 +07:00
Emmanuel Gil Peyrot c793d08bb6 wait for our self-presence to consider the room joined
The current code was only waiting until the first presence received from
the room, while our self-presence is the very last one to be received.
2021-10-25 10:07:33 +07:00
Emmanuel Gil Peyrot 7fa31bd796 make jingle more generic over codecs
This adds a very simple Codec struct, which describes each codec
supported by a RTP description.

It will make it much easier to add newer codecs in the future, like AV1.

This commit is best viewed with git log -p -w to ignore indent changes.
2021-10-25 10:06:52 +07:00
Emmanuel Gil Peyrot 5db78b11bf simplify RTP parsing 2021-10-25 10:06:52 +07:00
Emmanuel Gil Peyrot e22cf34f42 split ICE setup into its own function 2021-10-25 10:06:52 +07:00
Emmanuel Gil Peyrot c920fdf0a5 split RTP description parsing into its own function
This keeps the ugly Options used after in the code, in the future these
could be replaced with the ParsedRtpDescription struct instead.
2021-10-25 10:06:52 +07:00
linkmauve 0040d20151
don’t include region elements when empty (#4)
In small deployments, for instance when there is only one server for all
participants, the region doesn’t mean anything so we can remove the
elements instead of sending an empty value.
2021-10-11 21:36:10 +07:00
Emmanuel Gil Peyrot 9d2dcfb21c replaced empty ns hack with the actual namespace used
All children of a message/presence/iq are in the jabber:client namespace
in a c2s stream unless xmlns is specified.
2021-10-11 21:32:45 +07:00
Jasper Hugo fab8efe5fb Compatibility fixes
* Allow focus to be a bare or full JID (thanks @teowoz & @Tellyo)
* If extdisco fails, just continue without STUN/TURN (thanks @teowoz &
  @Tellyo)
* Updated deps for new colibri protocol crate
* rustfmt
2021-10-11 10:33:29 +07:00
Jasper Hugo 5c72befcef added repository, readme, documentation to lib-gst-meet manifest 2021-10-06 12:08:19 +07:00
Jasper Hugo 2b2ceca515 use new colibri crate & vendored xmpp-parsers 2021-10-06 12:06:27 +07:00
Jasper Hugo 55aa89010c updated deps, updated gst-meet for new lib-gst-meet API, export xmpp-parsers 2021-09-27 22:37:55 +07:00
Jasper Hugo 037c2d944f XMPP improvements
- Handle unsolicited XMPP messages gracefully
- Split out generic XMPP connection handler which can be used for
  connecting to brewery MUCs
- Don't deadlock during Jingle handling
2021-09-07 23:52:04 +07:00
Jasper Hugo 4575371d6d fmt 2021-08-25 11:21:43 +07:00
Jasper Hugo 9999cd212c better error reporting on connect failure 2021-08-25 11:20:48 +07:00
Jasper Hugo f414c9db66 RTX and TWCC working correctly 2021-08-24 15:40:08 +07:00
Jasper Hugo d5842ee79f RTX support, TCC support (not working correctly yet) 2021-08-23 11:56:11 +07:00
Jasper Hugo e5ed8d89f6 added support for some colibri signalling via gst-meet tool 2021-08-19 17:20:42 +07:00
Jasper Hugo 6f67e2536d lib-gst-meet 0.3: colibri message support, more flexible recv handling 2021-08-19 17:06:12 +07:00
Jasper Hugo 67134e84cc lib-gst-meet 0.2.1 2021-08-18 07:56:40 +07:00
Jasper Hugo e5d10c6da0 added set_pipeline_state to C API, improved participant-left handler 2021-08-18 07:56:01 +07:00
Jasper Hugo b593ca6697 added support for configuring tracing via API, made connected() private 2021-08-17 11:55:17 +07:00
Jasper Hugo 2fd02c7e68 provide a ctx argument for the C API callbacks 2021-08-17 08:55:17 +07:00
Jasper Hugo 56463c6100 Added verbosity option, added participant_left event 2021-08-15 18:24:06 +07:00
Jasper Hugo 11ffd97d8b updated gst-meet and lib-gst-meet to 0.2.0 2021-08-15 12:35:51 +07:00
Jasper Hugo 9af6db6c02 added initial draft of lib-gst-meet-c. added shell.nix for deps 2021-08-14 20:06:39 +07:00
Jasper Hugo 57f78656a3 compatibility with libnice 0.1.16 2021-08-14 13:04:40 +07:00
Jasper Hugo 7190086673 added TURN support 2021-08-13 23:09:17 +07:00
Jasper Hugo bed8d156dc Prepared for publishing to crates.io 2021-08-13 19:30:25 +07:00
Jasper Hugo fbaf22ba7e Initial 2021-08-13 18:48:59 +07:00