@100mslive/react-native-hms 1.10.2 → 1.10.4
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/android/local.properties +8 -1
- package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +3 -0
- package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayer.kt +94 -0
- package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayerManager.kt +32 -0
- package/ios/HMSDecoder.swift +12 -0
- package/ios/HMSHLSPlayerManager.m +6 -0
- package/ios/HMSHLSPlayerManager.swift +140 -1
- package/ios/Hmssdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcuserdata/jatinnagar.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/Hmssdk.xcodeproj/xcuserdata/jatinnagar.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/lib/commonjs/classes/HMSEncoder.js +11 -1
- package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
- package/lib/commonjs/classes/HMSHLSPlaylistType.js +12 -0
- package/lib/commonjs/classes/HMSHLSPlaylistType.js.map +1 -0
- package/lib/commonjs/classes/HMSHLSVariant.js +2 -0
- package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
- package/lib/commonjs/classes/HMSNoiseCancellationPlugin.js +1 -0
- package/lib/commonjs/classes/HMSNoiseCancellationPlugin.js.map +1 -1
- package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +98 -2
- package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
- package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
- package/lib/commonjs/components/HMSHLSPlayer/hooks.js +16 -6
- package/lib/commonjs/components/HMSHLSPlayer/hooks.js.map +1 -1
- package/lib/commonjs/components/HMSHLSPlayer/index.js +15 -1
- package/lib/commonjs/components/HMSHLSPlayer/index.js.map +1 -1
- package/lib/commonjs/index.js +12 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/stores/hls-player-playback-slice.js +6 -0
- package/lib/commonjs/stores/hls-player-playback-slice.js.map +1 -1
- package/lib/commonjs/stores/hls-player-stats-store.js +27 -15
- package/lib/commonjs/stores/hls-player-stats-store.js.map +1 -1
- package/lib/commonjs/stores/types.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/module/classes/HMSEncoder.js +11 -1
- package/lib/module/classes/HMSEncoder.js.map +1 -1
- package/lib/module/classes/HMSHLSPlaylistType.js +6 -0
- package/lib/module/classes/HMSHLSPlaylistType.js.map +1 -0
- package/lib/module/classes/HMSHLSVariant.js +2 -0
- package/lib/module/classes/HMSHLSVariant.js.map +1 -1
- package/lib/module/classes/HMSNoiseCancellationPlugin.js +1 -0
- package/lib/module/classes/HMSNoiseCancellationPlugin.js.map +1 -1
- package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +101 -5
- package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
- package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
- package/lib/module/components/HMSHLSPlayer/hooks.js +12 -4
- package/lib/module/components/HMSHLSPlayer/hooks.js.map +1 -1
- package/lib/module/components/HMSHLSPlayer/index.js +1 -1
- package/lib/module/components/HMSHLSPlayer/index.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/stores/hls-player-playback-slice.js +6 -0
- package/lib/module/stores/hls-player-playback-slice.js.map +1 -1
- package/lib/module/stores/hls-player-stats-store.js +27 -15
- package/lib/module/stores/hls-player-stats-store.js.map +1 -1
- package/lib/module/stores/types.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/classes/HMSEncoder.d.ts +2 -0
- package/lib/typescript/classes/HMSHLSPlaylistType.d.ts +4 -0
- package/lib/typescript/classes/HMSHLSVariant.d.ts +3 -0
- package/lib/typescript/classes/HMSNoiseCancellationPlugin.d.ts +1 -0
- package/lib/typescript/components/HMSHLSPlayer/HMSHLSPlayer.d.ts +6 -0
- package/lib/typescript/components/HMSHLSPlayer/RCTHMSHLSPlayer.d.ts +5 -1
- package/lib/typescript/components/HMSHLSPlayer/hooks.d.ts +3 -0
- package/lib/typescript/components/HMSHLSPlayer/index.d.ts +1 -1
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/stores/hls-player-stats-store.d.ts +4 -3
- package/lib/typescript/stores/types.d.ts +7 -1
- package/lib/typescript/types.d.ts +9 -0
- package/package.json +1 -1
- package/sdk-versions.json +2 -2
- package/src/classes/HMSEncoder.ts +13 -0
- package/src/classes/HMSHLSPlaylistType.ts +4 -0
- package/src/classes/HMSHLSVariant.ts +5 -0
- package/src/classes/HMSNoiseCancellationPlugin.ts +1 -0
- package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +158 -4
- package/src/components/HMSHLSPlayer/RCTHMSHLSPlayer.ts +12 -0
- package/src/components/HMSHLSPlayer/hooks.ts +16 -4
- package/src/components/HMSHLSPlayer/index.ts +2 -0
- package/src/index.ts +1 -0
- package/src/stores/hls-player-playback-slice.ts +8 -0
- package/src/stores/hls-player-stats-store.ts +28 -18
- package/src/stores/types.ts +9 -1
- package/src/types.ts +15 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HMSManager","HMSTrack","HMSAudioTrack","HMSVideoTrack","HMSRoom","HMSPeer","HMSLocalPeer","HMSRemotePeer","HMSAudioTrackSettings","HMSVideoTrackSettings","HMSLocalVideoTrack","HMSLocalAudioTrack","HMSRole","HMSRoleChangeRequest","HMSChangeTrackStateRequest","HMSVideoResolution","HMSRTCStats","HMSRTCStatsReport","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSSpeaker","HMSHLSRecordingState","HMSNetworkQuality","HMSBrowserRecordingState","HMSHLSStreamingState","HMSHLSVariant","HMSRtmpStreamingState","HMSServerRecordingState","HMSMessage","HMSMessageRecipient","HMSException","HMSConstants","HMSPeerUpdateOrdinals","HMSLocalAudioStats","HMSLocalVideoStats","HMSRemoteAudioStats","HMSRemoteVideoStats","HMSLayer","HMSSimulcastLayerDefinition","HMSQualityLimitationReasons","HMSTrackType","HMSEncoder","clearData","data","roles","encodeHmsRoom","room","id","encodedObj","sessionId","undefined","metaData","name","peerCount","peers","encodeHmsPeers","browserRecordingState","encodeBrowserRecordingState","rtmpHMSRtmpStreamingState","encodeRTMPStreamingState","serverRecordingState","encodeServerRecordingState","hlsStreamingState","encodeHLSStreamingState","hlsRecordingState","encodeHLSRecordingState","localPeer","encodeHmsLocalPeer","encodedPeers","map","peer","push","encodeHmsPeer","peerID","encodeHmsPeerUpdate","hmsPeerUpdateOrdinal","get","encodeHmsAudioTrack","track","trackId","source","trackDescription","isMute","type","encodeHmsVideoTrack","isDegraded","encodeHmsAuxiliaryTracks","tracks","auxiliaryTracks","encodeHmsTrack","_peer$localAudioTrack","_peer$localAudioTrack2","_peer$localAudioTrack3","_peer$localAudioTrack4","_peer$localAudioTrack5","_peer$localAudioTrack6","_peer$localAudioTrack7","_peer$localAudioTrack8","_peer$localVideoTrack","_peer$localVideoTrack2","_peer$localVideoTrack3","_peer$localVideoTrack4","_peer$localVideoTrack5","_peer$localVideoTrack6","_peer$localVideoTrack7","_peer$localVideoTrack8","localAudioTrackData","settings","encodeHmsAudioTrackSettings","localVideoTrackData","encodeHmsVideoTrackSettings","useHardwareEchoCancellation","useHardwareAcousticEchoCanceler","initialState","audioMode","forceSoftwareDecoder","simulcastSettings","cameraFacing","disableAutoResize","encodeHmsVideoResolution","resolution","height","width","encodeHmsLocalAudioTrack","encodeHmsLocalVideoTrack","encodeHmsRemotePeers","hmsPeers","encodedPeer","encodeHmsRemotePeer","_peer$remoteAudioTrac","_peer$remoteAudioTrac2","_peer$remoteAudioTrac3","_peer$remoteAudioTrac4","_peer$remoteAudioTrac5","_peer$remoteAudioTrac6","_peer$remoteVideoTrac","_peer$remoteVideoTrac2","_peer$remoteVideoTrac3","_peer$remoteVideoTrac4","_peer$remoteVideoTrac5","_peer$remoteVideoTrac6","remoteAudioTrackData","playbackAllowed","remoteVideoTrackData","encodeHmsRemoteAudioTrack","encodeHmsRemoteVideoTrack","encodeHmsPreviewTracks","previewTracks","encodeHmsPreviewForRoleTracks","VIDEO","encodeHmsRoles","encodedRoles","item","encodeHmsRole","role","_cachedRole$publishSe","rolesCache","cachedRole","publishSettings","allowed","_hmsRole$publishSetti","hmsRole","restrictData","DEFAULT_SDK_ID","roleName","encodeHmsRoleChangeRequest","encodedRoleChangeRequest","requestedBy","suggestedRole","encodeHmsChangeTrackStateRequest","encodedChangeTrackStateRequest","trackType","mute","encodeRTCStats","video","encodeRTCStatsUnit","audio","combined","bitrateReceived","bitrateSent","bytesReceived","bytesSent","packetsLost","packetsReceived","roundTripTime","encodeHmsSpeakers","encodedSpeakers","encodeHmsSpeaker","level","initialising","running","startedAt","encodeDate","stoppedAt","error","state","dateData","dateNum","parseInt","isNaN","Date","variants","Array","isArray","encodeHLSVariants","variant","hlsStreamUrl","meetingUrl","metadata","encodeHMSNetworkQuality","downlinkQuality","encodeHMSMessage","message","messageId","time","sender","recipient","encodeHMSMessageRecipient","recipientType","recipientPeer","recipientRoles","encodeHMSException","_data$error","_data$error2","_data$error3","_data$error4","_data$error5","_data$error6","_data$error7","code","description","action","isTerminal","canRetry","encodeHMSLocalAudioStats","bitrate","encodeHMSLocalVideoStats","frameRate","layer","qualityLimitationReasons","encodeHMSQualityLimitationReasons","encodeHMSRemoteAudioStats","jitter","encodeHMSRemoteVideoStats","encodeHMSSimulcastLayerDefinition","sld","reason","bandwidth","cpu","none","other","qualityLimitationResolutionChanges","transformHMSHLSCueEventData","startDate","endDate","transformed","_defineProperty"],"sources":["HMSEncoder.ts"],"sourcesContent":["import HMSManager from '../modules/HMSManagerModule';\n\nimport { HMSTrack } from './HMSTrack';\nimport { HMSAudioTrack } from './HMSAudioTrack';\nimport { HMSVideoTrack } from './HMSVideoTrack';\nimport { HMSRoom } from './HMSRoom';\nimport { HMSPeer } from './HMSPeer';\nimport { HMSLocalPeer } from './HMSLocalPeer';\nimport { HMSRemotePeer } from './HMSRemotePeer';\nimport { HMSAudioTrackSettings } from './HMSAudioTrackSettings';\nimport { HMSVideoTrackSettings } from './HMSVideoTrackSettings';\nimport { HMSLocalVideoTrack } from './HMSLocalVideoTrack';\nimport { HMSLocalAudioTrack } from './HMSLocalAudioTrack';\nimport { HMSRole } from './HMSRole';\nimport { HMSRoleChangeRequest } from './HMSRoleChangeRequest';\nimport { HMSChangeTrackStateRequest } from './HMSChangeTrackStateRequest';\nimport { HMSVideoResolution } from './HMSVideoResolution';\nimport { HMSRTCStats } from './HMSRTCStats';\nimport { HMSRTCStatsReport } from './HMSRTCStatsReport';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\nimport { HMSSpeaker } from './HMSSpeaker';\nimport { HMSHLSRecordingState } from './HMSHLSRecordingState';\nimport { HMSNetworkQuality } from './HMSNetworkQuality';\nimport { HMSBrowserRecordingState } from './HMSBrowserRecordingState';\nimport { HMSHLSStreamingState } from './HMSHLSStreamingState';\nimport { HMSHLSVariant } from './HMSHLSVariant';\nimport { HMSRtmpStreamingState } from './HMSRtmpStreamingState';\nimport { HMSServerRecordingState } from './HMSServerRecordingState';\nimport { HMSMessage } from './HMSMessage';\nimport { HMSMessageRecipient } from './HMSMessageRecipient';\nimport { HMSException } from './HMSException';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSPeerUpdateOrdinals } from './HMSPeerUpdate';\nimport { HMSLocalAudioStats } from './HMSLocalAudioStats';\nimport { HMSLocalVideoStats } from './HMSLocalVideoStats';\nimport { HMSRemoteAudioStats } from './HMSRemoteAudioStats';\nimport { HMSRemoteVideoStats } from './HMSRemoteVideoStats';\nimport { HMSLayer } from './HMSLayer';\nimport { HMSSimulcastLayerDefinition } from './HMSSimulcastLayerDefinition';\nimport { HMSQualityLimitationReasons } from './HMSQualityLimitationReasons';\nimport { HMSTrackType } from './HMSTrackType';\n\ninterface InitialData {\n roles: Record<string, HMSRole>;\n}\n\nexport class HMSEncoder {\n private static data: InitialData = { roles: {} };\n\n static clearData() {\n this.data = { roles: {} };\n }\n\n static encodeHmsRoom(room: any, id: string) {\n const encodedObj = {\n id: room?.id,\n sessionId: room?.sessionId || undefined,\n metaData: room?.metaData,\n name: room?.name,\n peerCount: room?.peerCount,\n peers: HMSEncoder.encodeHmsPeers(room?.peers),\n browserRecordingState: HMSEncoder.encodeBrowserRecordingState(\n room?.browserRecordingState\n ),\n rtmpHMSRtmpStreamingState: HMSEncoder.encodeRTMPStreamingState(\n room?.rtmpHMSRtmpStreamingState\n ),\n serverRecordingState: HMSEncoder.encodeServerRecordingState(\n room?.serverRecordingState\n ),\n hlsStreamingState: HMSEncoder.encodeHLSStreamingState(\n room?.hlsStreamingState\n ),\n hlsRecordingState: HMSEncoder.encodeHLSRecordingState(\n room?.hlsRecordingState\n ),\n localPeer: HMSEncoder.encodeHmsLocalPeer(room?.localPeer, id),\n // startedAt: HMSEncoder.encodeDate(room?.startedAt),\n };\n\n return new HMSRoom(encodedObj);\n }\n\n static encodeHmsPeers(peers: any) {\n const encodedPeers: HMSPeer[] = [];\n peers?.map((peer: any) => {\n encodedPeers.push(HMSEncoder.encodeHmsPeer(peer));\n });\n\n return encodedPeers;\n }\n\n static encodeHmsPeer(peer: any) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n };\n\n return new HMSPeer(encodedObj);\n }\n\n static encodeHmsPeerUpdate(hmsPeerUpdateOrdinal: string) {\n return HMSPeerUpdateOrdinals.get(hmsPeerUpdateOrdinal);\n }\n\n static encodeHmsAudioTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSAudioTrack(encodedObj);\n }\n\n static encodeHmsVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n isDegraded: track?.isDegraded,\n type: track?.type,\n };\n\n return new HMSVideoTrack(encodedObj);\n }\n\n static encodeHmsAuxiliaryTracks(tracks: any, id: string) {\n const auxiliaryTracks: HMSTrack[] = [];\n tracks?.map((track: any) => {\n auxiliaryTracks.push(HMSEncoder.encodeHmsTrack(track, id));\n });\n return auxiliaryTracks;\n }\n\n static encodeHmsTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSTrack(encodedObj);\n }\n\n static encodeHmsLocalPeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n localAudioTrackData: peer?.localAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localAudioTrackData?.trackId,\n source: peer?.localAudioTrackData?.source,\n trackDescription: peer?.localAudioTrackData?.trackDescription,\n isMute: peer?.localAudioTrackData?.isMute,\n settings: peer?.localAudioTrackData?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(\n peer?.localAudioTrackData?.settings\n )\n : undefined,\n type: peer?.localAudioTrackData?.type,\n }\n : undefined,\n localVideoTrackData: peer?.localVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localVideoTrackData?.trackId,\n source: peer?.localVideoTrackData?.source,\n trackDescription: peer?.localVideoTrackData?.trackDescription,\n isMute: peer?.localVideoTrackData?.isMute,\n settings: peer?.localVideoTrackData?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(\n peer?.localVideoTrackData?.settings\n )\n : undefined,\n type: peer?.localVideoTrackData?.type,\n }\n : undefined,\n };\n\n return new HMSLocalPeer(encodedObj);\n }\n\n static encodeHmsAudioTrackSettings(settings: any) {\n const encodedObj = {\n useHardwareEchoCancellation: settings?.useHardwareAcousticEchoCanceler,\n initialState: settings?.initialState,\n audioMode: settings?.audioMode,\n };\n\n return new HMSAudioTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoTrackSettings(settings: any) {\n const encodedObj = {\n initialState: settings?.initialState,\n forceSoftwareDecoder: settings?.forceSoftwareDecoder,\n simulcastSettings: settings?.simulcastSettings,\n cameraFacing: settings?.cameraFacing,\n disableAutoResize: settings?.disableAutoResize,\n };\n\n return new HMSVideoTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoResolution(resolution: any) {\n const encodedObj = {\n height: resolution?.height,\n width: resolution?.width,\n };\n\n return new HMSVideoResolution(encodedObj);\n }\n\n static encodeHmsLocalAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalAudioTrack(encodedObj);\n }\n\n static encodeHmsLocalVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalVideoTrack(encodedObj);\n }\n\n static encodeHmsRemotePeers(peers: any, id: string) {\n const hmsPeers: HMSRemotePeer[] = [];\n\n peers.map((peer: any) => {\n const encodedPeer = HMSEncoder.encodeHmsRemotePeer(peer, id);\n\n hmsPeers.push(encodedPeer);\n });\n\n return hmsPeers;\n }\n\n static encodeHmsRemotePeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n remoteAudioTrackData: peer?.remoteAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteAudioTrackData?.trackId,\n source: peer?.remoteAudioTrackData?.source,\n trackDescription: peer?.remoteAudioTrackData?.trackDescription,\n isMute: peer?.remoteAudioTrackData?.isMute,\n playbackAllowed: peer?.remoteAudioTrackData?.playbackAllowed,\n }\n : undefined,\n remoteVideoTrackData: peer?.remoteVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteVideoTrackData?.trackId,\n source: peer?.remoteVideoTrackData?.source,\n trackDescription: peer?.remoteVideoTrackData?.trackDescription,\n isMute: peer?.remoteVideoTrackData?.isMute,\n playbackAllowed: peer?.remoteVideoTrackData?.playbackAllowed,\n }\n : undefined,\n };\n\n return new HMSRemotePeer(encodedObj);\n }\n\n static encodeHmsRemoteAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteAudioTrack(encodedObj);\n }\n\n static encodeHmsRemoteVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteVideoTrack(encodedObj);\n }\n\n static encodeHmsPreviewTracks(previewTracks: any[], id: string) {\n return previewTracks?.map((track) => {\n return this.encodeHmsTrack(track, id);\n });\n }\n\n static encodeHmsPreviewForRoleTracks(previewTracks: any[], id: string) {\n return previewTracks?.map((track) => {\n return track.type === HMSTrackType.VIDEO\n ? this.encodeHmsLocalVideoTrack(track, id)\n : this.encodeHmsLocalAudioTrack(track, id);\n });\n }\n\n static encodeHmsRoles(roles: any[]) {\n const encodedRoles: HMSRole[] = [];\n\n roles?.map((item: any) => {\n encodedRoles.push(HMSEncoder.encodeHmsRole(item));\n });\n\n return encodedRoles;\n }\n\n static encodeHmsRole(role: any): HMSRole {\n if (!role) {\n return new HMSRole(role);\n }\n\n const rolesCache = this.data.roles;\n\n const cachedRole = rolesCache[role.name];\n\n // create new HMSRole instance, if cached role does not exist OR `role.publishSettings?.allowed` does not exist\n if (!cachedRole || !cachedRole.publishSettings?.allowed) {\n // Creating HMSRole object with data\n const hmsRole = new HMSRole(role);\n\n // saving the created HMSRole object into cache\n rolesCache[role.name] = hmsRole;\n\n // If the created HMSRole object is complete,\n // sending notification to Native Side to stop sending data for this role\n if (hmsRole.publishSettings?.allowed) {\n HMSManager.restrictData({\n id: HMSConstants.DEFAULT_SDK_ID,\n roleName: hmsRole.name,\n });\n }\n }\n\n return rolesCache[role.name]!;\n }\n\n static encodeHmsRoleChangeRequest(data: any) {\n const encodedRoleChangeRequest = {\n requestedBy: data.requestedBy\n ? HMSEncoder.encodeHmsPeer(data.requestedBy)\n : undefined,\n suggestedRole: HMSEncoder.encodeHmsRole(data.suggestedRole),\n };\n\n return new HMSRoleChangeRequest(encodedRoleChangeRequest);\n }\n\n static encodeHmsChangeTrackStateRequest(data: HMSChangeTrackStateRequest) {\n const encodedChangeTrackStateRequest = {\n requestedBy: data?.requestedBy\n ? HMSEncoder.encodeHmsPeer(data?.requestedBy)\n : undefined,\n trackType: data.trackType,\n mute: data.mute,\n };\n\n return new HMSChangeTrackStateRequest(encodedChangeTrackStateRequest);\n }\n\n static encodeRTCStats(data: any) {\n let video = this.encodeRTCStatsUnit(data?.video);\n let audio = this.encodeRTCStatsUnit(data?.audio);\n let combined = this.encodeRTCStatsUnit(data?.combined);\n\n return new HMSRTCStatsReport({ video, audio, combined });\n }\n\n static encodeRTCStatsUnit(data: any) {\n const [\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n ] = data;\n\n return new HMSRTCStats({\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n });\n }\n\n static encodeHmsSpeakers(data: any, id: string) {\n let encodedSpeakers: Array<HMSSpeaker> = [];\n\n data?.map((item: any) => {\n encodedSpeakers.push(HMSEncoder.encodeHmsSpeaker(item, id));\n });\n\n return encodedSpeakers;\n }\n\n static encodeHmsSpeaker(data: any, id: string) {\n return new HMSSpeaker({\n level: data?.level,\n peer: HMSEncoder.encodeHmsPeer(data?.peer),\n track: HMSEncoder.encodeHmsTrack(data?.track, id),\n });\n }\n\n static encodeBrowserRecordingState(data: any) {\n return new HMSBrowserRecordingState({\n initialising: data?.initialising || false,\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n stoppedAt: HMSEncoder.encodeDate(data?.stoppedAt),\n error: data?.error || undefined,\n state: data?.state,\n });\n }\n\n static encodeServerRecordingState(data: any) {\n return new HMSServerRecordingState({\n running: data?.running || false,\n error: data?.error || undefined,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n state: data?.state,\n });\n }\n\n static encodeRTMPStreamingState(data: any) {\n return new HMSRtmpStreamingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n error: data?.error || undefined,\n state: data?.state,\n });\n }\n\n static encodeDate(dateData: any) {\n if (!dateData) {\n return undefined;\n }\n const dateNum = parseInt(dateData);\n if (isNaN(dateNum)) {\n return undefined;\n }\n return new Date(dateNum);\n }\n\n static encodeHLSStreamingState(data: any) {\n return new HMSHLSStreamingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n error: data?.error || undefined,\n state: data?.state,\n variants: Array.isArray(data?.variants)\n ? this.encodeHLSVariants(data?.variants)\n : undefined,\n });\n }\n\n static encodeHLSRecordingState(data: any) {\n if (data) {\n return new HMSHLSRecordingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n error: data?.error || undefined,\n state: data?.state,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHLSVariants(data: any) {\n let variants: HMSHLSVariant[] = [];\n\n data?.map((item: any) => {\n let variant = new HMSHLSVariant({\n hlsStreamUrl: item.hlsStreamUrl,\n meetingUrl: item.meetingUrl,\n metadata: item?.metaData ? item?.metadata : undefined,\n startedAt: HMSEncoder.encodeDate(item?.startedAt),\n });\n variants.push(variant);\n });\n\n return variants;\n }\n\n static encodeHMSNetworkQuality(data: any) {\n if (data) {\n return new HMSNetworkQuality({\n downlinkQuality: data?.downlinkQuality,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessage(data: any) {\n if (data) {\n return new HMSMessage({\n message: data?.message,\n messageId: data?.messageId,\n type: data?.type,\n time: new Date(parseInt(data?.time)),\n sender: this.encodeHmsPeer(data?.sender),\n recipient: this.encodeHMSMessageRecipient(data?.recipient),\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessageRecipient(data: any) {\n return new HMSMessageRecipient({\n recipientType: data?.recipientType,\n recipientPeer: data?.recipientPeer\n ? this.encodeHmsPeer(data.recipientPeer)\n : undefined,\n recipientRoles: Array.isArray(data?.recipientRoles)\n ? this.encodeHmsRoles(data.recipientRoles)\n : [],\n });\n }\n\n static encodeHMSException(data: any) {\n return new HMSException({\n code: data?.error?.code,\n description: data?.error?.description,\n message: data?.error?.message,\n name: data?.error?.name,\n action: data?.error?.action,\n isTerminal: data?.error?.isTerminal,\n canRetry: data?.error?.canRetry,\n });\n }\n\n static encodeHMSLocalAudioStats(data: any) {\n const [bitrate, bytesSent, roundTripTime] = data;\n\n return new HMSLocalAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n });\n }\n\n static encodeHMSLocalVideoStats(data: any[]) {\n return data.map((item: any) => {\n const [\n bitrate,\n bytesSent,\n roundTripTime,\n frameRate,\n resolution,\n layer,\n qualityLimitationReasons,\n ] = item;\n\n return new HMSLocalVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n layer: layer ? layer : undefined,\n qualityLimitationReasons: qualityLimitationReasons\n ? this.encodeHMSQualityLimitationReasons(qualityLimitationReasons)\n : undefined,\n });\n });\n }\n\n static encodeHMSRemoteAudioStats(data: any) {\n const [bitrate, bytesReceived, jitter, packetsLost, packetsReceived] = data;\n\n return new HMSRemoteAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n });\n }\n\n static encodeHMSRemoteVideoStats(data: any) {\n const [\n bitrate,\n bytesReceived,\n frameRate,\n jitter,\n packetsLost,\n packetsReceived,\n resolution,\n ] = data;\n\n return new HMSRemoteVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n });\n }\n\n static encodeHMSSimulcastLayerDefinition(data: any[]) {\n return data.map((sld) => {\n return new HMSSimulcastLayerDefinition({\n layer: HMSLayer[sld.layer as HMSLayer], // DOUBT: This can be invalid. Should we throw error?\n resolution: this.encodeHmsVideoResolution({\n width: sld.resolution[0],\n height: sld.resolution[1],\n }),\n });\n });\n }\n\n static encodeHMSQualityLimitationReasons(data: any) {\n return new HMSQualityLimitationReasons({\n reason: data.reason,\n bandwidth: data.bandwidth,\n cpu: data.cpu,\n none: data.none,\n other: data.other,\n qualityLimitationResolutionChanges:\n data.qualityLimitationResolutionChanges,\n });\n }\n\n static transformHMSHLSCueEventData<C extends object, T>(data: C): T {\n if ('startDate' in data) {\n data.startDate = this.encodeDate(data.startDate);\n }\n\n if ('endDate' in data && data.endDate) {\n data.endDate = this.encodeDate(data.endDate);\n }\n\n const transformed = data as unknown as T;\n\n return transformed;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["HMSManager","HMSTrack","HMSAudioTrack","HMSVideoTrack","HMSRoom","HMSPeer","HMSLocalPeer","HMSRemotePeer","HMSAudioTrackSettings","HMSVideoTrackSettings","HMSLocalVideoTrack","HMSLocalAudioTrack","HMSRole","HMSRoleChangeRequest","HMSChangeTrackStateRequest","HMSVideoResolution","HMSRTCStats","HMSRTCStatsReport","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSSpeaker","HMSHLSRecordingState","HMSNetworkQuality","HMSBrowserRecordingState","HMSHLSStreamingState","HMSHLSVariant","HMSRtmpStreamingState","HMSServerRecordingState","HMSMessage","HMSMessageRecipient","HMSException","HMSConstants","HMSPeerUpdateOrdinals","HMSLocalAudioStats","HMSLocalVideoStats","HMSRemoteAudioStats","HMSRemoteVideoStats","HMSLayer","HMSSimulcastLayerDefinition","HMSQualityLimitationReasons","HMSTrackType","HMSHLSPlaylistType","HMSEncoder","clearData","data","roles","encodeHmsRoom","room","id","encodedObj","sessionId","undefined","metaData","name","peerCount","peers","encodeHmsPeers","browserRecordingState","encodeBrowserRecordingState","rtmpHMSRtmpStreamingState","encodeRTMPStreamingState","serverRecordingState","encodeServerRecordingState","hlsStreamingState","encodeHLSStreamingState","hlsRecordingState","encodeHLSRecordingState","localPeer","encodeHmsLocalPeer","encodedPeers","map","peer","push","encodeHmsPeer","peerID","encodeHmsPeerUpdate","hmsPeerUpdateOrdinal","get","encodeHmsAudioTrack","track","trackId","source","trackDescription","isMute","type","encodeHmsVideoTrack","isDegraded","encodeHmsAuxiliaryTracks","tracks","auxiliaryTracks","encodeHmsTrack","_peer$localAudioTrack","_peer$localAudioTrack2","_peer$localAudioTrack3","_peer$localAudioTrack4","_peer$localAudioTrack5","_peer$localAudioTrack6","_peer$localAudioTrack7","_peer$localAudioTrack8","_peer$localVideoTrack","_peer$localVideoTrack2","_peer$localVideoTrack3","_peer$localVideoTrack4","_peer$localVideoTrack5","_peer$localVideoTrack6","_peer$localVideoTrack7","_peer$localVideoTrack8","localAudioTrackData","settings","encodeHmsAudioTrackSettings","localVideoTrackData","encodeHmsVideoTrackSettings","useHardwareEchoCancellation","useHardwareAcousticEchoCanceler","initialState","audioMode","forceSoftwareDecoder","simulcastSettings","cameraFacing","disableAutoResize","encodeHmsVideoResolution","resolution","height","width","encodeHmsLocalAudioTrack","encodeHmsLocalVideoTrack","encodeHmsRemotePeers","hmsPeers","encodedPeer","encodeHmsRemotePeer","_peer$remoteAudioTrac","_peer$remoteAudioTrac2","_peer$remoteAudioTrac3","_peer$remoteAudioTrac4","_peer$remoteAudioTrac5","_peer$remoteAudioTrac6","_peer$remoteVideoTrac","_peer$remoteVideoTrac2","_peer$remoteVideoTrac3","_peer$remoteVideoTrac4","_peer$remoteVideoTrac5","_peer$remoteVideoTrac6","remoteAudioTrackData","playbackAllowed","remoteVideoTrackData","encodeHmsRemoteAudioTrack","encodeHmsRemoteVideoTrack","encodeHmsPreviewTracks","previewTracks","encodeHmsPreviewForRoleTracks","VIDEO","encodeHmsRoles","encodedRoles","item","encodeHmsRole","role","_cachedRole$publishSe","rolesCache","cachedRole","publishSettings","allowed","_hmsRole$publishSetti","hmsRole","restrictData","DEFAULT_SDK_ID","roleName","encodeHmsRoleChangeRequest","encodedRoleChangeRequest","requestedBy","suggestedRole","encodeHmsChangeTrackStateRequest","encodedChangeTrackStateRequest","trackType","mute","encodeRTCStats","video","encodeRTCStatsUnit","audio","combined","bitrateReceived","bitrateSent","bytesReceived","bytesSent","packetsLost","packetsReceived","roundTripTime","encodeHmsSpeakers","encodedSpeakers","encodeHmsSpeaker","level","initialising","running","startedAt","encodeDate","stoppedAt","error","state","dateData","dateNum","parseInt","isNaN","Date","variants","Array","isArray","encodeHLSVariants","variant","hlsStreamUrl","meetingUrl","metadata","playlistType","getHLSVariantPlaylistType","toUpperCase","DVR","noDVR","encodeHMSNetworkQuality","downlinkQuality","encodeHMSMessage","message","messageId","time","sender","recipient","encodeHMSMessageRecipient","recipientType","recipientPeer","recipientRoles","encodeHMSException","_data$error","_data$error2","_data$error3","_data$error4","_data$error5","_data$error6","_data$error7","code","description","action","isTerminal","canRetry","encodeHMSLocalAudioStats","bitrate","encodeHMSLocalVideoStats","frameRate","layer","qualityLimitationReasons","encodeHMSQualityLimitationReasons","encodeHMSRemoteAudioStats","jitter","encodeHMSRemoteVideoStats","encodeHMSSimulcastLayerDefinition","sld","reason","bandwidth","cpu","none","other","qualityLimitationResolutionChanges","transformHMSHLSCueEventData","startDate","endDate","transformed","_defineProperty"],"sources":["HMSEncoder.ts"],"sourcesContent":["import HMSManager from '../modules/HMSManagerModule';\n\nimport { HMSTrack } from './HMSTrack';\nimport { HMSAudioTrack } from './HMSAudioTrack';\nimport { HMSVideoTrack } from './HMSVideoTrack';\nimport { HMSRoom } from './HMSRoom';\nimport { HMSPeer } from './HMSPeer';\nimport { HMSLocalPeer } from './HMSLocalPeer';\nimport { HMSRemotePeer } from './HMSRemotePeer';\nimport { HMSAudioTrackSettings } from './HMSAudioTrackSettings';\nimport { HMSVideoTrackSettings } from './HMSVideoTrackSettings';\nimport { HMSLocalVideoTrack } from './HMSLocalVideoTrack';\nimport { HMSLocalAudioTrack } from './HMSLocalAudioTrack';\nimport { HMSRole } from './HMSRole';\nimport { HMSRoleChangeRequest } from './HMSRoleChangeRequest';\nimport { HMSChangeTrackStateRequest } from './HMSChangeTrackStateRequest';\nimport { HMSVideoResolution } from './HMSVideoResolution';\nimport { HMSRTCStats } from './HMSRTCStats';\nimport { HMSRTCStatsReport } from './HMSRTCStatsReport';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\nimport { HMSSpeaker } from './HMSSpeaker';\nimport { HMSHLSRecordingState } from './HMSHLSRecordingState';\nimport { HMSNetworkQuality } from './HMSNetworkQuality';\nimport { HMSBrowserRecordingState } from './HMSBrowserRecordingState';\nimport { HMSHLSStreamingState } from './HMSHLSStreamingState';\nimport { HMSHLSVariant } from './HMSHLSVariant';\nimport { HMSRtmpStreamingState } from './HMSRtmpStreamingState';\nimport { HMSServerRecordingState } from './HMSServerRecordingState';\nimport { HMSMessage } from './HMSMessage';\nimport { HMSMessageRecipient } from './HMSMessageRecipient';\nimport { HMSException } from './HMSException';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSPeerUpdateOrdinals } from './HMSPeerUpdate';\nimport { HMSLocalAudioStats } from './HMSLocalAudioStats';\nimport { HMSLocalVideoStats } from './HMSLocalVideoStats';\nimport { HMSRemoteAudioStats } from './HMSRemoteAudioStats';\nimport { HMSRemoteVideoStats } from './HMSRemoteVideoStats';\nimport { HMSLayer } from './HMSLayer';\nimport { HMSSimulcastLayerDefinition } from './HMSSimulcastLayerDefinition';\nimport { HMSQualityLimitationReasons } from './HMSQualityLimitationReasons';\nimport { HMSTrackType } from './HMSTrackType';\nimport { HMSHLSPlaylistType } from './HMSHLSPlaylistType';\n\ninterface InitialData {\n roles: Record<string, HMSRole>;\n}\n\nexport class HMSEncoder {\n private static data: InitialData = { roles: {} };\n\n static clearData() {\n this.data = { roles: {} };\n }\n\n static encodeHmsRoom(room: any, id: string) {\n const encodedObj = {\n id: room?.id,\n sessionId: room?.sessionId || undefined,\n metaData: room?.metaData,\n name: room?.name,\n peerCount: room?.peerCount,\n peers: HMSEncoder.encodeHmsPeers(room?.peers),\n browserRecordingState: HMSEncoder.encodeBrowserRecordingState(\n room?.browserRecordingState\n ),\n rtmpHMSRtmpStreamingState: HMSEncoder.encodeRTMPStreamingState(\n room?.rtmpHMSRtmpStreamingState\n ),\n serverRecordingState: HMSEncoder.encodeServerRecordingState(\n room?.serverRecordingState\n ),\n hlsStreamingState: HMSEncoder.encodeHLSStreamingState(\n room?.hlsStreamingState\n ),\n hlsRecordingState: HMSEncoder.encodeHLSRecordingState(\n room?.hlsRecordingState\n ),\n localPeer: HMSEncoder.encodeHmsLocalPeer(room?.localPeer, id),\n // startedAt: HMSEncoder.encodeDate(room?.startedAt),\n };\n\n return new HMSRoom(encodedObj);\n }\n\n static encodeHmsPeers(peers: any) {\n const encodedPeers: HMSPeer[] = [];\n peers?.map((peer: any) => {\n encodedPeers.push(HMSEncoder.encodeHmsPeer(peer));\n });\n\n return encodedPeers;\n }\n\n static encodeHmsPeer(peer: any) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n };\n\n return new HMSPeer(encodedObj);\n }\n\n static encodeHmsPeerUpdate(hmsPeerUpdateOrdinal: string) {\n return HMSPeerUpdateOrdinals.get(hmsPeerUpdateOrdinal);\n }\n\n static encodeHmsAudioTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSAudioTrack(encodedObj);\n }\n\n static encodeHmsVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n isDegraded: track?.isDegraded,\n type: track?.type,\n };\n\n return new HMSVideoTrack(encodedObj);\n }\n\n static encodeHmsAuxiliaryTracks(tracks: any, id: string) {\n const auxiliaryTracks: HMSTrack[] = [];\n tracks?.map((track: any) => {\n auxiliaryTracks.push(HMSEncoder.encodeHmsTrack(track, id));\n });\n return auxiliaryTracks;\n }\n\n static encodeHmsTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSTrack(encodedObj);\n }\n\n static encodeHmsLocalPeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n localAudioTrackData: peer?.localAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localAudioTrackData?.trackId,\n source: peer?.localAudioTrackData?.source,\n trackDescription: peer?.localAudioTrackData?.trackDescription,\n isMute: peer?.localAudioTrackData?.isMute,\n settings: peer?.localAudioTrackData?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(\n peer?.localAudioTrackData?.settings\n )\n : undefined,\n type: peer?.localAudioTrackData?.type,\n }\n : undefined,\n localVideoTrackData: peer?.localVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localVideoTrackData?.trackId,\n source: peer?.localVideoTrackData?.source,\n trackDescription: peer?.localVideoTrackData?.trackDescription,\n isMute: peer?.localVideoTrackData?.isMute,\n settings: peer?.localVideoTrackData?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(\n peer?.localVideoTrackData?.settings\n )\n : undefined,\n type: peer?.localVideoTrackData?.type,\n }\n : undefined,\n };\n\n return new HMSLocalPeer(encodedObj);\n }\n\n static encodeHmsAudioTrackSettings(settings: any) {\n const encodedObj = {\n useHardwareEchoCancellation: settings?.useHardwareAcousticEchoCanceler,\n initialState: settings?.initialState,\n audioMode: settings?.audioMode,\n };\n\n return new HMSAudioTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoTrackSettings(settings: any) {\n const encodedObj = {\n initialState: settings?.initialState,\n forceSoftwareDecoder: settings?.forceSoftwareDecoder,\n simulcastSettings: settings?.simulcastSettings,\n cameraFacing: settings?.cameraFacing,\n disableAutoResize: settings?.disableAutoResize,\n };\n\n return new HMSVideoTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoResolution(resolution: any) {\n const encodedObj = {\n height: resolution?.height,\n width: resolution?.width,\n };\n\n return new HMSVideoResolution(encodedObj);\n }\n\n static encodeHmsLocalAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalAudioTrack(encodedObj);\n }\n\n static encodeHmsLocalVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalVideoTrack(encodedObj);\n }\n\n static encodeHmsRemotePeers(peers: any, id: string) {\n const hmsPeers: HMSRemotePeer[] = [];\n\n peers.map((peer: any) => {\n const encodedPeer = HMSEncoder.encodeHmsRemotePeer(peer, id);\n\n hmsPeers.push(encodedPeer);\n });\n\n return hmsPeers;\n }\n\n static encodeHmsRemotePeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n remoteAudioTrackData: peer?.remoteAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteAudioTrackData?.trackId,\n source: peer?.remoteAudioTrackData?.source,\n trackDescription: peer?.remoteAudioTrackData?.trackDescription,\n isMute: peer?.remoteAudioTrackData?.isMute,\n playbackAllowed: peer?.remoteAudioTrackData?.playbackAllowed,\n }\n : undefined,\n remoteVideoTrackData: peer?.remoteVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteVideoTrackData?.trackId,\n source: peer?.remoteVideoTrackData?.source,\n trackDescription: peer?.remoteVideoTrackData?.trackDescription,\n isMute: peer?.remoteVideoTrackData?.isMute,\n playbackAllowed: peer?.remoteVideoTrackData?.playbackAllowed,\n }\n : undefined,\n };\n\n return new HMSRemotePeer(encodedObj);\n }\n\n static encodeHmsRemoteAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteAudioTrack(encodedObj);\n }\n\n static encodeHmsRemoteVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteVideoTrack(encodedObj);\n }\n\n static encodeHmsPreviewTracks(previewTracks: any[], id: string) {\n return previewTracks?.map((track) => {\n return this.encodeHmsTrack(track, id);\n });\n }\n\n static encodeHmsPreviewForRoleTracks(previewTracks: any[], id: string) {\n return previewTracks?.map((track) => {\n return track.type === HMSTrackType.VIDEO\n ? this.encodeHmsLocalVideoTrack(track, id)\n : this.encodeHmsLocalAudioTrack(track, id);\n });\n }\n\n static encodeHmsRoles(roles: any[]) {\n const encodedRoles: HMSRole[] = [];\n\n roles?.map((item: any) => {\n encodedRoles.push(HMSEncoder.encodeHmsRole(item));\n });\n\n return encodedRoles;\n }\n\n static encodeHmsRole(role: any): HMSRole {\n if (!role) {\n return new HMSRole(role);\n }\n\n const rolesCache = this.data.roles;\n\n const cachedRole = rolesCache[role.name];\n\n // create new HMSRole instance, if cached role does not exist OR `role.publishSettings?.allowed` does not exist\n if (!cachedRole || !cachedRole.publishSettings?.allowed) {\n // Creating HMSRole object with data\n const hmsRole = new HMSRole(role);\n\n // saving the created HMSRole object into cache\n rolesCache[role.name] = hmsRole;\n\n // If the created HMSRole object is complete,\n // sending notification to Native Side to stop sending data for this role\n if (hmsRole.publishSettings?.allowed) {\n HMSManager.restrictData({\n id: HMSConstants.DEFAULT_SDK_ID,\n roleName: hmsRole.name,\n });\n }\n }\n\n return rolesCache[role.name]!;\n }\n\n static encodeHmsRoleChangeRequest(data: any) {\n const encodedRoleChangeRequest = {\n requestedBy: data.requestedBy\n ? HMSEncoder.encodeHmsPeer(data.requestedBy)\n : undefined,\n suggestedRole: HMSEncoder.encodeHmsRole(data.suggestedRole),\n };\n\n return new HMSRoleChangeRequest(encodedRoleChangeRequest);\n }\n\n static encodeHmsChangeTrackStateRequest(data: HMSChangeTrackStateRequest) {\n const encodedChangeTrackStateRequest = {\n requestedBy: data?.requestedBy\n ? HMSEncoder.encodeHmsPeer(data?.requestedBy)\n : undefined,\n trackType: data.trackType,\n mute: data.mute,\n };\n\n return new HMSChangeTrackStateRequest(encodedChangeTrackStateRequest);\n }\n\n static encodeRTCStats(data: any) {\n let video = this.encodeRTCStatsUnit(data?.video);\n let audio = this.encodeRTCStatsUnit(data?.audio);\n let combined = this.encodeRTCStatsUnit(data?.combined);\n\n return new HMSRTCStatsReport({ video, audio, combined });\n }\n\n static encodeRTCStatsUnit(data: any) {\n const [\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n ] = data;\n\n return new HMSRTCStats({\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n });\n }\n\n static encodeHmsSpeakers(data: any, id: string) {\n let encodedSpeakers: Array<HMSSpeaker> = [];\n\n data?.map((item: any) => {\n encodedSpeakers.push(HMSEncoder.encodeHmsSpeaker(item, id));\n });\n\n return encodedSpeakers;\n }\n\n static encodeHmsSpeaker(data: any, id: string) {\n return new HMSSpeaker({\n level: data?.level,\n peer: HMSEncoder.encodeHmsPeer(data?.peer),\n track: HMSEncoder.encodeHmsTrack(data?.track, id),\n });\n }\n\n static encodeBrowserRecordingState(data: any) {\n return new HMSBrowserRecordingState({\n initialising: data?.initialising || false,\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n stoppedAt: HMSEncoder.encodeDate(data?.stoppedAt),\n error: data?.error || undefined,\n state: data?.state,\n });\n }\n\n static encodeServerRecordingState(data: any) {\n return new HMSServerRecordingState({\n running: data?.running || false,\n error: data?.error || undefined,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n state: data?.state,\n });\n }\n\n static encodeRTMPStreamingState(data: any) {\n return new HMSRtmpStreamingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n error: data?.error || undefined,\n state: data?.state,\n });\n }\n\n static encodeDate(dateData: any) {\n if (!dateData) {\n return undefined;\n }\n const dateNum = parseInt(dateData);\n if (isNaN(dateNum)) {\n return undefined;\n }\n return new Date(dateNum);\n }\n\n static encodeHLSStreamingState(data: any) {\n return new HMSHLSStreamingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n error: data?.error || undefined,\n state: data?.state,\n variants: Array.isArray(data?.variants)\n ? this.encodeHLSVariants(data?.variants)\n : undefined,\n });\n }\n\n static encodeHLSRecordingState(data: any) {\n if (data) {\n return new HMSHLSRecordingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n error: data?.error || undefined,\n state: data?.state,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHLSVariants(data: any) {\n let variants: HMSHLSVariant[] = [];\n\n data?.map((item: any) => {\n let variant = new HMSHLSVariant({\n hlsStreamUrl: item.hlsStreamUrl,\n meetingUrl: item.meetingUrl,\n metadata: item?.metaData ? item?.metadata : undefined,\n startedAt: HMSEncoder.encodeDate(item?.startedAt),\n playlistType: item?.playlistType\n ? this.getHLSVariantPlaylistType(item.playlistType.toUpperCase())\n : undefined,\n });\n variants.push(variant);\n });\n\n return variants;\n }\n\n static getHLSVariantPlaylistType(type: String) {\n switch (type) {\n case 'DVR':\n return HMSHLSPlaylistType.DVR;\n default:\n return HMSHLSPlaylistType.noDVR;\n }\n }\n\n static encodeHMSNetworkQuality(data: any) {\n if (data) {\n return new HMSNetworkQuality({\n downlinkQuality: data?.downlinkQuality,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessage(data: any) {\n if (data) {\n return new HMSMessage({\n message: data?.message,\n messageId: data?.messageId,\n type: data?.type,\n time: new Date(parseInt(data?.time)),\n sender: this.encodeHmsPeer(data?.sender),\n recipient: this.encodeHMSMessageRecipient(data?.recipient),\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessageRecipient(data: any) {\n return new HMSMessageRecipient({\n recipientType: data?.recipientType,\n recipientPeer: data?.recipientPeer\n ? this.encodeHmsPeer(data.recipientPeer)\n : undefined,\n recipientRoles: Array.isArray(data?.recipientRoles)\n ? this.encodeHmsRoles(data.recipientRoles)\n : [],\n });\n }\n\n static encodeHMSException(data: any) {\n return new HMSException({\n code: data?.error?.code,\n description: data?.error?.description,\n message: data?.error?.message,\n name: data?.error?.name,\n action: data?.error?.action,\n isTerminal: data?.error?.isTerminal,\n canRetry: data?.error?.canRetry,\n });\n }\n\n static encodeHMSLocalAudioStats(data: any) {\n const [bitrate, bytesSent, roundTripTime] = data;\n\n return new HMSLocalAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n });\n }\n\n static encodeHMSLocalVideoStats(data: any[]) {\n return data.map((item: any) => {\n const [\n bitrate,\n bytesSent,\n roundTripTime,\n frameRate,\n resolution,\n layer,\n qualityLimitationReasons,\n ] = item;\n\n return new HMSLocalVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n layer: layer ? layer : undefined,\n qualityLimitationReasons: qualityLimitationReasons\n ? this.encodeHMSQualityLimitationReasons(qualityLimitationReasons)\n : undefined,\n });\n });\n }\n\n static encodeHMSRemoteAudioStats(data: any) {\n const [bitrate, bytesReceived, jitter, packetsLost, packetsReceived] = data;\n\n return new HMSRemoteAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n });\n }\n\n static encodeHMSRemoteVideoStats(data: any) {\n const [\n bitrate,\n bytesReceived,\n frameRate,\n jitter,\n packetsLost,\n packetsReceived,\n resolution,\n ] = data;\n\n return new HMSRemoteVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n });\n }\n\n static encodeHMSSimulcastLayerDefinition(data: any[]) {\n return data.map((sld) => {\n return new HMSSimulcastLayerDefinition({\n layer: HMSLayer[sld.layer as HMSLayer], // DOUBT: This can be invalid. Should we throw error?\n resolution: this.encodeHmsVideoResolution({\n width: sld.resolution[0],\n height: sld.resolution[1],\n }),\n });\n });\n }\n\n static encodeHMSQualityLimitationReasons(data: any) {\n return new HMSQualityLimitationReasons({\n reason: data.reason,\n bandwidth: data.bandwidth,\n cpu: data.cpu,\n none: data.none,\n other: data.other,\n qualityLimitationResolutionChanges:\n data.qualityLimitationResolutionChanges,\n });\n }\n\n static transformHMSHLSCueEventData<C extends object, T>(data: C): T {\n if ('startDate' in data) {\n data.startDate = this.encodeDate(data.startDate);\n }\n\n if ('endDate' in data && data.endDate) {\n data.endDate = this.encodeDate(data.endDate);\n }\n\n const transformed = data as unknown as T;\n\n return transformed;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HMSHLSPlaylistType"],"sources":["HMSHLSPlaylistType.ts"],"sourcesContent":["export enum HMSHLSPlaylistType {\n DVR = 'DVR',\n noDVR = 'noDVR',\n}\n"],"mappings":"AAAA,WAAYA,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA","ignoreList":[]}
|
|
@@ -7,10 +7,12 @@ export class HMSHLSVariant {
|
|
|
7
7
|
_defineProperty(this, "meetingUrl", void 0);
|
|
8
8
|
_defineProperty(this, "metadata", void 0);
|
|
9
9
|
_defineProperty(this, "startedAt", void 0);
|
|
10
|
+
_defineProperty(this, "playlistType", void 0);
|
|
10
11
|
this.hlsStreamUrl = params.hlsStreamUrl;
|
|
11
12
|
this.meetingUrl = params.meetingUrl;
|
|
12
13
|
this.metadata = params.metadata;
|
|
13
14
|
this.startedAt = params.startedAt;
|
|
15
|
+
this.playlistType = params.playlistType;
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
18
|
//# sourceMappingURL=HMSHLSVariant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HMSHLSVariant","constructor","params","_defineProperty","hlsStreamUrl","meetingUrl","metadata","startedAt"],"sources":["HMSHLSVariant.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"names":["HMSHLSVariant","constructor","params","_defineProperty","hlsStreamUrl","meetingUrl","metadata","startedAt","playlistType"],"sources":["HMSHLSVariant.ts"],"sourcesContent":["import type { HMSHLSPlaylistType } from './HMSHLSPlaylistType';\n\nexport class HMSHLSVariant {\n hlsStreamUrl?: string;\n meetingUrl?: string;\n metadata?: string;\n startedAt?: Date;\n playlistType?: HMSHLSPlaylistType;\n\n constructor(params: {\n hlsStreamUrl?: string;\n meetingUrl?: string;\n metadata?: string;\n startedAt?: Date;\n playlistType?: HMSHLSPlaylistType;\n }) {\n this.hlsStreamUrl = params.hlsStreamUrl;\n this.meetingUrl = params.meetingUrl;\n this.metadata = params.metadata;\n this.startedAt = params.startedAt;\n this.playlistType = params.playlistType;\n }\n}\n"],"mappings":";;;AAEA,OAAO,MAAMA,aAAa,CAAC;EAOzBC,WAAWA,CAACC,MAMX,EAAE;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACD,IAAI,CAACC,YAAY,GAAGF,MAAM,CAACE,YAAY;IACvC,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAI,CAACC,QAAQ,GAAGJ,MAAM,CAACI,QAAQ;IAC/B,IAAI,CAACC,SAAS,GAAGL,MAAM,CAACK,SAAS;IACjC,IAAI,CAACC,YAAY,GAAGN,MAAM,CAACM,YAAY;EACzC;AACF","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ import { logger } from './HMSLogger';
|
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Class representing an HMS Noise Cancellation Plugin.
|
|
10
|
+
* Checkout {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/extend-capabilities/noise-cancellation} for more info
|
|
10
11
|
*/
|
|
11
12
|
export class HMSNoiseCancellationPlugin {
|
|
12
13
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HMSManagerModule","HMSConstants","logger","HMSNoiseCancellationPlugin","constructor","config","_defineProperty","data","modelName","HMSNoiseCancellationModels","SmallFullBand","initialState","HMSNoiseCancellationInitialState","Disabled","isNoiseCancellationAvailable","id","DEFAULT_SDK_ID","verbose","isNoiseCancellationPluginAvailable","e","error","Promise","reject","enable","enableNoiseCancellationPlugin","disable","disableNoiseCancellationPlugin","isEnabled","isNoiseCancellationPluginEnabled"],"sources":["HMSNoiseCancellationPlugin.ts"],"sourcesContent":["import HMSManagerModule from '../modules/HMSManagerModule';\nimport { HMSConstants } from './HMSConstants';\nimport { logger } from './HMSLogger';\n\n/**\n * Class representing an HMS Noise Cancellation Plugin.\n */\nexport class HMSNoiseCancellationPlugin {\n modelName: HMSNoiseCancellationModels;\n initialState: HMSNoiseCancellationInitialState;\n\n /**\n * Creates an instance of HMSNoiseCancellationPlugin.\n * @param {Object} [config] - The configuration options.\n * @param {HMSNoiseCancellationModels} [config.modelName] - The model name for noise cancellation.\n * @param {HMSNoiseCancellationInitialState} [config.initialState] - The initial state for noise cancellation.\n */\n constructor(config?: {\n modelName: HMSNoiseCancellationModels;\n initialState: HMSNoiseCancellationInitialState;\n }) {\n const data = {\n modelName: HMSNoiseCancellationModels.SmallFullBand,\n initialState: HMSNoiseCancellationInitialState.Disabled,\n ...config,\n };\n this.modelName = data.modelName;\n this.initialState = data.initialState;\n }\n\n /**\n * To make noise cancellation work your room needs to have noise cancellation feature enabled.\n *\n * Gets whether noise cancellation is available for your room.\n * @returns {boolean} True if noise cancellation is available, false otherwise.\n *\n * Note: You can call this API to check the state of noise cancellation only after successfully joining the room.\n */\n async isNoiseCancellationAvailable(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose(\n '#Function HMSNoiseCancellationPlugin#isNoiseCancellationAvailable',\n data\n );\n\n try {\n return HMSManagerModule.isNoiseCancellationPluginAvailable(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#isNoiseCancellationAvailable ',\n e\n );\n return Promise.reject(e);\n }\n }\n\n /**\n * Enables noise cancellation.\n * @returns {Promise<boolean>} A promise that resolves to true if noise cancellation is enabled, otherwise, rejected promise is returned\n */\n async enable(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose('#Function HMSNoiseCancellationPlugin#enable', data);\n\n try {\n return HMSManagerModule.enableNoiseCancellationPlugin(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#enable ',\n e\n );\n return Promise.reject(e);\n }\n }\n\n /**\n * Disables noise cancellation.\n * @returns {Promise<boolean>} A promise that resolves to true if noise cancellation is disabled, otherwise, rejected promise is returned\n */\n async disable(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose('#Function HMSNoiseCancellationPlugin#disable', data);\n\n try {\n return HMSManagerModule.disableNoiseCancellationPlugin(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#disable ',\n e\n );\n return Promise.reject(e);\n }\n }\n\n /**\n * Checks if noise cancellation is enabled.\n * @returns {boolean} true if noise cancellation is enabled, false otherwise.\n */\n async isEnabled(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose('#Function HMSNoiseCancellationPlugin#isEnabled', data);\n\n try {\n return HMSManagerModule.isNoiseCancellationPluginEnabled(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#isEnabled ',\n e\n );\n return Promise.reject(e);\n }\n }\n}\n\n/**\n * Enum for HMS Noise Cancellation Models.\n * @enum {String}\n */\nexport enum HMSNoiseCancellationModels {\n SmallFullBand = 'SMALL_FULL_BAND',\n}\n\n/**\n * Enum for HMS Noise Cancellation Initial State.\n * @enum {String}\n */\nexport enum HMSNoiseCancellationInitialState {\n Enabled = 'ENABLED',\n Disabled = 'DISABLED',\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["HMSManagerModule","HMSConstants","logger","HMSNoiseCancellationPlugin","constructor","config","_defineProperty","data","modelName","HMSNoiseCancellationModels","SmallFullBand","initialState","HMSNoiseCancellationInitialState","Disabled","isNoiseCancellationAvailable","id","DEFAULT_SDK_ID","verbose","isNoiseCancellationPluginAvailable","e","error","Promise","reject","enable","enableNoiseCancellationPlugin","disable","disableNoiseCancellationPlugin","isEnabled","isNoiseCancellationPluginEnabled"],"sources":["HMSNoiseCancellationPlugin.ts"],"sourcesContent":["import HMSManagerModule from '../modules/HMSManagerModule';\nimport { HMSConstants } from './HMSConstants';\nimport { logger } from './HMSLogger';\n\n/**\n * Class representing an HMS Noise Cancellation Plugin.\n * Checkout {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/extend-capabilities/noise-cancellation} for more info\n */\nexport class HMSNoiseCancellationPlugin {\n modelName: HMSNoiseCancellationModels;\n initialState: HMSNoiseCancellationInitialState;\n\n /**\n * Creates an instance of HMSNoiseCancellationPlugin.\n * @param {Object} [config] - The configuration options.\n * @param {HMSNoiseCancellationModels} [config.modelName] - The model name for noise cancellation.\n * @param {HMSNoiseCancellationInitialState} [config.initialState] - The initial state for noise cancellation.\n */\n constructor(config?: {\n modelName: HMSNoiseCancellationModels;\n initialState: HMSNoiseCancellationInitialState;\n }) {\n const data = {\n modelName: HMSNoiseCancellationModels.SmallFullBand,\n initialState: HMSNoiseCancellationInitialState.Disabled,\n ...config,\n };\n this.modelName = data.modelName;\n this.initialState = data.initialState;\n }\n\n /**\n * To make noise cancellation work your room needs to have noise cancellation feature enabled.\n *\n * Gets whether noise cancellation is available for your room.\n * @returns {boolean} True if noise cancellation is available, false otherwise.\n *\n * Note: You can call this API to check the state of noise cancellation only after successfully joining the room.\n */\n async isNoiseCancellationAvailable(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose(\n '#Function HMSNoiseCancellationPlugin#isNoiseCancellationAvailable',\n data\n );\n\n try {\n return HMSManagerModule.isNoiseCancellationPluginAvailable(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#isNoiseCancellationAvailable ',\n e\n );\n return Promise.reject(e);\n }\n }\n\n /**\n * Enables noise cancellation.\n * @returns {Promise<boolean>} A promise that resolves to true if noise cancellation is enabled, otherwise, rejected promise is returned\n */\n async enable(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose('#Function HMSNoiseCancellationPlugin#enable', data);\n\n try {\n return HMSManagerModule.enableNoiseCancellationPlugin(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#enable ',\n e\n );\n return Promise.reject(e);\n }\n }\n\n /**\n * Disables noise cancellation.\n * @returns {Promise<boolean>} A promise that resolves to true if noise cancellation is disabled, otherwise, rejected promise is returned\n */\n async disable(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose('#Function HMSNoiseCancellationPlugin#disable', data);\n\n try {\n return HMSManagerModule.disableNoiseCancellationPlugin(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#disable ',\n e\n );\n return Promise.reject(e);\n }\n }\n\n /**\n * Checks if noise cancellation is enabled.\n * @returns {boolean} true if noise cancellation is enabled, false otherwise.\n */\n async isEnabled(): Promise<boolean> {\n const data = { id: HMSConstants.DEFAULT_SDK_ID };\n logger?.verbose('#Function HMSNoiseCancellationPlugin#isEnabled', data);\n\n try {\n return HMSManagerModule.isNoiseCancellationPluginEnabled(data);\n } catch (e) {\n logger?.error(\n '#Error in #Function HMSNoiseCancellationPlugin#isEnabled ',\n e\n );\n return Promise.reject(e);\n }\n }\n}\n\n/**\n * Enum for HMS Noise Cancellation Models.\n * @enum {String}\n */\nexport enum HMSNoiseCancellationModels {\n SmallFullBand = 'SMALL_FULL_BAND',\n}\n\n/**\n * Enum for HMS Noise Cancellation Initial State.\n * @enum {String}\n */\nexport enum HMSNoiseCancellationInitialState {\n Enabled = 'ENABLED',\n Disabled = 'DISABLED',\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import React, { useImperativeHandle, useRef } from 'react';
|
|
2
|
-
import { View, StyleSheet, UIManager, findNodeHandle } from 'react-native';
|
|
3
|
-
import { setHMSHLSPlayerCue, setHMSHLSPlayerPlaybackError, setHMSHLSPlayerPlaybackState, setHMSHLSPlayerResolution, setHMSHLSPlayerStats, setHMSHLSPlayerStatsError } from './hooks';
|
|
1
|
+
import React, { useEffect, useImperativeHandle, useMemo, useRef } from 'react';
|
|
2
|
+
import { View, StyleSheet, UIManager, findNodeHandle, Platform } from 'react-native';
|
|
3
|
+
import { setHMSHLSPlayerCue, setHMSHLSPlayerPlaybackError, setHMSHLSPlayerPlaybackState, setHMSHLSPlayerResolution, setHMSHLSPlayerStats, setHMSHLSPlayerStatsError, setHMSHLSPlayerSubtitles } from './hooks';
|
|
4
4
|
import { RCTHMSHLSPlayer, RCTHMSHLSPlayerViewManagerConfig } from './RCTHMSHLSPlayer';
|
|
5
5
|
import { HMSHLSPlayerPlaybackEventTypes, HMSHLSPlayerStatsEventTypes } from '../../types';
|
|
6
6
|
import { HMSEncoder } from '../../classes/HMSEncoder';
|
|
7
|
+
import { useHMSStore } from '../../stores/hms-store';
|
|
8
|
+
import { useHMSHLSPlayerStatsStore } from '../../stores/hls-player-stats-store';
|
|
7
9
|
const _HMSHLSPlayer = ({
|
|
8
10
|
url = '',
|
|
9
11
|
style,
|
|
@@ -12,6 +14,8 @@ const _HMSHLSPlayer = ({
|
|
|
12
14
|
enableControls = false
|
|
13
15
|
}, ref) => {
|
|
14
16
|
const hmsHlsPlayerRef = useRef(null);
|
|
17
|
+
const promiseAndIdsMap = useMemo(() => new Map(), []);
|
|
18
|
+
const currentRequestId = useRef(1);
|
|
15
19
|
useImperativeHandle(ref, () => ({
|
|
16
20
|
play: url => {
|
|
17
21
|
if (hmsHlsPlayerRef.current && RCTHMSHLSPlayerViewManagerConfig.Commands.play) {
|
|
@@ -61,8 +65,63 @@ const _HMSHLSPlayer = ({
|
|
|
61
65
|
if (hmsHlsPlayerRef.current && RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume) {
|
|
62
66
|
UIManager.dispatchViewManagerCommand(findNodeHandle(hmsHlsPlayerRef.current), RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume, [level]);
|
|
63
67
|
}
|
|
68
|
+
},
|
|
69
|
+
isClosedCaptionSupported: () => {
|
|
70
|
+
if (hmsHlsPlayerRef.current && RCTHMSHLSPlayerViewManagerConfig.Commands.areClosedCaptionSupported) {
|
|
71
|
+
const requestId = currentRequestId.current++;
|
|
72
|
+
const promise = new Promise((resolve, reject) => {
|
|
73
|
+
promiseAndIdsMap.set(requestId, {
|
|
74
|
+
resolve,
|
|
75
|
+
reject
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
UIManager.dispatchViewManagerCommand(findNodeHandle(hmsHlsPlayerRef.current), RCTHMSHLSPlayerViewManagerConfig.Commands.areClosedCaptionSupported, [requestId]);
|
|
79
|
+
return promise;
|
|
80
|
+
}
|
|
81
|
+
return Promise.resolve(false);
|
|
82
|
+
},
|
|
83
|
+
isClosedCaptionEnabled: () => {
|
|
84
|
+
if (hmsHlsPlayerRef.current && RCTHMSHLSPlayerViewManagerConfig.Commands.isClosedCaptionEnabled) {
|
|
85
|
+
const requestId = currentRequestId.current++;
|
|
86
|
+
const promise = new Promise((resolve, reject) => {
|
|
87
|
+
promiseAndIdsMap.set(requestId, {
|
|
88
|
+
resolve,
|
|
89
|
+
reject
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
UIManager.dispatchViewManagerCommand(findNodeHandle(hmsHlsPlayerRef.current), RCTHMSHLSPlayerViewManagerConfig.Commands.isClosedCaptionEnabled, [requestId]);
|
|
93
|
+
return promise;
|
|
94
|
+
}
|
|
95
|
+
return Promise.resolve(false);
|
|
96
|
+
},
|
|
97
|
+
enableClosedCaption: () => {
|
|
98
|
+
if (hmsHlsPlayerRef.current && RCTHMSHLSPlayerViewManagerConfig.Commands.enableClosedCaption) {
|
|
99
|
+
UIManager.dispatchViewManagerCommand(findNodeHandle(hmsHlsPlayerRef.current), RCTHMSHLSPlayerViewManagerConfig.Commands.enableClosedCaption, undefined);
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
disableClosedCaption: () => {
|
|
103
|
+
if (hmsHlsPlayerRef.current && RCTHMSHLSPlayerViewManagerConfig.Commands.disableClosedCaption) {
|
|
104
|
+
UIManager.dispatchViewManagerCommand(findNodeHandle(hmsHlsPlayerRef.current), RCTHMSHLSPlayerViewManagerConfig.Commands.disableClosedCaption, undefined);
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
getPlayerDurationDetails: () => {
|
|
108
|
+
if (hmsHlsPlayerRef.current && RCTHMSHLSPlayerViewManagerConfig.Commands.getPlayerDurationDetails) {
|
|
109
|
+
const requestId = currentRequestId.current++;
|
|
110
|
+
const promise = new Promise((resolve, reject) => {
|
|
111
|
+
promiseAndIdsMap.set(requestId, {
|
|
112
|
+
resolve,
|
|
113
|
+
reject
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
UIManager.dispatchViewManagerCommand(findNodeHandle(hmsHlsPlayerRef.current), RCTHMSHLSPlayerViewManagerConfig.Commands.getPlayerDurationDetails, [requestId]);
|
|
117
|
+
return promise;
|
|
118
|
+
}
|
|
119
|
+
return Promise.resolve({
|
|
120
|
+
streamDuration: undefined,
|
|
121
|
+
rollingWindowTime: undefined
|
|
122
|
+
});
|
|
64
123
|
}
|
|
65
|
-
}), []);
|
|
124
|
+
}), [currentRequestId, promiseAndIdsMap]);
|
|
66
125
|
|
|
67
126
|
// Handle HLS Playback events
|
|
68
127
|
const handleHLSPlaybackEvent = ({
|
|
@@ -100,6 +159,41 @@ const _HMSHLSPlayer = ({
|
|
|
100
159
|
setHMSHLSPlayerStats(data);
|
|
101
160
|
}
|
|
102
161
|
};
|
|
162
|
+
|
|
163
|
+
// Handle HLS Player Cues events (e.g. usage - Closed Captions)
|
|
164
|
+
const handleHLSPlayerCuesEvent = ({
|
|
165
|
+
nativeEvent
|
|
166
|
+
}) => {
|
|
167
|
+
const {
|
|
168
|
+
event,
|
|
169
|
+
data
|
|
170
|
+
} = nativeEvent;
|
|
171
|
+
if (event === 'ON_CLOSED_CAPTION_UPDATE') {
|
|
172
|
+
setHMSHLSPlayerSubtitles(data);
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
|
|
176
|
+
// Handle Requested data
|
|
177
|
+
const handleRequestedDataReturned = ({
|
|
178
|
+
nativeEvent
|
|
179
|
+
}) => {
|
|
180
|
+
const {
|
|
181
|
+
requestId,
|
|
182
|
+
data
|
|
183
|
+
} = nativeEvent;
|
|
184
|
+
const promiseMethods = promiseAndIdsMap.get(requestId);
|
|
185
|
+
if (!promiseMethods) {
|
|
186
|
+
console.warn('#function handleRequestedDataReturned', "Didn't found promise methods by requestId: ", requestId);
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
promiseMethods.resolve(data);
|
|
190
|
+
};
|
|
191
|
+
useEffect(() => {
|
|
192
|
+
return () => {
|
|
193
|
+
useHMSStore.getState().resetPlaybackSlice();
|
|
194
|
+
useHMSHLSPlayerStatsStore.getState().reset();
|
|
195
|
+
};
|
|
196
|
+
}, []);
|
|
103
197
|
return /*#__PURE__*/React.createElement(View, {
|
|
104
198
|
style: [styles.container, containerStyle]
|
|
105
199
|
}, /*#__PURE__*/React.createElement(View, {
|
|
@@ -111,7 +205,9 @@ const _HMSHLSPlayer = ({
|
|
|
111
205
|
enableStats: enableStats,
|
|
112
206
|
enableControls: enableControls,
|
|
113
207
|
onHmsHlsPlaybackEvent: handleHLSPlaybackEvent,
|
|
114
|
-
onHmsHlsStatsEvent: handleHLSStatsEvent
|
|
208
|
+
onHmsHlsStatsEvent: handleHLSStatsEvent,
|
|
209
|
+
onHlsPlayerCuesEvent: Platform.OS === 'android' ? handleHLSPlayerCuesEvent : undefined,
|
|
210
|
+
onDataReturned: handleRequestedDataReturned
|
|
115
211
|
})));
|
|
116
212
|
};
|
|
117
213
|
export const HMSHLSPlayer = /*#__PURE__*/React.forwardRef(_HMSHLSPlayer);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useImperativeHandle","useRef","View","StyleSheet","UIManager","findNodeHandle","setHMSHLSPlayerCue","setHMSHLSPlayerPlaybackError","setHMSHLSPlayerPlaybackState","setHMSHLSPlayerResolution","setHMSHLSPlayerStats","setHMSHLSPlayerStatsError","RCTHMSHLSPlayer","RCTHMSHLSPlayerViewManagerConfig","HMSHLSPlayerPlaybackEventTypes","HMSHLSPlayerStatsEventTypes","HMSEncoder","_HMSHLSPlayer","url","style","containerStyle","enableStats","enableControls","ref","hmsHlsPlayerRef","play","current","Commands","dispatchViewManagerCommand","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","handleHLSPlaybackEvent","nativeEvent","event","data","ON_PLAYBACK_CUE_EVENT","transformedData","transformHMSHLSCueEventData","ON_PLAYBACK_FAILURE_EVENT","error","ON_PLAYBACK_RESOLUTION_CHANGE_EVENT","state","handleHLSStatsEvent","ON_STATS_EVENT_ERROR","createElement","styles","container","playerWrapper","player","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","HMSHLSPlayer","forwardRef","create","flex","alignItems","justifyContent","backgroundColor","width","height"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef } from 'react';\nimport { View, StyleSheet, UIManager, findNodeHandle } from 'react-native';\nimport type { StyleProp, ViewStyle } from 'react-native';\n\nimport {\n setHMSHLSPlayerCue,\n setHMSHLSPlayerPlaybackError,\n setHMSHLSPlayerPlaybackState,\n setHMSHLSPlayerResolution,\n setHMSHLSPlayerStats,\n setHMSHLSPlayerStatsError,\n} from './hooks';\nimport {\n RCTHMSHLSPlayer,\n RCTHMSHLSPlayerViewManagerConfig,\n} from './RCTHMSHLSPlayer';\nimport type {\n HmsHlsPlaybackEventHandler,\n HmsHlsStatsEventHandler,\n RCTHMSHLSPlayerRef,\n} from './RCTHMSHLSPlayer';\nimport {\n HMSHLSPlayerPlaybackEventTypes,\n HMSHLSPlayerStatsEventTypes,\n} from '../../types';\nimport type { HMSHLSPlayerPlaybackCueEventData } from '../../types';\nimport { HMSEncoder } from '../../classes/HMSEncoder';\nimport type { HMSHLSPlayerPlaybackCue } from '../../stores/types';\n\nexport interface HMSHLSPlayerProps {\n url?: string;\n style?: StyleProp<ViewStyle>;\n containerStyle?: StyleProp<ViewStyle>;\n aspectRatio?: number;\n enableStats?: boolean;\n enableControls?: boolean;\n}\n\nexport interface HMSHLSPlayerRefProperties {\n play: (url?: string) => void;\n stop: () => void;\n pause: () => void;\n resume: () => void;\n seekForward: (seconds: number) => void;\n seekBackward: (seconds: number) => void;\n seekToLivePosition: () => void;\n setVolume: (level: number) => void;\n}\n\nconst _HMSHLSPlayer: React.ForwardRefRenderFunction<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n> = (\n { url = '', style, containerStyle, enableStats, enableControls = false },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n play: (url?: string) => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.play\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.play,\n url ? [url] : ['']\n );\n }\n },\n stop: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop,\n undefined\n );\n }\n },\n pause: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause,\n undefined\n );\n }\n },\n resume: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume,\n undefined\n );\n }\n },\n seekForward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward,\n [seconds]\n );\n }\n },\n seekBackward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward,\n [seconds]\n );\n }\n },\n seekToLivePosition: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition,\n undefined\n );\n }\n },\n setVolume: (level: number) => {\n if (typeof level !== 'number') {\n throw new Error(\n level ? 'level must be a `number` type' : 'level was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume,\n [level]\n );\n }\n },\n }),\n []\n );\n\n // Handle HLS Playback events\n const handleHLSPlaybackEvent: HmsHlsPlaybackEventHandler = ({\n nativeEvent,\n }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT) {\n const transformedData = HMSEncoder.transformHMSHLSCueEventData<\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackCue\n >(data);\n setHMSHLSPlayerCue(transformedData);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT\n ) {\n setHMSHLSPlayerPlaybackError(data.error);\n } else if (\n event ===\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_RESOLUTION_CHANGE_EVENT\n ) {\n setHMSHLSPlayerResolution({ ...data });\n } else {\n setHMSHLSPlayerPlaybackState(data.state);\n }\n };\n\n // Handle HLS Stats events\n const handleHLSStatsEvent: HmsHlsStatsEventHandler = ({ nativeEvent }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR) {\n setHMSHLSPlayerStatsError(data);\n } else {\n setHMSHLSPlayerStats(data);\n }\n };\n\n return (\n <View style={[styles.container, containerStyle]}>\n <View style={[styles.playerWrapper, style]}>\n <RCTHMSHLSPlayer\n ref={hmsHlsPlayerRef}\n url={url}\n style={styles.player}\n enableStats={enableStats}\n enableControls={enableControls}\n onHmsHlsPlaybackEvent={handleHLSPlaybackEvent}\n onHmsHlsStatsEvent={handleHLSStatsEvent}\n />\n </View>\n </View>\n );\n};\n\nexport const HMSHLSPlayer = React.forwardRef<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n>(_HMSHLSPlayer);\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n playerWrapper: {\n backgroundColor: '#000000',\n alignItems: 'center',\n justifyContent: 'center',\n },\n player: {\n width: '100%',\n height: '100%',\n flex: 1,\n },\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useEffect","useImperativeHandle","useMemo","useRef","View","StyleSheet","UIManager","findNodeHandle","Platform","setHMSHLSPlayerCue","setHMSHLSPlayerPlaybackError","setHMSHLSPlayerPlaybackState","setHMSHLSPlayerResolution","setHMSHLSPlayerStats","setHMSHLSPlayerStatsError","setHMSHLSPlayerSubtitles","RCTHMSHLSPlayer","RCTHMSHLSPlayerViewManagerConfig","HMSHLSPlayerPlaybackEventTypes","HMSHLSPlayerStatsEventTypes","HMSEncoder","useHMSStore","useHMSHLSPlayerStatsStore","_HMSHLSPlayer","url","style","containerStyle","enableStats","enableControls","ref","hmsHlsPlayerRef","promiseAndIdsMap","Map","currentRequestId","play","current","Commands","dispatchViewManagerCommand","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","isClosedCaptionSupported","areClosedCaptionSupported","requestId","promise","Promise","resolve","reject","set","isClosedCaptionEnabled","enableClosedCaption","disableClosedCaption","getPlayerDurationDetails","streamDuration","rollingWindowTime","handleHLSPlaybackEvent","nativeEvent","event","data","ON_PLAYBACK_CUE_EVENT","transformedData","transformHMSHLSCueEventData","ON_PLAYBACK_FAILURE_EVENT","error","ON_PLAYBACK_RESOLUTION_CHANGE_EVENT","state","handleHLSStatsEvent","ON_STATS_EVENT_ERROR","handleHLSPlayerCuesEvent","handleRequestedDataReturned","promiseMethods","get","console","warn","getState","resetPlaybackSlice","reset","createElement","styles","container","playerWrapper","player","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","onHlsPlayerCuesEvent","OS","onDataReturned","HMSHLSPlayer","forwardRef","create","flex","alignItems","justifyContent","backgroundColor","width","height"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useEffect, useImperativeHandle, useMemo, useRef } from 'react';\nimport {\n View,\n StyleSheet,\n UIManager,\n findNodeHandle,\n Platform,\n} from 'react-native';\nimport type { StyleProp, ViewStyle } from 'react-native';\n\nimport {\n setHMSHLSPlayerCue,\n setHMSHLSPlayerPlaybackError,\n setHMSHLSPlayerPlaybackState,\n setHMSHLSPlayerResolution,\n setHMSHLSPlayerStats,\n setHMSHLSPlayerStatsError,\n setHMSHLSPlayerSubtitles,\n} from './hooks';\nimport {\n RCTHMSHLSPlayer,\n RCTHMSHLSPlayerViewManagerConfig,\n} from './RCTHMSHLSPlayer';\nimport type {\n HlsSPlayerCuesEventHandler,\n HmsHlsPlaybackEventHandler,\n HmsHlsStatsEventHandler,\n RCTHMSHLSPlayerRef,\n RequestedDataEventHandler,\n} from './RCTHMSHLSPlayer';\nimport {\n HMSHLSPlayerPlaybackEventTypes,\n HMSHLSPlayerStatsEventTypes,\n} from '../../types';\nimport type {\n HLSPlayerDurationDetails,\n HMSHLSPlayerPlaybackCueEventData,\n} from '../../types';\nimport { HMSEncoder } from '../../classes/HMSEncoder';\nimport type { HMSHLSPlayerPlaybackCue } from '../../stores/types';\nimport { useHMSStore } from '../../stores/hms-store';\nimport { useHMSHLSPlayerStatsStore } from '../../stores/hls-player-stats-store';\n\nexport interface HMSHLSPlayerProps {\n url?: string;\n style?: StyleProp<ViewStyle>;\n containerStyle?: StyleProp<ViewStyle>;\n aspectRatio?: number;\n enableStats?: boolean;\n enableControls?: boolean;\n}\n\nexport interface HMSHLSPlayerRefProperties {\n play: (url?: string) => void;\n stop: () => void;\n pause: () => void;\n resume: () => void;\n seekForward: (seconds: number) => void;\n seekBackward: (seconds: number) => void;\n seekToLivePosition: () => void;\n setVolume: (level: number) => void;\n isClosedCaptionSupported: () => Promise<boolean>;\n isClosedCaptionEnabled: () => Promise<boolean>;\n enableClosedCaption: () => void;\n disableClosedCaption: () => void;\n getPlayerDurationDetails: () => Promise<HLSPlayerDurationDetails>;\n}\n\nconst _HMSHLSPlayer: React.ForwardRefRenderFunction<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n> = (\n { url = '', style, containerStyle, enableStats, enableControls = false },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\n const promiseAndIdsMap = useMemo(\n () =>\n new Map<\n number,\n { resolve(value: unknown): void; reject(reason?: any): void }\n >(),\n []\n );\n const currentRequestId = useRef(1);\n\n useImperativeHandle(\n ref,\n () => ({\n play: (url?: string) => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.play\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.play,\n url ? [url] : ['']\n );\n }\n },\n stop: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop,\n undefined\n );\n }\n },\n pause: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause,\n undefined\n );\n }\n },\n resume: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume,\n undefined\n );\n }\n },\n seekForward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward,\n [seconds]\n );\n }\n },\n seekBackward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward,\n [seconds]\n );\n }\n },\n seekToLivePosition: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition,\n undefined\n );\n }\n },\n setVolume: (level: number) => {\n if (typeof level !== 'number') {\n throw new Error(\n level ? 'level must be a `number` type' : 'level was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume,\n [level]\n );\n }\n },\n isClosedCaptionSupported: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.areClosedCaptionSupported\n ) {\n const requestId = currentRequestId.current++;\n const promise = new Promise<boolean>((resolve, reject) => {\n promiseAndIdsMap.set(requestId, { resolve, reject });\n });\n\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.areClosedCaptionSupported,\n [requestId]\n );\n return promise;\n }\n return Promise.resolve(false);\n },\n isClosedCaptionEnabled: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.isClosedCaptionEnabled\n ) {\n const requestId = currentRequestId.current++;\n const promise = new Promise<boolean>((resolve, reject) => {\n promiseAndIdsMap.set(requestId, { resolve, reject });\n });\n\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.isClosedCaptionEnabled,\n [requestId]\n );\n return promise;\n }\n return Promise.resolve(false);\n },\n enableClosedCaption: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.enableClosedCaption\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.enableClosedCaption,\n undefined\n );\n }\n },\n disableClosedCaption: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.disableClosedCaption\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.disableClosedCaption,\n undefined\n );\n }\n },\n getPlayerDurationDetails: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.getPlayerDurationDetails\n ) {\n const requestId = currentRequestId.current++;\n const promise = new Promise<HLSPlayerDurationDetails>(\n (resolve, reject) => {\n promiseAndIdsMap.set(requestId, { resolve, reject });\n }\n );\n\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.getPlayerDurationDetails,\n [requestId]\n );\n return promise;\n }\n return Promise.resolve({\n streamDuration: undefined,\n rollingWindowTime: undefined,\n });\n },\n }),\n [currentRequestId, promiseAndIdsMap]\n );\n\n // Handle HLS Playback events\n const handleHLSPlaybackEvent: HmsHlsPlaybackEventHandler = ({\n nativeEvent,\n }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT) {\n const transformedData = HMSEncoder.transformHMSHLSCueEventData<\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackCue\n >(data);\n setHMSHLSPlayerCue(transformedData);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT\n ) {\n setHMSHLSPlayerPlaybackError(data.error);\n } else if (\n event ===\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_RESOLUTION_CHANGE_EVENT\n ) {\n setHMSHLSPlayerResolution({ ...data });\n } else {\n setHMSHLSPlayerPlaybackState(data.state);\n }\n };\n\n // Handle HLS Stats events\n const handleHLSStatsEvent: HmsHlsStatsEventHandler = ({ nativeEvent }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR) {\n setHMSHLSPlayerStatsError(data);\n } else {\n setHMSHLSPlayerStats(data);\n }\n };\n\n // Handle HLS Player Cues events (e.g. usage - Closed Captions)\n const handleHLSPlayerCuesEvent: HlsSPlayerCuesEventHandler = ({\n nativeEvent,\n }) => {\n const { event, data } = nativeEvent;\n\n if (event === 'ON_CLOSED_CAPTION_UPDATE') {\n setHMSHLSPlayerSubtitles(data);\n }\n };\n\n // Handle Requested data\n const handleRequestedDataReturned: RequestedDataEventHandler = ({\n nativeEvent,\n }) => {\n const { requestId, data } = nativeEvent;\n const promiseMethods = promiseAndIdsMap.get(requestId);\n\n if (!promiseMethods) {\n console.warn(\n '#function handleRequestedDataReturned',\n \"Didn't found promise methods by requestId: \",\n requestId\n );\n return;\n }\n promiseMethods.resolve(data);\n };\n\n useEffect(() => {\n return () => {\n useHMSStore.getState().resetPlaybackSlice();\n useHMSHLSPlayerStatsStore.getState().reset();\n };\n }, []);\n\n return (\n <View style={[styles.container, containerStyle]}>\n <View style={[styles.playerWrapper, style]}>\n <RCTHMSHLSPlayer\n ref={hmsHlsPlayerRef}\n url={url}\n style={styles.player}\n enableStats={enableStats}\n enableControls={enableControls}\n onHmsHlsPlaybackEvent={handleHLSPlaybackEvent}\n onHmsHlsStatsEvent={handleHLSStatsEvent}\n onHlsPlayerCuesEvent={\n Platform.OS === 'android' ? handleHLSPlayerCuesEvent : undefined\n }\n onDataReturned={handleRequestedDataReturned}\n />\n </View>\n </View>\n );\n};\n\nexport const HMSHLSPlayer = React.forwardRef<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n>(_HMSHLSPlayer);\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n playerWrapper: {\n backgroundColor: '#000000',\n alignItems: 'center',\n justifyContent: 'center',\n },\n player: {\n width: '100%',\n height: '100%',\n flex: 1,\n },\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["requireNativeComponent","UIManager","RCTHMSHLSPlayer","RCTHMSHLSPlayerViewManagerConfig","getViewManagerConfig"],"sources":["RCTHMSHLSPlayer.ts"],"sourcesContent":["import { requireNativeComponent, UIManager } from 'react-native';\nimport type {\n StyleProp,\n NativeSyntheticEvent,\n ViewStyle,\n NativeMethods,\n} from 'react-native';\nimport type {\n HMSHLSPlayerPlaybackEvent,\n HMSHLSPlayerStatsEvent,\n} from '../../types';\n\nexport type HmsHlsPlaybackEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerPlaybackEvent>\n) => void;\n\nexport type HmsHlsStatsEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerStatsEvent>\n) => void;\n\nexport type RCTHMSHLSPlayerProps = {\n url?: string;\n style?: StyleProp<ViewStyle>;\n enableStats?: boolean;\n enableControls?: boolean;\n onHmsHlsPlaybackEvent?: HmsHlsPlaybackEventHandler;\n onHmsHlsStatsEvent?: HmsHlsStatsEventHandler;\n};\n\nexport const RCTHMSHLSPlayer =\n requireNativeComponent<RCTHMSHLSPlayerProps>('HMSHLSPlayer');\n\nexport type RCTHMSHLSPlayerRef = React.Component<RCTHMSHLSPlayerProps> &\n Readonly<NativeMethods>;\n\nexport const RCTHMSHLSPlayerViewManagerConfig =\n UIManager.getViewManagerConfig('HMSHLSPlayer');\n"],"mappings":"AAAA,SAASA,sBAAsB,EAAEC,SAAS,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["requireNativeComponent","UIManager","RCTHMSHLSPlayer","RCTHMSHLSPlayerViewManagerConfig","getViewManagerConfig"],"sources":["RCTHMSHLSPlayer.ts"],"sourcesContent":["import { requireNativeComponent, UIManager } from 'react-native';\nimport type {\n StyleProp,\n NativeSyntheticEvent,\n ViewStyle,\n NativeMethods,\n} from 'react-native';\nimport type {\n HMSHLSPlayerCuesEvent,\n HMSHLSPlayerPlaybackEvent,\n HMSHLSPlayerStatsEvent,\n RequestedDataEvent,\n} from '../../types';\n\nexport type HmsHlsPlaybackEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerPlaybackEvent>\n) => void;\n\nexport type HmsHlsStatsEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerStatsEvent>\n) => void;\n\nexport type HlsSPlayerCuesEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerCuesEvent>\n) => void;\n\nexport type RequestedDataEventHandler = (\n event: NativeSyntheticEvent<RequestedDataEvent>\n) => void;\n\nexport type RCTHMSHLSPlayerProps = {\n url?: string;\n style?: StyleProp<ViewStyle>;\n enableStats?: boolean;\n enableControls?: boolean;\n onHmsHlsPlaybackEvent?: HmsHlsPlaybackEventHandler;\n onHmsHlsStatsEvent?: HmsHlsStatsEventHandler;\n onDataReturned?: RequestedDataEventHandler;\n onHlsPlayerCuesEvent?: HlsSPlayerCuesEventHandler;\n};\n\nexport const RCTHMSHLSPlayer =\n requireNativeComponent<RCTHMSHLSPlayerProps>('HMSHLSPlayer');\n\nexport type RCTHMSHLSPlayerRef = React.Component<RCTHMSHLSPlayerProps> &\n Readonly<NativeMethods>;\n\nexport const RCTHMSHLSPlayerViewManagerConfig =\n UIManager.getViewManagerConfig('HMSHLSPlayer');\n"],"mappings":"AAAA,SAASA,sBAAsB,EAAEC,SAAS,QAAQ,cAAc;AAyChE,OAAO,MAAMC,eAAe,GAC1BF,sBAAsB,CAAuB,cAAc,CAAC;AAK9D,OAAO,MAAMG,gCAAgC,GAC3CF,SAAS,CAACG,oBAAoB,CAAC,cAAc,CAAC","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useEffect } from 'react';
|
|
2
|
+
import { Platform } from 'react-native';
|
|
2
3
|
import { shallow } from 'zustand/shallow';
|
|
3
4
|
import { useHMSHLSPlayerStatsStore } from '../../stores/hls-player-stats-store';
|
|
4
5
|
import { useHMSStore } from '../../stores/hms-store';
|
|
@@ -19,11 +20,17 @@ export const useHMSHLSPlayerStats = () => {
|
|
|
19
20
|
export const useHMSHLSPlayerStat = stat => {
|
|
20
21
|
return useHMSHLSPlayerStatsStore(state => state.stats[stat]);
|
|
21
22
|
};
|
|
23
|
+
export const useHMSHLSPlayerSubtitles = () => {
|
|
24
|
+
return useHMSHLSPlayerStatsStore(state => state.subtitles);
|
|
25
|
+
};
|
|
22
26
|
|
|
23
|
-
//
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
+
// The distance of current playback position from the live edge of HLS stream
|
|
28
|
+
export const useIsHLSStreamLive = (liveOffsetMillis = Platform.select({
|
|
29
|
+
default: 10000,
|
|
30
|
+
ios: 5000
|
|
31
|
+
})) => {
|
|
32
|
+
return useHMSHLSPlayerStatsStore(state => state.stats.distanceFromLive < liveOffsetMillis);
|
|
33
|
+
};
|
|
27
34
|
|
|
28
35
|
// get latest state (without component rerender)
|
|
29
36
|
|
|
@@ -57,4 +64,5 @@ export const setHMSHLSPlayerCue = useHMSStore.getState().setCue;
|
|
|
57
64
|
export const setHMSHLSPlayerPlaybackError = useHMSStore.getState().setPlaybackError;
|
|
58
65
|
export const setHMSHLSPlayerStats = useHMSHLSPlayerStatsStore.getState().changeStats;
|
|
59
66
|
export const setHMSHLSPlayerStatsError = useHMSHLSPlayerStatsStore.getState().setError;
|
|
67
|
+
export const setHMSHLSPlayerSubtitles = useHMSHLSPlayerStatsStore.getState().setSubtitles;
|
|
60
68
|
//# sourceMappingURL=hooks.js.map
|