webrtc icon indicating copy to clipboard operation
webrtc copied to clipboard

pion/webrtc@v4 Release

Open Sean-Der opened this issue 2 years ago • 12 comments

Pion WebRTC Migration Status

This is a running list of projects that need to be migrated to v4. I would love to see a community effort to migrate and fix bugs/improve things as we learn from it.


See https://github.com/pion/webrtc/wiki/Release-WebRTC%40v4.0.0 for the release notes

Sean-Der avatar Sep 05 '23 15:09 Sean-Der

Not needed but may be good to address https://github.com/pion/webrtc/issues/2292

edaniels avatar Sep 06 '23 04:09 edaniels

Maybe we can revert this revert as networkType is not "tcp4"/"tcp6"/etc according to the webrtc-stats?

aalekseevx avatar Sep 06 '23 07:09 aalekseevx

Also, I find very confusing that we have func (pc *PeerConnection) OnICEGatheringStateChange(f func(ICEGathererState)) not func (pc *PeerConnection) OnICEGatheringStateChange(f func(ICEGatheringState))

even though getter is more accurate: func (pc *PeerConnection) ICEGatheringState() ICEGatheringState

I suggest it is worth making more consistent

aalekseevx avatar Sep 06 '23 07:09 aalekseevx

even though getter is more accurate: func (pc *PeerConnection) ICEGatheringState() ICEGatheringState

@aalekseevx Do you mean to do polling instead of event callback?

at-wat avatar Sep 06 '23 07:09 at-wat

@at-wat, no, I think this change would be too radical :) I'm just suggesting changing the return type of OnICEGatheringStateChange from ICEGathererState to ICEGatheringState (both types already present in implementation). Mapping could be done this way

aalekseevx avatar Sep 06 '23 09:09 aalekseevx

@aalekseevx nice catch! I will make both changes

Sean-Der avatar Sep 08 '23 19:09 Sean-Der

Better to remove deprecated things

  • https://github.com/pion/webrtc/pull/2684

at-wat avatar Feb 29 '24 08:02 at-wat

Created v4 milestone to track the issues/PRs targeting v4

at-wat avatar Mar 07 '24 08:03 at-wat

@at-wat @edaniels (and anyone who is active in this thread)

What do you think of dropping pion/logging for the stdlib's slog? I don't want to put too much annoyance on users, but the less custom things we have the better!

Sean-Der avatar Mar 28 '24 02:03 Sean-Der

Using slog sounds good, but slog config should be configurable via webrtc.SettingEngine or something similar. Currently, I use https://github.com/pion/zapion in my products. https://github.com/samber/slog-zap seems be usable if pion/logging is replaced by slog.

at-wat avatar Mar 28 '24 03:03 at-wat

I'm onboard with that. Also love using zap

edaniels avatar Mar 28 '24 11:03 edaniels

Found a performance regression in SampleBuilder: https://github.com/pion/webrtc/issues/2778

at-wat avatar May 30 '24 09:05 at-wat