mozilla / janus-plugin-sfu

Janus plugin to act as a kind of SFU for game networking data.
Mozilla Public License 2.0
135 stars 40 forks source link

Update to latest janus 0.10.x (api v15) #61

Closed vincentfretin closed 3 years ago

vincentfretin commented 3 years ago

See discussion on https://github.com/mozilla/janus-plugin-sfu/issues/58 I started from @feymartynov work and made additional changes in janus-plugin-rs https://github.com/netology-group/janus-plugin-rs/pull/1 The code compile but not currently fully working, I still have an issue generating the sdp offer based on the sdp answer where answer.get_payload_type(VIDEO_CODEC.to_cstr()) is returning None.

vincentfretin commented 3 years ago

I may or may not continue working on it. See https://github.com/mozilla/janus-plugin-sfu/issues/62 I 'm really thinking about switching to another stack for my project :D Anyway it was fun to work on it. I learned a lot.

vincentfretin commented 3 years ago

Yes, I got this working. We need to specify the h264 42e01f profile when creating the answer and offer, this was previously done by default because h264_fmtp was true by default.

vincentfretin commented 3 years ago

I tested this with ubuntu 18.04 janus-gateway 2021-01-21 13:02 46a6c71b0fb7e54cb9acfbec84391c75eb224c13 (post v0.10.9) libnice Jan 6, 2021 2b38ba23b726694293de53c90b59b28ca11746ab (post 0.1.18) usrsctp Jan 13, 2021 0.9.5.0 07f871bda23943c43c9e74cc54f25130459de830 libsrtp 2.3.0 libwebsockets 3.2.3

vincentfretin commented 3 years ago

This needs PR https://github.com/netology-group/janus-plugin-rs/pull/1 of janus-plugin-rs.

vincentfretin commented 3 years ago

@mqp I did again my janus-plugin-rs PR against mozilla repo https://github.com/mozilla/janus-plugin-rs/pull/26 now you merged @feymartynov PR https://github.com/mozilla/janus-plugin-rs/pull/24

mqp commented 3 years ago

Looks good -- now that I merged the corresponding janus-plugin-rs changes, I'll merge this and then point Cargo.toml back at the upstream repo.

vincentfretin commented 3 years ago

For those following the repo. You should now use at least janus-gateway 2021-02-08 10:37 7732127f71521d1f1b305fdcf1073b3602f15b6e (v0.10.10) that include a fix for future Chrome 90 for the sdp offer h264 profile parsing. Otherwise the screen share may stop working.