v2.22.0
Minor Changes
Patch Changes
-
Decode text data streams without TextDecoder fatal mode for broader runtime support - #2037 (@JoelTowell)
-
fix: ensure buffered events are flushed on signal reconnection - #2043 (@lukasIO)
-
fix: cancel pending onTrack callbacks when subscription fails - #2019 (@lukasIO)
-
fix: match opus fmtp parameters by exact token and look up the opus codec case-insensitively when munging SDP - #2036 (@lukasIO)
-
Only run the
TrackEvent.TimeSyncUpdateanimation frame loop while something is subscribed to the event, and clear the frame handle when a track's monitor is stopped so the loop can be restarted - #2038 (@U-OK) -
fix: emit TrackStreamStateChanged again by reading the previous stream state before overwriting it - #2039 (@tomkail)
-
Apply the resolved degradation preference to the backup codec's sender - #2040 (@xianshijing-lk)
Degradation preference is a property of the sender, not of the track, and a backup codec publishes over its own sender. Previously only the primary sender was configured, so the backup encoder resolved a preference implicitly and could adapt along a different axis than the primary.
-
fix: recover broken publish paths — act on local
ConnectionQuality.Lost, recreate the peer connection when an ICE restart has no remote description, bound how long a transport may stay connecting, and reconnect (instead of disconnecting) on a detected connection state mismatch - #2030 (@lukasIO) -
fix: enable Terser
mangle.safari10to fix scoping issues for variables in react-native - #2028 (@davidliu) -
fix: ensure dd extension also for recvonly - #2052 (@lukasIO)