@stream-io/video-react-native-sdk 1.24.0 → 1.24.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,24 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [1.24.2](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-1.24.1...@stream-io/video-react-native-sdk-1.24.2) (2025-11-05)
6
+
7
+ ### Dependency Updates
8
+
9
+ - `@stream-io/noise-cancellation-react-native` updated to version `0.4.1`
10
+ - `@stream-io/video-filters-react-native` updated to version `0.8.1`
11
+
12
+ ### Bug Fixes
13
+
14
+ - noise cancellation webrtc 137 support and dev dep and sampleapp webrtc updates ([#1974](https://github.com/GetStream/stream-video-js/issues/1974)) ([c555695](https://github.com/GetStream/stream-video-js/commit/c555695e53018412ea8964a2e222daa99a9544e5))
15
+
16
+ ## [1.24.1](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-1.24.0...@stream-io/video-react-native-sdk-1.24.1) (2025-11-04)
17
+
18
+ ### Bug Fixes
19
+
20
+ - ios callkit related audio inconsistencies ([#1982](https://github.com/GetStream/stream-video-js/issues/1982)) ([112e380](https://github.com/GetStream/stream-video-js/commit/112e38090be4e41d1554a966af1f6e15965ea786))
21
+ - no video if camera is disabled on init and then enabled ([#1981](https://github.com/GetStream/stream-video-js/issues/1981)) ([b30ca34](https://github.com/GetStream/stream-video-js/commit/b30ca34eb598eb61716f3e4d389ffaf31236b90e))
22
+
5
23
  ## [1.24.0](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-1.23.0...@stream-io/video-react-native-sdk-1.24.0) (2025-10-30)
6
24
 
7
25
  ### Dependency Updates
@@ -46,18 +46,18 @@ const TrackSubscriber = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
46
46
  };
47
47
  const isPublishingTrack$ = call.state.participants$.pipe((0, _rxjs.map)(ps => ps.find(p => p.sessionId === participantSessionId)), (0, _rxjs.takeWhile)(p => !!p), (0, _rxjs.distinctUntilChanged)(), (0, _rxjs.distinctUntilKeyChanged)('publishedTracks'), (0, _rxjs.map)(p => trackType === 'videoTrack' ? (0, _videoClient.hasVideo)(p) : (0, _videoClient.hasScreenShare)(p)), (0, _rxjs.distinctUntilChanged)());
48
48
  const isJoinedState$ = call.state.callingState$.pipe((0, _rxjs.map)(callingState => callingState === _videoClient.CallingState.JOINED));
49
- const subscription = (0, _rxjs.combineLatest)([dimensions$, isPublishingTrack$, isJoinedState$]).subscribe(([dimension, isPublishing, isJoined]) => {
50
- if (isJoined && isPublishing && !isVisible) {
51
- // the participant is publishing and we are not visible, so we unsubscribe from the video track
52
- requestTrackWithDimensions(_videoClient.DebounceType.FAST, undefined);
53
- } else if (isJoined && isPublishing && isVisible && dimension) {
54
- // the participant is publishing and we are visible and have valid dimensions, so we subscribe to the video track
55
- requestTrackWithDimensions(_videoClient.DebounceType.IMMEDIATE, dimension);
56
- } else if (isJoined && !isPublishing) {
57
- // the participant stopped publishing a track, so we unsubscribe from the video track
58
- requestTrackWithDimensions(_videoClient.DebounceType.FAST, undefined);
49
+ const subscription = (0, _rxjs.combineLatest)([dimensions$, isPublishingTrack$, isJoinedState$
50
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
51
+ ]).subscribe(([dimension, isPublishing, isJoined]) => {
52
+ // isPublishing is not used here, but we need to keep it for the subscription
53
+ // to send the dimensions again when the participant starts publishing the track again
54
+ if (isJoined) {
55
+ if (!isVisible) {
56
+ requestTrackWithDimensions(_videoClient.DebounceType.MEDIUM, undefined);
57
+ } else if (dimension) {
58
+ requestTrackWithDimensions(_videoClient.DebounceType.IMMEDIATE, dimension);
59
+ }
59
60
  }
60
- // if isPublishing but no dimension yet, we wait for dimensions
61
61
  });
62
62
  return () => {
63
63
  subscription.unsubscribe();
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_videoClient","_rxjs","TrackSubscriber","forwardRef","props","ref","call","participantSessionId","trackType","isVisible","dimensions$","useMemo","BehaviorSubject","undefined","useEffect","requestTrackWithDimensions","debounceType","dimension","width","height","state","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","isPublishingTrack$","participants$","pipe","map","ps","find","p","sessionId","takeWhile","distinctUntilChanged","distinctUntilKeyChanged","hasVideo","hasScreenShare","isJoinedState$","callingState$","callingState","CallingState","JOINED","subscription","combineLatest","subscribe","isPublishing","isJoined","DebounceType","FAST","IMMEDIATE","unsubscribe","useImperativeHandle","onLayoutUpdate","event","Math","trunc","nativeEvent","layout","next","displayName","_default","exports","default"],"sourceRoot":"../../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_videoClient","_rxjs","TrackSubscriber","forwardRef","props","ref","call","participantSessionId","trackType","isVisible","dimensions$","useMemo","BehaviorSubject","undefined","useEffect","requestTrackWithDimensions","debounceType","dimension","width","height","state","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","isPublishingTrack$","participants$","pipe","map","ps","find","p","sessionId","takeWhile","distinctUntilChanged","distinctUntilKeyChanged","hasVideo","hasScreenShare","isJoinedState$","callingState$","callingState","CallingState","JOINED","subscription","combineLatest","subscribe","isPublishing","isJoined","DebounceType","MEDIUM","IMMEDIATE","unsubscribe","useImperativeHandle","onLayoutUpdate","event","Math","trunc","nativeEvent","layout","next","displayName","_default","exports","default"],"sourceRoot":"../../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.version = void 0;
7
- const version = exports.version = '1.24.0';
7
+ const version = exports.version = '1.24.2';
8
8
  //# sourceMappingURL=version.js.map
@@ -40,18 +40,18 @@ const TrackSubscriber = /*#__PURE__*/forwardRef((props, ref) => {
40
40
  };
41
41
  const isPublishingTrack$ = call.state.participants$.pipe(map(ps => ps.find(p => p.sessionId === participantSessionId)), takeWhile(p => !!p), distinctUntilChanged(), distinctUntilKeyChanged('publishedTracks'), map(p => trackType === 'videoTrack' ? hasVideo(p) : hasScreenShare(p)), distinctUntilChanged());
42
42
  const isJoinedState$ = call.state.callingState$.pipe(map(callingState => callingState === CallingState.JOINED));
43
- const subscription = combineLatest([dimensions$, isPublishingTrack$, isJoinedState$]).subscribe(([dimension, isPublishing, isJoined]) => {
44
- if (isJoined && isPublishing && !isVisible) {
45
- // the participant is publishing and we are not visible, so we unsubscribe from the video track
46
- requestTrackWithDimensions(DebounceType.FAST, undefined);
47
- } else if (isJoined && isPublishing && isVisible && dimension) {
48
- // the participant is publishing and we are visible and have valid dimensions, so we subscribe to the video track
49
- requestTrackWithDimensions(DebounceType.IMMEDIATE, dimension);
50
- } else if (isJoined && !isPublishing) {
51
- // the participant stopped publishing a track, so we unsubscribe from the video track
52
- requestTrackWithDimensions(DebounceType.FAST, undefined);
43
+ const subscription = combineLatest([dimensions$, isPublishingTrack$, isJoinedState$
44
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
45
+ ]).subscribe(([dimension, isPublishing, isJoined]) => {
46
+ // isPublishing is not used here, but we need to keep it for the subscription
47
+ // to send the dimensions again when the participant starts publishing the track again
48
+ if (isJoined) {
49
+ if (!isVisible) {
50
+ requestTrackWithDimensions(DebounceType.MEDIUM, undefined);
51
+ } else if (dimension) {
52
+ requestTrackWithDimensions(DebounceType.IMMEDIATE, dimension);
53
+ }
53
54
  }
54
- // if isPublishing but no dimension yet, we wait for dimensions
55
55
  });
56
56
  return () => {
57
57
  subscription.unsubscribe();
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","useImperativeHandle","useEffect","useMemo","CallingState","hasScreenShare","hasVideo","DebounceType","BehaviorSubject","combineLatest","distinctUntilChanged","distinctUntilKeyChanged","map","takeWhile","TrackSubscriber","props","ref","call","participantSessionId","trackType","isVisible","dimensions$","undefined","requestTrackWithDimensions","debounceType","dimension","width","height","state","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","isPublishingTrack$","participants$","pipe","ps","find","p","sessionId","isJoinedState$","callingState$","callingState","JOINED","subscription","subscribe","isPublishing","isJoined","FAST","IMMEDIATE","unsubscribe","onLayoutUpdate","event","Math","trunc","nativeEvent","layout","next","displayName"],"sourceRoot":"../../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","useImperativeHandle","useEffect","useMemo","CallingState","hasScreenShare","hasVideo","DebounceType","BehaviorSubject","combineLatest","distinctUntilChanged","distinctUntilKeyChanged","map","takeWhile","TrackSubscriber","props","ref","call","participantSessionId","trackType","isVisible","dimensions$","undefined","requestTrackWithDimensions","debounceType","dimension","width","height","state","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","isPublishingTrack$","participants$","pipe","ps","find","p","sessionId","isJoinedState$","callingState$","callingState","JOINED","subscription","subscribe","isPublishing","isJoined","MEDIUM","IMMEDIATE","unsubscribe","onLayoutUpdate","event","Math","trunc","nativeEvent","layout","next","displayName"],"sourceRoot":"../../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- export const version = '1.24.0';
1
+ export const version = '1.24.2';
2
2
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrackSubscriber.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,IAAI,EAKJ,KAAK,cAAc,EAEpB,MAAM,yBAAyB,CAAC;AASjC,MAAM,MAAM,qBAAqB,GAAG;IAClC,cAAc,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACpD,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;EAUE;AACF,QAAA,MAAM,eAAe,wHA+EpB,CAAC;AAIF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"TrackSubscriber.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,IAAI,EAKJ,KAAK,cAAc,EAEpB,MAAM,yBAAyB,CAAC;AASjC,MAAM,MAAM,qBAAqB,GAAG;IAClC,cAAc,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACpD,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;EAUE;AACF,QAAA,MAAM,eAAe,wHA8EpB,CAAC;AAIF,eAAe,eAAe,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.24.0";
1
+ export declare const version = "1.24.2";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -96,6 +96,17 @@ class StreamInCallManager: RCTEventEmitter {
96
96
  if !audioManagerActivated {
97
97
  return
98
98
  }
99
+ let session = RTCAudioSession.sharedInstance()
100
+ session.lockForConfiguration()
101
+ defer {
102
+ session.unlockForConfiguration()
103
+ }
104
+
105
+ do {
106
+ try session.setActive(false)
107
+ } catch {
108
+ log("Error deactivating audio session: \(error.localizedDescription)")
109
+ }
99
110
  if let prev = previousAudioSessionState {
100
111
  let session = AVAudioSession.sharedInstance()
101
112
  do {
@@ -155,32 +166,25 @@ class StreamInCallManager: RCTEventEmitter {
155
166
  RTCAudioSessionConfiguration.setWebRTC(rtcConfig)
156
167
  // END
157
168
 
158
- // START: compare current audio session with intended, and update if different
169
+ // START: activate the webrtc audio session
159
170
  let session = RTCAudioSession.sharedInstance()
160
- let currentCategory = session.category
161
- let currentMode = session.mode
162
- let currentOptions = session.categoryOptions
163
- let currentIsActive = session.isActive
164
-
165
- if currentCategory != intendedCategory.rawValue || currentMode != intendedMode.rawValue || currentOptions != intendedOptions || !currentIsActive {
166
- session.lockForConfiguration()
171
+ session.lockForConfiguration()
172
+ defer {
173
+ session.unlockForConfiguration()
174
+ }
175
+ do {
176
+ try session.setCategory(intendedCategory, mode: intendedMode, options: intendedOptions)
177
+ try session.setActive(true)
178
+ log("configureAudioSession: setCategory success \(intendedCategory.rawValue) \(intendedMode.rawValue) \(intendedOptions.rawValue)")
179
+ } catch {
180
+ log("configureAudioSession: setCategory failed due to: \(error.localizedDescription)")
167
181
  do {
168
- try session.setCategory(intendedCategory, mode: intendedMode, options: intendedOptions)
182
+ try session.setMode(intendedMode)
169
183
  try session.setActive(true)
170
- log("configureAudioSession: setCategory success \(intendedCategory.rawValue) \(intendedMode.rawValue) \(intendedOptions.rawValue)")
184
+ log("configureAudioSession: setMode success \(intendedMode.rawValue)")
171
185
  } catch {
172
- log("configureAudioSession: setCategory failed due to: \(error.localizedDescription)")
173
- do {
174
- try session.setMode(intendedMode)
175
- try session.setActive(true)
176
- log("configureAudioSession: setMode success \(intendedMode.rawValue)")
177
- } catch {
178
- log("configureAudioSession: Error setting mode: \(error.localizedDescription)")
179
- }
186
+ log("configureAudioSession: Error setting mode: \(error.localizedDescription)")
180
187
  }
181
- session.unlockForConfiguration()
182
- } else {
183
- log("configureAudioSession: no change needed")
184
188
  }
185
189
  // END
186
190
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stream-io/video-react-native-sdk",
3
- "version": "1.24.0",
3
+ "version": "1.24.2",
4
4
  "description": "Stream Video SDK for React Native",
5
5
  "author": "https://getstream.io",
6
6
  "homepage": "https://getstream.io/video/docs/react-native/",
@@ -125,9 +125,9 @@
125
125
  "@react-native-firebase/app": "^23.4.0",
126
126
  "@react-native-firebase/messaging": "^23.4.0",
127
127
  "@react-native/babel-preset": "^0.81.4",
128
- "@stream-io/noise-cancellation-react-native": "^0.4.0",
129
- "@stream-io/react-native-webrtc": "125.4.4",
130
- "@stream-io/video-filters-react-native": "^0.8.0",
128
+ "@stream-io/noise-cancellation-react-native": "^0.4.1",
129
+ "@stream-io/react-native-webrtc": "137.0.0",
130
+ "@stream-io/video-filters-react-native": "^0.8.1",
131
131
  "@testing-library/jest-native": "^5.4.3",
132
132
  "@testing-library/react-native": "13.3.3",
133
133
  "@tsconfig/node18": "^18.2.4",
@@ -83,18 +83,17 @@ const TrackSubscriber = forwardRef<TrackSubscriberHandle, TrackSubscriberProps>(
83
83
  dimensions$,
84
84
  isPublishingTrack$,
85
85
  isJoinedState$,
86
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
86
87
  ]).subscribe(([dimension, isPublishing, isJoined]) => {
87
- if (isJoined && isPublishing && !isVisible) {
88
- // the participant is publishing and we are not visible, so we unsubscribe from the video track
89
- requestTrackWithDimensions(DebounceType.FAST, undefined);
90
- } else if (isJoined && isPublishing && isVisible && dimension) {
91
- // the participant is publishing and we are visible and have valid dimensions, so we subscribe to the video track
92
- requestTrackWithDimensions(DebounceType.IMMEDIATE, dimension);
93
- } else if (isJoined && !isPublishing) {
94
- // the participant stopped publishing a track, so we unsubscribe from the video track
95
- requestTrackWithDimensions(DebounceType.FAST, undefined);
88
+ // isPublishing is not used here, but we need to keep it for the subscription
89
+ // to send the dimensions again when the participant starts publishing the track again
90
+ if (isJoined) {
91
+ if (!isVisible) {
92
+ requestTrackWithDimensions(DebounceType.MEDIUM, undefined);
93
+ } else if (dimension) {
94
+ requestTrackWithDimensions(DebounceType.IMMEDIATE, dimension);
95
+ }
96
96
  }
97
- // if isPublishing but no dimension yet, we wait for dimensions
98
97
  });
99
98
 
100
99
  return () => {
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '1.24.0';
1
+ export const version = '1.24.2';