@stream-io/video-react-native-sdk 1.19.0 → 1.20.0

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.
Files changed (67) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/android/src/main/java/com/streamvideo/reactnative/StreamVideoReactNativeModule.kt +10 -0
  3. package/android/src/main/java/com/streamvideo/reactnative/util/PiPHelper.kt +18 -0
  4. package/dist/commonjs/components/Call/CallContent/CallContent.js +20 -0
  5. package/dist/commonjs/components/Call/CallContent/CallContent.js.map +1 -1
  6. package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js +10 -1
  7. package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
  8. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer.js +3 -2
  9. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer.js.map +1 -1
  10. package/dist/commonjs/contexts/BackgroundFilters.js +4 -0
  11. package/dist/commonjs/contexts/BackgroundFilters.js.map +1 -1
  12. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js +31 -12
  13. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  14. package/dist/commonjs/hooks/useTrackDimensions.js +31 -35
  15. package/dist/commonjs/hooks/useTrackDimensions.js.map +1 -1
  16. package/dist/commonjs/providers/StreamCall/AppStateListener.js +3 -2
  17. package/dist/commonjs/providers/StreamCall/AppStateListener.js.map +1 -1
  18. package/dist/commonjs/providers/StreamCall/DeviceStats.js +19 -8
  19. package/dist/commonjs/providers/StreamCall/DeviceStats.js.map +1 -1
  20. package/dist/commonjs/utils/StreamVideoRN/index.js +22 -6
  21. package/dist/commonjs/utils/StreamVideoRN/index.js.map +1 -1
  22. package/dist/commonjs/version.js +1 -1
  23. package/dist/module/components/Call/CallContent/CallContent.js +22 -2
  24. package/dist/module/components/Call/CallContent/CallContent.js.map +1 -1
  25. package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js +10 -1
  26. package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
  27. package/dist/module/components/Participant/ParticipantView/VideoRenderer.js +3 -2
  28. package/dist/module/components/Participant/ParticipantView/VideoRenderer.js.map +1 -1
  29. package/dist/module/contexts/BackgroundFilters.js +4 -0
  30. package/dist/module/contexts/BackgroundFilters.js.map +1 -1
  31. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js +31 -12
  32. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  33. package/dist/module/hooks/useTrackDimensions.js +30 -35
  34. package/dist/module/hooks/useTrackDimensions.js.map +1 -1
  35. package/dist/module/providers/StreamCall/AppStateListener.js +3 -2
  36. package/dist/module/providers/StreamCall/AppStateListener.js.map +1 -1
  37. package/dist/module/providers/StreamCall/DeviceStats.js +20 -9
  38. package/dist/module/providers/StreamCall/DeviceStats.js.map +1 -1
  39. package/dist/module/utils/StreamVideoRN/index.js +23 -6
  40. package/dist/module/utils/StreamVideoRN/index.js.map +1 -1
  41. package/dist/module/version.js +1 -1
  42. package/dist/typescript/components/Call/CallContent/CallContent.d.ts.map +1 -1
  43. package/dist/typescript/components/Call/CallLayout/CallParticipantsGrid.d.ts.map +1 -1
  44. package/dist/typescript/components/Participant/ParticipantView/VideoRenderer.d.ts.map +1 -1
  45. package/dist/typescript/contexts/BackgroundFilters.d.ts.map +1 -1
  46. package/dist/typescript/hooks/useAndroidKeepCallAliveEffect.d.ts.map +1 -1
  47. package/dist/typescript/hooks/useTrackDimensions.d.ts +2 -2
  48. package/dist/typescript/hooks/useTrackDimensions.d.ts.map +1 -1
  49. package/dist/typescript/providers/StreamCall/AppStateListener.d.ts.map +1 -1
  50. package/dist/typescript/providers/StreamCall/DeviceStats.d.ts.map +1 -1
  51. package/dist/typescript/utils/StreamVideoRN/index.d.ts +6 -2
  52. package/dist/typescript/utils/StreamVideoRN/index.d.ts.map +1 -1
  53. package/dist/typescript/utils/StreamVideoRN/types.d.ts +6 -1
  54. package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
  55. package/dist/typescript/version.d.ts +1 -1
  56. package/package.json +7 -7
  57. package/src/components/Call/CallContent/CallContent.tsx +39 -3
  58. package/src/components/Call/CallLayout/CallParticipantsGrid.tsx +12 -5
  59. package/src/components/Participant/ParticipantView/VideoRenderer.tsx +7 -2
  60. package/src/contexts/BackgroundFilters.tsx +4 -0
  61. package/src/hooks/useAndroidKeepCallAliveEffect.ts +30 -10
  62. package/src/hooks/useTrackDimensions.ts +51 -34
  63. package/src/providers/StreamCall/AppStateListener.tsx +3 -5
  64. package/src/providers/StreamCall/DeviceStats.tsx +20 -9
  65. package/src/utils/StreamVideoRN/index.ts +41 -6
  66. package/src/utils/StreamVideoRN/types.ts +6 -0
  67. package/src/version.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,34 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [1.20.0](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-1.19.1...@stream-io/video-react-native-sdk-1.20.0) (2025-07-25)
6
+
7
+ ### Dependency Updates
8
+
9
+ - `@stream-io/noise-cancellation-react-native` updated to version `0.2.0`
10
+ - `@stream-io/video-filters-react-native` updated to version `0.6.0`
11
+ - `@stream-io/video-client` updated to version `1.27.1`
12
+ - `@stream-io/video-react-bindings` updated to version `1.7.10`
13
+
14
+ - bump webrtc version ([#1865](https://github.com/GetStream/stream-video-js/issues/1865)) ([18fd609](https://github.com/GetStream/stream-video-js/commit/18fd60945ef74eb23c089dc0b5adb2373b700602))
15
+
16
+ ### Features
17
+
18
+ - add ability to run a custom promise option for android keep call alive service ([#1864](https://github.com/GetStream/stream-video-js/issues/1864)) ([81fdd0b](https://github.com/GetStream/stream-video-js/commit/81fdd0b381a0e6aae4b5e5063c9b6c10b3c4d3bf))
19
+ - do not detect video dimensions through rtc stats ([#1852](https://github.com/GetStream/stream-video-js/issues/1852)) ([280e008](https://github.com/GetStream/stream-video-js/commit/280e0087d646188e71dec6e4d4e5e8b93878904d))
20
+
21
+ ### Bug Fixes
22
+
23
+ - improved audio and video filter tracing ([#1862](https://github.com/GetStream/stream-video-js/issues/1862)) ([701ea4b](https://github.com/GetStream/stream-video-js/commit/701ea4b3266f68072c1325b70221fdefd77137ec))
24
+ - trace available devices and thermal state changes ([#1866](https://github.com/GetStream/stream-video-js/issues/1866)) ([d8312b5](https://github.com/GetStream/stream-video-js/commit/d8312b5c109b14baa28ee764202d387499d0fd52))
25
+
26
+ ## [1.19.1](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-1.19.0...@stream-io/video-react-native-sdk-1.19.1) (2025-07-23)
27
+
28
+ ### Bug Fixes
29
+
30
+ - automatically exit android pip mode if call is left ([#1863](https://github.com/GetStream/stream-video-js/issues/1863)) ([51850f4](https://github.com/GetStream/stream-video-js/commit/51850f49bc67595a4cacb766863894483712fc75))
31
+ - ios pip blank local track issue ([47d8119](https://github.com/GetStream/stream-video-js/commit/47d811928f9f155b4d9f9cb23042a7556fd8414a))
32
+
5
33
  ## [1.19.0](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-1.18.1...@stream-io/video-react-native-sdk-1.19.0) (2025-07-18)
6
34
 
7
35
  ### Dependency Updates
@@ -115,6 +115,16 @@ class StreamVideoReactNativeModule(reactContext: ReactApplicationContext) :
115
115
  }
116
116
  }
117
117
 
118
+ @ReactMethod
119
+ fun exitPipMode(promise: Promise) {
120
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
121
+ val success = PiPHelper.exitPipMode(reactApplicationContext)
122
+ promise.resolve(success)
123
+ } else {
124
+ promise.resolve(false)
125
+ }
126
+ }
127
+
118
128
  @ReactMethod
119
129
  fun startThermalStatusUpdates(promise: Promise) {
120
130
  try {
@@ -88,6 +88,24 @@ object PiPHelper {
88
88
  return reactApplicationContext.currentActivity?.isInPictureInPictureMode
89
89
  }
90
90
 
91
+ fun exitPipMode(reactApplicationContext: ReactApplicationContext): Boolean {
92
+ return try {
93
+ reactApplicationContext.currentActivity?.let { activity ->
94
+ if (activity.isInPictureInPictureMode) {
95
+ // Move the task to back to exit PiP mode and return to normal app view
96
+ activity.moveTaskToBack(false)
97
+ true
98
+ } else {
99
+ // Not in PiP mode, so nothing to do
100
+ false
101
+ }
102
+ } ?: false
103
+ } catch (e: Exception) {
104
+ Log.e(NAME, "Failed to exit Picture-in-Picture mode", e)
105
+ false
106
+ }
107
+ }
108
+
91
109
  private fun getPiPParams(activity: Activity): PictureInPictureParams.Builder {
92
110
  val currentOrientation = activity.resources.configuration.orientation
93
111
  val aspect =
@@ -10,6 +10,7 @@ var _reactNativeIncallManager = _interopRequireDefault(require("react-native-inc
10
10
  var _CallLayout = require("../CallLayout");
11
11
  var _CallControls = require("../CallControls");
12
12
  var _videoReactBindings = require("@stream-io/video-react-bindings");
13
+ var _videoClient = require("@stream-io/video-client");
13
14
  var _constants = require("../../../constants");
14
15
  var _hooks = require("../../../utils/hooks");
15
16
  var _Participant = require("../../Participant");
@@ -46,6 +47,7 @@ const CallContent = ({
46
47
  callContent
47
48
  }
48
49
  } = (0, _contexts.useTheme)();
50
+ const call = (0, _videoReactBindings.useCall)();
49
51
  const {
50
52
  useHasOngoingScreenShare,
51
53
  useRemoteParticipants,
@@ -59,6 +61,24 @@ const CallContent = ({
59
61
  const isInPiPMode = (0, _hooks2.useIsInPiPMode)();
60
62
  const hasScreenShare = useHasOngoingScreenShare();
61
63
  const showSpotlightLayout = hasScreenShare || layout === 'spotlight';
64
+ (0, _react.useEffect)(() => {
65
+ if (isInPiPMode && _reactNative.Platform.OS === 'android') {
66
+ const unsubFunc = call?.on('call.ended', () => {
67
+ (0, _videoClient.getLogger)(['CallContent'])('debug', `exiting PiP mode due to call.ended`);
68
+ _reactNative.NativeModules.StreamVideoReactNative.exitPipMode();
69
+ });
70
+ const subscription = call?.state.callingState$.subscribe(state => {
71
+ if (state === _videoClient.CallingState.LEFT) {
72
+ (0, _videoClient.getLogger)(['CallContent'])('debug', `exiting PiP mode due to callingState: LEFT`);
73
+ _reactNative.NativeModules.StreamVideoReactNative.exitPipMode();
74
+ }
75
+ });
76
+ return () => {
77
+ unsubFunc?.();
78
+ subscription?.unsubscribe();
79
+ };
80
+ }
81
+ }, [isInPiPMode, call]);
62
82
  const showFloatingView = !showSpotlightLayout && !isInPiPMode && remoteParticipants.length > 0 && remoteParticipants.length < 3;
63
83
  const isRemoteParticipantInFloatingView = showFloatingView && showRemoteParticipantInFloatingView && remoteParticipants.length === 1;
64
84
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeIncallManager","_interopRequireDefault","_CallLayout","_CallControls","_videoReactBindings","_constants","_hooks","_Participant","_contexts","_hooks2","_ScreenShareOverlay","_RTCViewPipIOS","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","CallContent","onHangupCallHandler","CallParticipantsList","CallControls","DefaultCallControls","FloatingParticipantView","DefaultFloatingParticipantView","ScreenShareOverlay","DefaultScreenShareOverlay","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","layout","landscape","supportedReactions","iOSPiPIncludeLocalParticipantVideo","disablePictureInPicture","initialInCallManagerAudioMode","showRemoteParticipantInFloatingView","setShowRemoteParticipantInFloatingView","useState","styles","useStyles","theme","callContent","useTheme","useHasOngoingScreenShare","useRemoteParticipants","useLocalParticipant","useCallStateHooks","useAutoEnterPiPEffect","incallManagerModeRef","useRef","_remoteParticipants","remoteParticipants","useDebouncedValue","localParticipant","isInPiPMode","useIsInPiPMode","hasScreenShare","showSpotlightLayout","showFloatingView","isRemoteParticipantInFloatingView","useEffect","InCallManager","start","media","current","stop","handleFloatingViewParticipantSwitch","prevState","participantViewProps","callParticipantsGridProps","showLocalParticipant","callParticipantsSpotlightProps","landscapeStyles","flexDirection","createElement","Fragment","RTCViewPipIOS","includeLocalParticipantVideo","View","style","container","content","callParticipantsContainer","view","topContainer","pointerEvents","participant","onPressHandler","objectFit","CallParticipantsSpotlight","CallParticipantsGrid","exports","useMemo","StyleSheet","create","flex","paddingBottom","variants","insets","bottom","paddingLeft","left","paddingRight","right","paddingTop","top","backgroundColor","colors","sheetPrimary","absoluteFillObject","zIndex","Z_INDEX","IN_FRONT"],"sourceRoot":"../../../../../src","sources":["components/Call/CallContent/CallContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeIncallManager","_interopRequireDefault","_CallLayout","_CallControls","_videoReactBindings","_videoClient","_constants","_hooks","_Participant","_contexts","_hooks2","_ScreenShareOverlay","_RTCViewPipIOS","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","CallContent","onHangupCallHandler","CallParticipantsList","CallControls","DefaultCallControls","FloatingParticipantView","DefaultFloatingParticipantView","ScreenShareOverlay","DefaultScreenShareOverlay","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","layout","landscape","supportedReactions","iOSPiPIncludeLocalParticipantVideo","disablePictureInPicture","initialInCallManagerAudioMode","showRemoteParticipantInFloatingView","setShowRemoteParticipantInFloatingView","useState","styles","useStyles","theme","callContent","useTheme","useCall","useHasOngoingScreenShare","useRemoteParticipants","useLocalParticipant","useCallStateHooks","useAutoEnterPiPEffect","incallManagerModeRef","useRef","_remoteParticipants","remoteParticipants","useDebouncedValue","localParticipant","isInPiPMode","useIsInPiPMode","hasScreenShare","showSpotlightLayout","useEffect","Platform","OS","unsubFunc","on","getLogger","NativeModules","StreamVideoReactNative","exitPipMode","subscription","state","callingState$","subscribe","CallingState","LEFT","unsubscribe","showFloatingView","isRemoteParticipantInFloatingView","InCallManager","start","media","current","stop","handleFloatingViewParticipantSwitch","prevState","participantViewProps","callParticipantsGridProps","showLocalParticipant","callParticipantsSpotlightProps","landscapeStyles","flexDirection","createElement","Fragment","RTCViewPipIOS","includeLocalParticipantVideo","View","style","container","content","callParticipantsContainer","view","topContainer","pointerEvents","participant","onPressHandler","objectFit","CallParticipantsSpotlight","CallParticipantsGrid","exports","useMemo","StyleSheet","create","flex","paddingBottom","variants","insets","bottom","paddingLeft","left","paddingRight","right","paddingTop","top","backgroundColor","colors","sheetPrimary","absoluteFillObject","zIndex","Z_INDEX","IN_FRONT"],"sourceRoot":"../../../../../src","sources":["components/Call/CallContent/CallContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -57,7 +57,16 @@ const CallParticipantsGrid = ({
57
57
  };
58
58
  const isInPiPMode = (0, _useIsInPiPMode.useIsInPiPMode)();
59
59
  const showFloatingView = !isInPiPMode && remoteParticipants.length > 0 && remoteParticipants.length < 3;
60
- let participants = showFloatingView ? showLocalParticipant && localParticipant ? [localParticipant] : remoteParticipants : allParticipants;
60
+ let participants;
61
+ if (showFloatingView) {
62
+ if (showLocalParticipant && localParticipant) {
63
+ participants = [localParticipant];
64
+ } else {
65
+ participants = remoteParticipants;
66
+ }
67
+ } else {
68
+ participants = allParticipants;
69
+ }
61
70
  if (isInPiPMode) {
62
71
  if (dominantSpeaker && !dominantSpeaker.isLocalParticipant) {
63
72
  participants = [dominantSpeaker];
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_videoReactBindings","_useDebouncedValue","_CallParticipantsList","_TestIds","_ThemeContext","_useIsInPiPMode","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","CallParticipantsGrid","CallParticipantsList","DefaultCallParticipantsList","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","showLocalParticipant","supportedReactions","landscape","theme","colors","callParticipantsGrid","useTheme","useRemoteParticipants","useParticipants","useLocalParticipant","useDominantSpeaker","useCallStateHooks","_remoteParticipants","localParticipant","_allParticipants","dominantSpeaker","remoteParticipants","useDebouncedValue","allParticipants","landscapeStyles","flexDirection","isInPiPMode","useIsInPiPMode","showFloatingView","participants","isLocalParticipant","participantViewProps","createElement","View","style","styles","container","backgroundColor","sheetPrimary","testID","ComponentTestIds","CALL_PARTICIPANTS_GRID","exports","StyleSheet","create","flex"],"sourceRoot":"../../../../../src","sources":["components/Call/CallLayout/CallParticipantsGrid.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_videoReactBindings","_useDebouncedValue","_CallParticipantsList","_TestIds","_ThemeContext","_useIsInPiPMode","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","CallParticipantsGrid","CallParticipantsList","DefaultCallParticipantsList","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","showLocalParticipant","supportedReactions","landscape","theme","colors","callParticipantsGrid","useTheme","useRemoteParticipants","useParticipants","useLocalParticipant","useDominantSpeaker","useCallStateHooks","_remoteParticipants","localParticipant","_allParticipants","dominantSpeaker","remoteParticipants","useDebouncedValue","allParticipants","landscapeStyles","flexDirection","isInPiPMode","useIsInPiPMode","showFloatingView","participants","isLocalParticipant","participantViewProps","createElement","View","style","styles","container","backgroundColor","sheetPrimary","testID","ComponentTestIds","CALL_PARTICIPANTS_GRID","exports","StyleSheet","create","flex"],"sourceRoot":"../../../../../src","sources":["components/Call/CallLayout/CallParticipantsGrid.tsx"],"mappings":"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","ignoreList":[]}
@@ -61,7 +61,8 @@ const VideoRenderer = ({
61
61
  register: registerIosScreenshot,
62
62
  deregister: deregisterIosScreenshot
63
63
  } = (0, _ScreenshotIosContext.useScreenshotIosContext)();
64
- const videoDimensions = (0, _useTrackDimensions.useTrackDimensions)(participant);
64
+ const videoDimensions = (0, _useTrackDimensions.useTrackDimensions)(participant, trackType);
65
+ const isVideoDimensionsValid = videoDimensions.width > 0 && videoDimensions.height > 0;
65
66
  const {
66
67
  isLocalParticipant,
67
68
  sessionId,
@@ -214,7 +215,7 @@ const VideoRenderer = ({
214
215
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
215
216
  onLayout: onLayout,
216
217
  style: [styles.container, videoRenderer.container]
217
- }, canShowVideo && videoStreamToRender ? /*#__PURE__*/_react.default.createElement(_reactNativeWebrtc.RTCView, {
218
+ }, canShowVideo && videoStreamToRender && (objectFit || isVideoDimensionsValid) ? /*#__PURE__*/_react.default.createElement(_reactNativeWebrtc.RTCView, {
218
219
  style: [styles.videoStream, videoRenderer.videoStream],
219
220
  streamURL: videoStreamToRender.toURL(),
220
221
  mirror: mirror,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeWebrtc","_videoClient","_videoReactBindings","_ParticipantVideoFallback","_ThemeContext","_useTrackDimensions","_ScreenshotIosContext","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DEFAULT_VIEWPORT_VISIBILITY_STATE","videoTrack","VisibilityState","UNKNOWN","screenShareTrack","VideoRenderer","trackType","participant","isVisible","ParticipantVideoFallback","DefaultParticipantVideoFallback","objectFit","videoZOrder","theme","videoRenderer","useTheme","useCall","useCallCallingState","useCameraState","useIncomingVideoSettings","useCallStateHooks","isParticipantVideoEnabled","callingState","pendingVideoLayoutRef","useRef","undefined","subscribedVideoLayoutRef","direction","viewRef","register","registerIosScreenshot","deregister","deregisterIosScreenshot","useScreenshotIosContext","videoDimensions","useTrackDimensions","isLocalParticipant","sessionId","viewportVisibilityState","videoStream","screenShareStream","isScreenSharing","isPublishingVideoTrack","hasScreenShare","hasVideo","hasJoinedCall","CallingState","JOINED","videoStreamToRender","canShowVideo","hasPausedTrack","useEffect","Platform","OS","current","mirror","VISIBLE","state","updateParticipant","p","INVISIBLE","updateIsNeeded","dimension","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","onLayout","event","width","Math","trunc","nativeEvent","layout","height","createElement","View","style","styles","container","RTCView","streamURL","toURL","ref","zOrder","exports","StyleSheet","create","absoluteFillObject"],"sourceRoot":"../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeWebrtc","_videoClient","_videoReactBindings","_ParticipantVideoFallback","_ThemeContext","_useTrackDimensions","_ScreenshotIosContext","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DEFAULT_VIEWPORT_VISIBILITY_STATE","videoTrack","VisibilityState","UNKNOWN","screenShareTrack","VideoRenderer","trackType","participant","isVisible","ParticipantVideoFallback","DefaultParticipantVideoFallback","objectFit","videoZOrder","theme","videoRenderer","useTheme","useCall","useCallCallingState","useCameraState","useIncomingVideoSettings","useCallStateHooks","isParticipantVideoEnabled","callingState","pendingVideoLayoutRef","useRef","undefined","subscribedVideoLayoutRef","direction","viewRef","register","registerIosScreenshot","deregister","deregisterIosScreenshot","useScreenshotIosContext","videoDimensions","useTrackDimensions","isVideoDimensionsValid","width","height","isLocalParticipant","sessionId","viewportVisibilityState","videoStream","screenShareStream","isScreenSharing","isPublishingVideoTrack","hasScreenShare","hasVideo","hasJoinedCall","CallingState","JOINED","videoStreamToRender","canShowVideo","hasPausedTrack","useEffect","Platform","OS","current","mirror","VISIBLE","state","updateParticipant","p","INVISIBLE","updateIsNeeded","dimension","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","onLayout","event","Math","trunc","nativeEvent","layout","createElement","View","style","styles","container","RTCView","streamURL","toURL","ref","zOrder","exports","StyleSheet","create","absoluteFillObject"],"sourceRoot":"../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer.tsx"],"mappings":"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","ignoreList":[]}
@@ -75,6 +75,7 @@ const BackgroundFiltersProvider = ({
75
75
  } else if (blurIntensity === 'light') {
76
76
  filterName = 'BackgroundBlurLight';
77
77
  }
78
+ call?.tracer.trace('backgroundFilters.apply', filterName);
78
79
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
79
80
  track._setVideoEffect(filterName);
80
81
  });
@@ -96,6 +97,7 @@ const BackgroundFiltersProvider = ({
96
97
  } else if (blurIntensity === 'light') {
97
98
  filterName = 'BlurLight';
98
99
  }
100
+ call?.tracer.trace('backgroundFilters.apply', filterName);
99
101
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
100
102
  track._setVideoEffect(filterName);
101
103
  });
@@ -115,6 +117,7 @@ const BackgroundFiltersProvider = ({
115
117
  registeredImageFiltersSetRef.current.add(imageUri);
116
118
  }
117
119
  const filterName = `VirtualBackground-${imageUri}`;
120
+ call?.tracer.trace('backgroundFilters.apply', filterName);
118
121
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
119
122
  track._setVideoEffect(filterName);
120
123
  });
@@ -126,6 +129,7 @@ const BackgroundFiltersProvider = ({
126
129
  if (!isSupported) {
127
130
  return;
128
131
  }
132
+ call?.tracer.trace('backgroundFilters.disableAll', null);
129
133
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
130
134
  track._setVideoEffect(null);
131
135
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_videoReactBindings","_reactNative","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","isSupported","Platform","OS","currentVersion","parseInt","Version","videoFiltersModule","resolveAssetSourceFunc","Image","resolveAssetSource","BackgroundFiltersContext","createContext","undefined","useBackgroundFilters","context","useContext","Error","exports","BackgroundFiltersProvider","children","useCall","isBackgroundBlurRegisteredRef","useRef","isVideoBlurRegisteredRef","registeredImageFiltersSetRef","Set","currentBackgroundFilter","setCurrentBackgroundFilter","useState","applyBackgroundBlurFilter","useCallback","blurIntensity","current","registerBackgroundBlurVideoFilters","filterName","camera","state","mediaStream","getVideoTracks","forEach","track","_setVideoEffect","blur","applyVideoBlurFilter","registerBlurVideoFilters","applyBackgroundImageFilter","imageSource","source","imageUri","uri","registeredImageFiltersSet","registerVirtualBackgroundFilter","add","image","disableAllFilters","value","useMemo","createElement","Provider"],"sourceRoot":"../../../src","sources":["contexts/BackgroundFilters.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_videoReactBindings","_reactNative","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","isSupported","Platform","OS","currentVersion","parseInt","Version","videoFiltersModule","resolveAssetSourceFunc","Image","resolveAssetSource","BackgroundFiltersContext","createContext","undefined","useBackgroundFilters","context","useContext","Error","exports","BackgroundFiltersProvider","children","useCall","isBackgroundBlurRegisteredRef","useRef","isVideoBlurRegisteredRef","registeredImageFiltersSetRef","Set","currentBackgroundFilter","setCurrentBackgroundFilter","useState","applyBackgroundBlurFilter","useCallback","blurIntensity","current","registerBackgroundBlurVideoFilters","filterName","tracer","trace","camera","state","mediaStream","getVideoTracks","forEach","track","_setVideoEffect","blur","applyVideoBlurFilter","registerBlurVideoFilters","applyBackgroundImageFilter","imageSource","source","imageUri","uri","registeredImageFiltersSet","registerVirtualBackgroundFilter","add","image","disableAllFilters","value","useMemo","createElement","Provider"],"sourceRoot":"../../../src","sources":["contexts/BackgroundFilters.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,9 @@ var _reactNative = require("react-native");
11
11
  var _videoClient = require("@stream-io/video-client");
12
12
  var _notifee = require("../utils/push/libs/notifee");
13
13
  const notifeeLib = (0, _notifee.getNotifeeLibNoThrowForKeepCallAlive)();
14
+ const callToPassToForegroundService = {
15
+ current: undefined
16
+ };
14
17
  function setForegroundService() {
15
18
  if (_reactNative.Platform.OS === 'ios' || !notifeeLib) return;
16
19
  _reactNative.NativeModules.StreamVideoReactNative.isCallAliveConfigured().then(isConfigured => {
@@ -20,35 +23,46 @@ function setForegroundService() {
20
23
  return;
21
24
  }
22
25
  notifeeLib.default.registerForegroundService(() => {
23
- return new Promise(() => {
26
+ const task = new Promise(resolve => {
24
27
  const logger = (0, _videoClient.getLogger)(['setForegroundService method']);
25
28
  logger('info', 'Foreground service running for call in progress');
29
+ // any task to run from SDK in the foreground service must be added
30
+ resolve(true);
26
31
  });
32
+ const videoConfig = _utils.StreamVideoRN.getConfig();
33
+ const foregroundServiceConfig = videoConfig.foregroundService;
34
+ const {
35
+ taskToRun
36
+ } = foregroundServiceConfig.android;
37
+ const call = callToPassToForegroundService.current;
38
+ if (!call) {
39
+ const logger = (0, _videoClient.getLogger)(['setForegroundService method']);
40
+ logger('warn', 'No call to pass to foreground service');
41
+ return task.then(() => new Promise(() => {}));
42
+ }
43
+ callToPassToForegroundService.current = undefined;
44
+ return task.then(() => taskToRun(call));
27
45
  });
28
46
  });
29
47
  }
30
48
  async function startForegroundService(call_cid) {
31
- const videoConfig = _utils.StreamVideoRN.getConfig();
32
- const foregroundServiceConfig = videoConfig.foregroundService;
33
- const {
34
- title,
35
- body
36
- } = foregroundServiceConfig.android.notificationTexts;
37
-
38
- // check for notification permission and then start the foreground service
39
- if (!notifeeLib) return;
40
49
  const isCallAliveConfigured = await _reactNative.NativeModules.StreamVideoReactNative.isCallAliveConfigured();
41
50
  if (!isCallAliveConfigured) {
42
51
  const logger = (0, _videoClient.getLogger)(['startForegroundService']);
43
52
  logger('info', 'KeepCallAlive is not configured. Skipping foreground service setup.');
44
53
  return;
45
54
  }
55
+ // check for notification permission and then start the foreground service
56
+ if (!notifeeLib) return;
46
57
  const settings = await notifeeLib.default.getNotificationSettings();
47
58
  if (settings.authorizationStatus !== notifeeLib.AuthorizationStatus.AUTHORIZED) {
48
59
  const logger = (0, _videoClient.getLogger)(['startForegroundService']);
49
60
  logger('info', 'Notification permission not granted, can not start foreground service to keep the call alive');
50
61
  return;
51
62
  }
63
+ const videoConfig = _utils.StreamVideoRN.getConfig();
64
+ const foregroundServiceConfig = videoConfig.foregroundService;
65
+ const notificationTexts = foregroundServiceConfig.android.notificationTexts;
52
66
  const channelId = foregroundServiceConfig.android.channel.id;
53
67
  await notifeeLib.default.createChannel(foregroundServiceConfig.android.channel);
54
68
  const foregroundServiceTypes = await (0, _notifee.getKeepCallAliveForegroundServiceTypes)();
@@ -58,8 +72,8 @@ async function startForegroundService(call_cid) {
58
72
  requestAnimationFrame(() => {
59
73
  notifeeLib.default.displayNotification({
60
74
  id: call_cid,
61
- title,
62
- body,
75
+ title: notificationTexts.title,
76
+ body: notificationTexts.body,
63
77
  android: {
64
78
  channelId,
65
79
  smallIcon: videoConfig.push?.android.smallIcon,
@@ -89,6 +103,7 @@ let isSetForegroundServiceRan = false;
89
103
  const useAndroidKeepCallAliveEffect = () => {
90
104
  const foregroundServiceStartedRef = (0, _react.useRef)(false);
91
105
  const call = (0, _videoReactBindings.useCall)();
106
+ callToPassToForegroundService.current = call;
92
107
  const activeCallCid = call?.cid;
93
108
  const {
94
109
  useCallCallingState
@@ -117,6 +132,7 @@ const useAndroidKeepCallAliveEffect = () => {
117
132
  const displayedNotifications = await notifee.getDisplayedNotifications();
118
133
  const activeCallNotification = displayedNotifications.find(notification => notification.id === activeCallCid);
119
134
  if (activeCallNotification) {
135
+ callToPassToForegroundService.current = undefined;
120
136
  // this means that we have a incoming call notification shown as foreground service and we must stop it
121
137
  notifee.stopForegroundService();
122
138
  notifee.cancelDisplayedNotification(activeCallCid);
@@ -149,6 +165,7 @@ const useAndroidKeepCallAliveEffect = () => {
149
165
  };
150
166
  } else if (callingState === _videoClient.CallingState.IDLE || callingState === _videoClient.CallingState.LEFT) {
151
167
  if (foregroundServiceStartedRef.current) {
168
+ callToPassToForegroundService.current = undefined;
152
169
  // stop foreground service when the call is not active
153
170
  notifeeLib.default.stopForegroundService();
154
171
  foregroundServiceStartedRef.current = false;
@@ -156,6 +173,7 @@ const useAndroidKeepCallAliveEffect = () => {
156
173
  notifeeLib.default.getDisplayedNotifications().then(displayedNotifications => {
157
174
  const activeCallNotification = displayedNotifications.find(notification => notification.id === activeCallCid);
158
175
  if (activeCallNotification) {
176
+ callToPassToForegroundService.current = undefined;
159
177
  // this means that we have a incoming call notification shown as foreground service and we must stop it
160
178
  notifeeLib.default.stopForegroundService();
161
179
  }
@@ -169,6 +187,7 @@ const useAndroidKeepCallAliveEffect = () => {
169
187
  // stop foreground service when this effect is unmounted
170
188
  if (foregroundServiceStartedRef.current) {
171
189
  if (!notifeeLib) return;
190
+ callToPassToForegroundService.current = undefined;
172
191
  notifeeLib.default.stopForegroundService();
173
192
  foregroundServiceStartedRef.current = false;
174
193
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_videoReactBindings","require","_react","_utils","_reactNative","_videoClient","_notifee","notifeeLib","getNotifeeLibNoThrowForKeepCallAlive","setForegroundService","Platform","OS","NativeModules","StreamVideoReactNative","isCallAliveConfigured","then","isConfigured","logger","getLogger","default","registerForegroundService","Promise","startForegroundService","call_cid","videoConfig","StreamVideoRN","getConfig","foregroundServiceConfig","foregroundService","title","body","android","notificationTexts","settings","getNotificationSettings","authorizationStatus","AuthorizationStatus","AUTHORIZED","channelId","channel","id","createChannel","foregroundServiceTypes","getKeepCallAliveForegroundServiceTypes","requestAnimationFrame","displayNotification","smallIcon","push","asForegroundService","ongoing","colorized","pressAction","launchActivity","isSetForegroundServiceRan","useAndroidKeepCallAliveEffect","foregroundServiceStartedRef","useRef","call","useCall","activeCallCid","cid","useCallCallingState","useCallStateHooks","callingState","isOutgoingCall","CallingState","RINGING","isCreatedByMe","isCallJoined","JOINED","shouldStartForegroundService","current","useEffect","undefined","run","notifee","displayedNotifications","getDisplayedNotifications","activeCallNotification","find","notification","stopForegroundService","cancelDisplayedNotification","AppState","currentState","sub","addEventListener","nextAppState","remove","IDLE","LEFT","exports"],"sourceRoot":"../../../src","sources":["hooks/useAndroidKeepCallAliveEffect.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_videoReactBindings","require","_react","_utils","_reactNative","_videoClient","_notifee","notifeeLib","getNotifeeLibNoThrowForKeepCallAlive","callToPassToForegroundService","current","undefined","setForegroundService","Platform","OS","NativeModules","StreamVideoReactNative","isCallAliveConfigured","then","isConfigured","logger","getLogger","default","registerForegroundService","task","Promise","resolve","videoConfig","StreamVideoRN","getConfig","foregroundServiceConfig","foregroundService","taskToRun","android","call","startForegroundService","call_cid","settings","getNotificationSettings","authorizationStatus","AuthorizationStatus","AUTHORIZED","notificationTexts","channelId","channel","id","createChannel","foregroundServiceTypes","getKeepCallAliveForegroundServiceTypes","requestAnimationFrame","displayNotification","title","body","smallIcon","push","asForegroundService","ongoing","colorized","pressAction","launchActivity","isSetForegroundServiceRan","useAndroidKeepCallAliveEffect","foregroundServiceStartedRef","useRef","useCall","activeCallCid","cid","useCallCallingState","useCallStateHooks","callingState","isOutgoingCall","CallingState","RINGING","isCreatedByMe","isCallJoined","JOINED","shouldStartForegroundService","useEffect","run","notifee","displayedNotifications","getDisplayedNotifications","activeCallNotification","find","notification","stopForegroundService","cancelDisplayedNotification","AppState","currentState","sub","addEventListener","nextAppState","remove","IDLE","LEFT","exports"],"sourceRoot":"../../../src","sources":["hooks/useAndroidKeepCallAliveEffect.ts"],"mappings":"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","ignoreList":[]}
@@ -4,59 +4,55 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useTrackDimensions = useTrackDimensions;
7
- var _videoReactBindings = require("@stream-io/video-react-bindings");
8
7
  var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ const webRTCEventEmitter = new _reactNative.NativeEventEmitter(_reactNative.NativeModules.WebRTCModule);
10
+
9
11
  /**
10
12
  * This is a utility hook to get the dimensions of the video track of the participant.
11
13
  * Note: the `tracktype` is used only for local participants.
12
14
  * `tracktype` should be 'videoTrack' for video track and 'screenShareTrack' for screen share track.
13
15
  */
14
- function useTrackDimensions(participant) {
15
- const [trackDimensions, setTrackDimensions] = (0, _react.useState)({
16
- width: 0,
17
- height: 0
18
- });
19
- const call = (0, _videoReactBindings.useCall)();
16
+ function useTrackDimensions(participant, trackType) {
20
17
  const {
21
- sessionId
18
+ videoStream,
19
+ screenShareStream
22
20
  } = participant;
23
- (0, _react.useEffect)(() => {
24
- if (!call) return;
25
- call.startReportingStatsFor(sessionId);
26
- return () => {
27
- call.stopReportingStatsFor(sessionId);
21
+ const stream = trackType === 'screenShareTrack' ? screenShareStream : videoStream;
22
+ const [track] = stream?.getVideoTracks() ?? [];
23
+ const trackId = track?.id;
24
+ const [trackDimensions, setTrackDimensions] = (0, _react.useState)(() => {
25
+ const settings = track?.getSettings();
26
+ const width = settings?.width ?? 0;
27
+ const height = settings?.height ?? 0;
28
+ return {
29
+ width,
30
+ height
28
31
  };
29
- }, [call, sessionId]);
32
+ });
30
33
 
31
- // for remote participants track.getSettings() is not supported it returns an empty object
32
- // and for local participants we can get from track.getSettings() but it reports the wrong dimensions as it sends the constraints
33
- // so we need to rely on call stats for all participants to get the dimensions
34
+ // Set up videoTrackDimensionChanged event listener for more direct dimension updates
34
35
  (0, _react.useEffect)(() => {
35
- if (!call) return;
36
- const sub = call.state.callStatsReport$.subscribe(report => {
37
- if (!report) return;
38
- const reportForTracks = report.participants[sessionId];
39
- const trackStats = reportForTracks?.flatMap(r => r.streams).filter(track => track.kind === 'video');
40
- if (!trackStats) return;
41
- const stat = trackStats[0];
42
- if (stat) {
43
- const {
44
- frameWidth = 0,
45
- frameHeight = 0
46
- } = stat;
36
+ if (!trackId || !_reactNative.NativeModules.WebRTCModule) return;
37
+ const handleVideoTrackDimensionChanged = eventData => {
38
+ // Only handle events for this specific participant
39
+ if (eventData.trackId === trackId) {
47
40
  setTrackDimensions(prev => {
48
- if (prev.width !== frameWidth || prev.height !== frameHeight) {
41
+ if (prev.width !== eventData.width || prev.height !== eventData.height) {
49
42
  return {
50
- width: frameWidth,
51
- height: frameHeight
43
+ width: eventData.width,
44
+ height: eventData.height
52
45
  };
53
46
  }
54
47
  return prev;
55
48
  });
56
49
  }
57
- });
58
- return () => sub.unsubscribe();
59
- }, [call, sessionId]);
50
+ };
51
+ const subscription = webRTCEventEmitter.addListener('videoTrackDimensionChanged', handleVideoTrackDimensionChanged);
52
+ return () => {
53
+ subscription.remove();
54
+ };
55
+ }, [trackId, track]);
60
56
  return trackDimensions;
61
57
  }
62
58
  //# sourceMappingURL=useTrackDimensions.js.map