spactureai-mobile-player 1.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (492) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +474 -0
  3. package/UnifiedPlayer.podspec +51 -0
  4. package/android/CMakeLists.txt +29 -0
  5. package/android/build.gradle +249 -0
  6. package/android/fix-prefab.gradle +51 -0
  7. package/android/gradle.properties +15 -0
  8. package/android/src/main/AndroidManifest.xml +10 -0
  9. package/android/src/main/AndroidManifestNew.xml +9 -0
  10. package/android/src/main/cpp/cpp-adapter.cpp +9 -0
  11. package/android/src/main/java/com/unifiedplayer/core/AudioFocusManager.kt +233 -0
  12. package/android/src/main/java/com/unifiedplayer/core/VideoError.kt +105 -0
  13. package/android/src/main/java/com/unifiedplayer/core/VideoManager.kt +292 -0
  14. package/android/src/main/java/com/unifiedplayer/core/extensions/ResizeMode+AspectRatioFrameLayout.kt +20 -0
  15. package/android/src/main/java/com/unifiedplayer/core/extensions/SubtitleType+toString.kt +14 -0
  16. package/android/src/main/java/com/unifiedplayer/core/extensions/VideoPlaybackService+ServiceManagment.kt +59 -0
  17. package/android/src/main/java/com/unifiedplayer/core/fragments/FullscreenVideoFragment.kt +346 -0
  18. package/android/src/main/java/com/unifiedplayer/core/fragments/PictureInPictureHelperFragment.kt +85 -0
  19. package/android/src/main/java/com/unifiedplayer/core/player/DRMManagerSpec.kt +23 -0
  20. package/android/src/main/java/com/unifiedplayer/core/player/DataSourceFactoryUtils.kt +93 -0
  21. package/android/src/main/java/com/unifiedplayer/core/player/MediaItemUtils.kt +141 -0
  22. package/android/src/main/java/com/unifiedplayer/core/player/MediaSourceUtils.kt +134 -0
  23. package/android/src/main/java/com/unifiedplayer/core/player/OnAudioFocusChangedListener.kt +25 -0
  24. package/android/src/main/java/com/unifiedplayer/core/plugins/PluginsRegistry.kt +223 -0
  25. package/android/src/main/java/com/unifiedplayer/core/plugins/ReactNativeVideoPlugin.kt +173 -0
  26. package/android/src/main/java/com/unifiedplayer/core/recivers/AudioBecomingNoisyReceiver.kt +38 -0
  27. package/android/src/main/java/com/unifiedplayer/core/services/playback/CustomMediaNotificationProvider.kt +151 -0
  28. package/android/src/main/java/com/unifiedplayer/core/services/playback/VideoPlaybackCallback.kt +96 -0
  29. package/android/src/main/java/com/unifiedplayer/core/services/playback/VideoPlaybackService.kt +219 -0
  30. package/android/src/main/java/com/unifiedplayer/core/services/playback/VideoPlaybackServiceConnection.kt +59 -0
  31. package/android/src/main/java/com/unifiedplayer/core/utils/PictureInPictureUtils.kt +153 -0
  32. package/android/src/main/java/com/unifiedplayer/core/utils/SmallVideoPlayerOptimizer.kt +157 -0
  33. package/android/src/main/java/com/unifiedplayer/core/utils/SourceLoader.kt +48 -0
  34. package/android/src/main/java/com/unifiedplayer/core/utils/TextTrackUtils.kt +175 -0
  35. package/android/src/main/java/com/unifiedplayer/core/utils/Threading.kt +75 -0
  36. package/android/src/main/java/com/unifiedplayer/core/utils/VideoFileHelper.kt +51 -0
  37. package/android/src/main/java/com/unifiedplayer/core/utils/VideoInformationUtils.kt +67 -0
  38. package/android/src/main/java/com/unifiedplayer/core/utils/VideoOrientationUtils.kt +30 -0
  39. package/android/src/main/java/com/unifiedplayer/hybrids/videoplayer/HybridVideoPlayer.kt +732 -0
  40. package/android/src/main/java/com/unifiedplayer/hybrids/videoplayer/HybridVideoPlayerFactory.kt +16 -0
  41. package/android/src/main/java/com/unifiedplayer/hybrids/videoplayereventemitter/HybridVideoPlayerEventEmitter.kt +180 -0
  42. package/android/src/main/java/com/unifiedplayer/hybrids/videoplayersource/HybridVideoPlayerSource.kt +67 -0
  43. package/android/src/main/java/com/unifiedplayer/hybrids/videoplayersource/HybridVideoPlayerSourceFactory.kt +58 -0
  44. package/android/src/main/java/com/unifiedplayer/hybrids/videoviewviewmanager/HybridVideoViewViewManager.kt +187 -0
  45. package/android/src/main/java/com/unifiedplayer/hybrids/videoviewviewmanager/HybridVideoViewViewManagerFactory.kt +13 -0
  46. package/android/src/main/java/com/unifiedplayer/react/VideoPackage.kt +25 -0
  47. package/android/src/main/java/com/unifiedplayer/react/VideoViewViewManager.kt +78 -0
  48. package/android/src/main/java/com/unifiedplayer/view/VideoView.kt +565 -0
  49. package/android/src/main/res/layout/custom_player_control_view.xml +82 -0
  50. package/android/src/main/res/layout/player_view_surface.xml +13 -0
  51. package/android/src/main/res/layout/player_view_texture.xml +13 -0
  52. package/android/src/paper/java/com/facebook/react/viewmanagers/RNCVideoViewManagerDelegate.java +32 -0
  53. package/android/src/paper/java/com/facebook/react/viewmanagers/RNCVideoViewManagerInterface.java +16 -0
  54. package/android/src/stubs/dash/androidx/media3/exoplayer/dash/DashMediaSource.kt +35 -0
  55. package/android/src/stubs/dash/androidx/media3/exoplayer/dash/DashUtil.kt +11 -0
  56. package/android/src/stubs/dash/androidx/media3/exoplayer/dash/manifest/AdaptationSet.kt +9 -0
  57. package/android/src/stubs/dash/androidx/media3/exoplayer/dash/manifest/DashManifest.kt +10 -0
  58. package/android/src/stubs/dash/androidx/media3/exoplayer/dash/manifest/Period.kt +7 -0
  59. package/android/src/stubs/dash/androidx/media3/exoplayer/dash/manifest/Representation.kt +8 -0
  60. package/android/src/stubs/hls/androidx/media3/exoplayer/hls/HlsMediaSource.kt +33 -0
  61. package/ios/RNCVideoViewManager.mm +39 -0
  62. package/ios/Video-Bridging-Header.h +2 -0
  63. package/ios/core/HLSAuthProxy.swift +428 -0
  64. package/ios/core/VideoError.swift +164 -0
  65. package/ios/core/VideoManager.swift +219 -0
  66. package/ios/hybrids/VideoPlayer/HybridVideoPlayer.swift +697 -0
  67. package/ios/hybrids/VideoPlayer/HybridVideoPlayerFactory.swift +15 -0
  68. package/ios/hybrids/VideoPlayer/VLCPlaybackDelegates.swift +58 -0
  69. package/ios/hybrids/VideoPlayerEmitter/HybridVideoPlayerEventEmitter.swift +203 -0
  70. package/ios/hybrids/VideoPlayerSource/HybridVideoPlayerSource.swift +55 -0
  71. package/ios/hybrids/VideoPlayerSource/HybridVideoPlayerSourceFactory.swift +29 -0
  72. package/ios/hybrids/VideoViewViewManager/HybridVideoViewViewManager.swift +266 -0
  73. package/ios/hybrids/VideoViewViewManager/HybridVideoViewViewManagerFactory.swift +14 -0
  74. package/ios/view/VideoComponentView.swift +196 -0
  75. package/ios/view/VideoComponentViewObserver.swift +48 -0
  76. package/lib/module/core/VideoPlayer.js +287 -0
  77. package/lib/module/core/VideoPlayer.js.map +1 -0
  78. package/lib/module/core/VideoPlayerEvents.js +84 -0
  79. package/lib/module/core/VideoPlayerEvents.js.map +1 -0
  80. package/lib/module/core/hooks/useEvent.js +19 -0
  81. package/lib/module/core/hooks/useEvent.js.map +1 -0
  82. package/lib/module/core/hooks/useManagedInstance.js +75 -0
  83. package/lib/module/core/hooks/useManagedInstance.js.map +1 -0
  84. package/lib/module/core/hooks/useVideoPlayer.js +57 -0
  85. package/lib/module/core/hooks/useVideoPlayer.js.map +1 -0
  86. package/lib/module/core/types/BufferConfig.js +2 -0
  87. package/lib/module/core/types/BufferConfig.js.map +1 -0
  88. package/lib/module/core/types/DrmParams.js +2 -0
  89. package/lib/module/core/types/DrmParams.js.map +1 -0
  90. package/lib/module/core/types/Events.js +10 -0
  91. package/lib/module/core/types/Events.js.map +1 -0
  92. package/lib/module/core/types/IgnoreSilentSwitchMode.js +2 -0
  93. package/lib/module/core/types/IgnoreSilentSwitchMode.js.map +1 -0
  94. package/lib/module/core/types/MixAudioMode.js +2 -0
  95. package/lib/module/core/types/MixAudioMode.js.map +1 -0
  96. package/lib/module/core/types/ResizeMode.js +2 -0
  97. package/lib/module/core/types/ResizeMode.js.map +1 -0
  98. package/lib/module/core/types/TextTrack.js +2 -0
  99. package/lib/module/core/types/TextTrack.js.map +1 -0
  100. package/lib/module/core/types/Utils.js +2 -0
  101. package/lib/module/core/types/Utils.js.map +1 -0
  102. package/lib/module/core/types/VideoConfig.js +4 -0
  103. package/lib/module/core/types/VideoConfig.js.map +1 -0
  104. package/lib/module/core/types/VideoError.js +100 -0
  105. package/lib/module/core/types/VideoError.js.map +1 -0
  106. package/lib/module/core/types/VideoInformation.js +4 -0
  107. package/lib/module/core/types/VideoInformation.js.map +1 -0
  108. package/lib/module/core/types/VideoOrientation.js +2 -0
  109. package/lib/module/core/types/VideoOrientation.js.map +1 -0
  110. package/lib/module/core/types/VideoPlayerBase.js +4 -0
  111. package/lib/module/core/types/VideoPlayerBase.js.map +1 -0
  112. package/lib/module/core/types/VideoPlayerSourceBase.js +4 -0
  113. package/lib/module/core/types/VideoPlayerSourceBase.js.map +1 -0
  114. package/lib/module/core/types/VideoPlayerStatus.js +2 -0
  115. package/lib/module/core/types/VideoPlayerStatus.js.map +1 -0
  116. package/lib/module/core/utils/playerFactory.js +25 -0
  117. package/lib/module/core/utils/playerFactory.js.map +1 -0
  118. package/lib/module/core/utils/sourceFactory.js +138 -0
  119. package/lib/module/core/utils/sourceFactory.js.map +1 -0
  120. package/lib/module/core/video-view/NativeVideoView.tsx +18 -0
  121. package/lib/module/core/video-view/VideoView.js +261 -0
  122. package/lib/module/core/video-view/VideoView.js.map +1 -0
  123. package/lib/module/expo-plugins/@types.js +2 -0
  124. package/lib/module/expo-plugins/@types.js.map +1 -0
  125. package/lib/module/expo-plugins/getPackageInfo.js +23 -0
  126. package/lib/module/expo-plugins/getPackageInfo.js.map +1 -0
  127. package/lib/module/expo-plugins/withAndroidExtensions.js +35 -0
  128. package/lib/module/expo-plugins/withAndroidExtensions.js.map +1 -0
  129. package/lib/module/expo-plugins/withAndroidNotificationControls.js +29 -0
  130. package/lib/module/expo-plugins/withAndroidNotificationControls.js.map +1 -0
  131. package/lib/module/expo-plugins/withAndroidPictureInPicture.js +18 -0
  132. package/lib/module/expo-plugins/withAndroidPictureInPicture.js.map +1 -0
  133. package/lib/module/expo-plugins/withBackgroundAudio.js +22 -0
  134. package/lib/module/expo-plugins/withBackgroundAudio.js.map +1 -0
  135. package/lib/module/expo-plugins/withReactNativeVideo.js +27 -0
  136. package/lib/module/expo-plugins/withReactNativeVideo.js.map +1 -0
  137. package/lib/module/expo-plugins/writeToPodfile.js +53 -0
  138. package/lib/module/expo-plugins/writeToPodfile.js.map +1 -0
  139. package/lib/module/index.js +8 -0
  140. package/lib/module/index.js.map +1 -0
  141. package/lib/module/package.json +1 -0
  142. package/lib/module/spec/fabric/VideoViewNativeComponent.ts +17 -0
  143. package/lib/module/spec/nitro/VideoPlayer.nitro.js +4 -0
  144. package/lib/module/spec/nitro/VideoPlayer.nitro.js.map +1 -0
  145. package/lib/module/spec/nitro/VideoPlayerEventEmitter.nitro.js +4 -0
  146. package/lib/module/spec/nitro/VideoPlayerEventEmitter.nitro.js.map +1 -0
  147. package/lib/module/spec/nitro/VideoPlayerSource.nitro.js +4 -0
  148. package/lib/module/spec/nitro/VideoPlayerSource.nitro.js.map +1 -0
  149. package/lib/module/spec/nitro/VideoViewViewManager.nitro.js +4 -0
  150. package/lib/module/spec/nitro/VideoViewViewManager.nitro.js.map +1 -0
  151. package/lib/typescript/drm-plugin/src/PluginManager.nitro.d.ts +10 -0
  152. package/lib/typescript/drm-plugin/src/PluginManager.nitro.d.ts.map +1 -0
  153. package/lib/typescript/drm-plugin/src/index.d.ts +4 -0
  154. package/lib/typescript/drm-plugin/src/index.d.ts.map +1 -0
  155. package/lib/typescript/package.json +1 -0
  156. package/lib/typescript/src/core/VideoPlayer.d.ts +88 -0
  157. package/lib/typescript/src/core/VideoPlayer.d.ts.map +1 -0
  158. package/lib/typescript/src/core/VideoPlayerEvents.d.ts +22 -0
  159. package/lib/typescript/src/core/VideoPlayerEvents.d.ts.map +1 -0
  160. package/lib/typescript/src/core/hooks/useEvent.d.ts +11 -0
  161. package/lib/typescript/src/core/hooks/useEvent.d.ts.map +1 -0
  162. package/lib/typescript/src/core/hooks/useManagedInstance.d.ts +19 -0
  163. package/lib/typescript/src/core/hooks/useManagedInstance.d.ts.map +1 -0
  164. package/lib/typescript/src/core/hooks/useVideoPlayer.d.ts +16 -0
  165. package/lib/typescript/src/core/hooks/useVideoPlayer.d.ts.map +1 -0
  166. package/lib/typescript/src/core/types/BufferConfig.d.ts +97 -0
  167. package/lib/typescript/src/core/types/BufferConfig.d.ts.map +1 -0
  168. package/lib/typescript/src/core/types/DrmParams.d.ts +64 -0
  169. package/lib/typescript/src/core/types/DrmParams.d.ts.map +1 -0
  170. package/lib/typescript/src/core/types/Events.d.ts +224 -0
  171. package/lib/typescript/src/core/types/Events.d.ts.map +1 -0
  172. package/lib/typescript/src/core/types/IgnoreSilentSwitchMode.d.ts +2 -0
  173. package/lib/typescript/src/core/types/IgnoreSilentSwitchMode.d.ts.map +1 -0
  174. package/lib/typescript/src/core/types/MixAudioMode.d.ts +2 -0
  175. package/lib/typescript/src/core/types/MixAudioMode.d.ts.map +1 -0
  176. package/lib/typescript/src/core/types/ResizeMode.d.ts +10 -0
  177. package/lib/typescript/src/core/types/ResizeMode.d.ts.map +1 -0
  178. package/lib/typescript/src/core/types/TextTrack.d.ts +20 -0
  179. package/lib/typescript/src/core/types/TextTrack.d.ts.map +1 -0
  180. package/lib/typescript/src/core/types/Utils.d.ts +2 -0
  181. package/lib/typescript/src/core/types/Utils.d.ts.map +1 -0
  182. package/lib/typescript/src/core/types/VideoConfig.d.ts +138 -0
  183. package/lib/typescript/src/core/types/VideoConfig.d.ts.map +1 -0
  184. package/lib/typescript/src/core/types/VideoError.d.ts +31 -0
  185. package/lib/typescript/src/core/types/VideoError.d.ts.map +1 -0
  186. package/lib/typescript/src/core/types/VideoInformation.d.ts +38 -0
  187. package/lib/typescript/src/core/types/VideoInformation.d.ts.map +1 -0
  188. package/lib/typescript/src/core/types/VideoOrientation.d.ts +2 -0
  189. package/lib/typescript/src/core/types/VideoOrientation.d.ts.map +1 -0
  190. package/lib/typescript/src/core/types/VideoPlayerBase.d.ts +155 -0
  191. package/lib/typescript/src/core/types/VideoPlayerBase.d.ts.map +1 -0
  192. package/lib/typescript/src/core/types/VideoPlayerSourceBase.d.ts +17 -0
  193. package/lib/typescript/src/core/types/VideoPlayerSourceBase.d.ts.map +1 -0
  194. package/lib/typescript/src/core/types/VideoPlayerStatus.d.ts +9 -0
  195. package/lib/typescript/src/core/types/VideoPlayerStatus.d.ts.map +1 -0
  196. package/lib/typescript/src/core/utils/playerFactory.d.ts +12 -0
  197. package/lib/typescript/src/core/utils/playerFactory.d.ts.map +1 -0
  198. package/lib/typescript/src/core/utils/sourceFactory.d.ts +29 -0
  199. package/lib/typescript/src/core/utils/sourceFactory.d.ts.map +1 -0
  200. package/lib/typescript/src/core/video-view/NativeVideoView.d.ts +2 -0
  201. package/lib/typescript/src/core/video-view/NativeVideoView.d.ts.map +1 -0
  202. package/lib/typescript/src/core/video-view/VideoView.d.ts +104 -0
  203. package/lib/typescript/src/core/video-view/VideoView.d.ts.map +1 -0
  204. package/lib/typescript/src/index.d.ts +13 -0
  205. package/lib/typescript/src/index.d.ts.map +1 -0
  206. package/lib/typescript/src/spec/fabric/VideoViewNativeComponent.d.ts +13 -0
  207. package/lib/typescript/src/spec/fabric/VideoViewNativeComponent.d.ts.map +1 -0
  208. package/lib/typescript/src/spec/nitro/VideoPlayer.nitro.d.ts +55 -0
  209. package/lib/typescript/src/spec/nitro/VideoPlayer.nitro.d.ts.map +1 -0
  210. package/lib/typescript/src/spec/nitro/VideoPlayerEventEmitter.nitro.d.ts +150 -0
  211. package/lib/typescript/src/spec/nitro/VideoPlayerEventEmitter.nitro.d.ts.map +1 -0
  212. package/lib/typescript/src/spec/nitro/VideoPlayerSource.nitro.d.ts +21 -0
  213. package/lib/typescript/src/spec/nitro/VideoPlayerSource.nitro.d.ts.map +1 -0
  214. package/lib/typescript/src/spec/nitro/VideoViewViewManager.nitro.d.ts +75 -0
  215. package/lib/typescript/src/spec/nitro/VideoViewViewManager.nitro.d.ts.map +1 -0
  216. package/nitro.json +47 -0
  217. package/nitrogen/generated/android/UnifiedPlayer+autolinking.cmake +95 -0
  218. package/nitrogen/generated/android/UnifiedPlayer+autolinking.gradle +27 -0
  219. package/nitrogen/generated/android/UnifiedPlayerOnLoad.cpp +122 -0
  220. package/nitrogen/generated/android/UnifiedPlayerOnLoad.hpp +34 -0
  221. package/nitrogen/generated/android/c++/JBandwidthData.hpp +65 -0
  222. package/nitrogen/generated/android/c++/JBufferConfig.hpp +101 -0
  223. package/nitrogen/generated/android/c++/JCustomVideoMetadata.hpp +74 -0
  224. package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_std__string_____OnGetLicensePayload.hpp +126 -0
  225. package/nitrogen/generated/android/c++/JFunc_void.hpp +75 -0
  226. package/nitrogen/generated/android/c++/JFunc_void_BandwidthData.hpp +78 -0
  227. package/nitrogen/generated/android/c++/JFunc_void_TimedMetadata.hpp +81 -0
  228. package/nitrogen/generated/android/c++/JFunc_void_VideoPlayerStatus.hpp +77 -0
  229. package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +75 -0
  230. package/nitrogen/generated/android/c++/JFunc_void_double.hpp +75 -0
  231. package/nitrogen/generated/android/c++/JFunc_void_onLoadData.hpp +79 -0
  232. package/nitrogen/generated/android/c++/JFunc_void_onLoadStartData.hpp +82 -0
  233. package/nitrogen/generated/android/c++/JFunc_void_onPlaybackStateChangeData.hpp +77 -0
  234. package/nitrogen/generated/android/c++/JFunc_void_onProgressData.hpp +77 -0
  235. package/nitrogen/generated/android/c++/JFunc_void_onVolumeChangeData.hpp +77 -0
  236. package/nitrogen/generated/android/c++/JFunc_void_std__optional_std__variant_nitro__NullType__TextTrack__.hpp +83 -0
  237. package/nitrogen/generated/android/c++/JFunc_void_std__vector_std__string_.hpp +95 -0
  238. package/nitrogen/generated/android/c++/JHybridVideoPlayerEventEmitterSpec.cpp +224 -0
  239. package/nitrogen/generated/android/c++/JHybridVideoPlayerEventEmitterSpec.hpp +82 -0
  240. package/nitrogen/generated/android/c++/JHybridVideoPlayerFactorySpec.cpp +60 -0
  241. package/nitrogen/generated/android/c++/JHybridVideoPlayerFactorySpec.hpp +63 -0
  242. package/nitrogen/generated/android/c++/JHybridVideoPlayerSourceFactorySpec.cpp +106 -0
  243. package/nitrogen/generated/android/c++/JHybridVideoPlayerSourceFactorySpec.hpp +64 -0
  244. package/nitrogen/generated/android/c++/JHybridVideoPlayerSourceSpec.cpp +124 -0
  245. package/nitrogen/generated/android/c++/JHybridVideoPlayerSourceSpec.hpp +64 -0
  246. package/nitrogen/generated/android/c++/JHybridVideoPlayerSpec.cpp +300 -0
  247. package/nitrogen/generated/android/c++/JHybridVideoPlayerSpec.hpp +98 -0
  248. package/nitrogen/generated/android/c++/JHybridVideoViewViewManagerFactorySpec.cpp +56 -0
  249. package/nitrogen/generated/android/c++/JHybridVideoViewViewManagerFactorySpec.hpp +63 -0
  250. package/nitrogen/generated/android/c++/JHybridVideoViewViewManagerSpec.cpp +185 -0
  251. package/nitrogen/generated/android/c++/JHybridVideoViewViewManagerSpec.hpp +87 -0
  252. package/nitrogen/generated/android/c++/JIgnoreSilentSwitchMode.hpp +61 -0
  253. package/nitrogen/generated/android/c++/JListenerSubscription.hpp +67 -0
  254. package/nitrogen/generated/android/c++/JLivePlaybackParams.hpp +73 -0
  255. package/nitrogen/generated/android/c++/JMixAudioMode.hpp +64 -0
  256. package/nitrogen/generated/android/c++/JNativeDrmParams.hpp +111 -0
  257. package/nitrogen/generated/android/c++/JNativeExternalSubtitle.hpp +71 -0
  258. package/nitrogen/generated/android/c++/JNativeVideoConfig.hpp +136 -0
  259. package/nitrogen/generated/android/c++/JOnGetLicensePayload.hpp +69 -0
  260. package/nitrogen/generated/android/c++/JResizeMode.hpp +64 -0
  261. package/nitrogen/generated/android/c++/JResolution.hpp +61 -0
  262. package/nitrogen/generated/android/c++/JSourceType.hpp +58 -0
  263. package/nitrogen/generated/android/c++/JSubtitleType.hpp +67 -0
  264. package/nitrogen/generated/android/c++/JSurfaceType.hpp +58 -0
  265. package/nitrogen/generated/android/c++/JTextTrack.hpp +70 -0
  266. package/nitrogen/generated/android/c++/JTimedMetadata.hpp +78 -0
  267. package/nitrogen/generated/android/c++/JTimedMetadataObject.hpp +61 -0
  268. package/nitrogen/generated/android/c++/JVariant_NullType_HybridVideoPlayerSourceSpec.cpp +26 -0
  269. package/nitrogen/generated/android/c++/JVariant_NullType_HybridVideoPlayerSourceSpec.hpp +72 -0
  270. package/nitrogen/generated/android/c++/JVariant_NullType_TextTrack.cpp +26 -0
  271. package/nitrogen/generated/android/c++/JVariant_NullType_TextTrack.hpp +73 -0
  272. package/nitrogen/generated/android/c++/JVideoInformation.hpp +86 -0
  273. package/nitrogen/generated/android/c++/JVideoOrientation.hpp +73 -0
  274. package/nitrogen/generated/android/c++/JVideoPlayerStatus.hpp +64 -0
  275. package/nitrogen/generated/android/c++/JonLoadData.hpp +74 -0
  276. package/nitrogen/generated/android/c++/JonLoadStartData.hpp +65 -0
  277. package/nitrogen/generated/android/c++/JonPlaybackStateChangeData.hpp +61 -0
  278. package/nitrogen/generated/android/c++/JonProgressData.hpp +65 -0
  279. package/nitrogen/generated/android/c++/JonVolumeChangeData.hpp +61 -0
  280. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/BandwidthData.kt +61 -0
  281. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/BufferConfig.kt +101 -0
  282. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/CustomVideoMetadata.kt +71 -0
  283. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__string_____OnGetLicensePayload.kt +80 -0
  284. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void.kt +80 -0
  285. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_BandwidthData.kt +80 -0
  286. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_TimedMetadata.kt +80 -0
  287. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_VideoPlayerStatus.kt +80 -0
  288. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_bool.kt +80 -0
  289. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_double.kt +80 -0
  290. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_onLoadData.kt +80 -0
  291. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_onLoadStartData.kt +80 -0
  292. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_onPlaybackStateChangeData.kt +80 -0
  293. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_onProgressData.kt +80 -0
  294. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_onVolumeChangeData.kt +80 -0
  295. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_std__optional_std__variant_nitro__NullType__TextTrack__.kt +80 -0
  296. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Func_void_std__vector_std__string_.kt +80 -0
  297. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/HybridVideoPlayerEventEmitterSpec.kt +226 -0
  298. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/HybridVideoPlayerFactorySpec.kt +54 -0
  299. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/HybridVideoPlayerSourceFactorySpec.kt +58 -0
  300. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/HybridVideoPlayerSourceSpec.kt +61 -0
  301. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/HybridVideoPlayerSpec.kt +178 -0
  302. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/HybridVideoViewViewManagerFactorySpec.kt +54 -0
  303. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/HybridVideoViewViewManagerSpec.kt +168 -0
  304. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/IgnoreSilentSwitchMode.kt +24 -0
  305. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/ListenerSubscription.kt +55 -0
  306. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/LivePlaybackParams.kt +71 -0
  307. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/MixAudioMode.kt +25 -0
  308. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/NativeDrmParams.kt +85 -0
  309. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/NativeExternalSubtitle.kt +66 -0
  310. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/NativeVideoConfig.kt +81 -0
  311. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/OnGetLicensePayload.kt +66 -0
  312. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/ResizeMode.kt +25 -0
  313. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Resolution.kt +56 -0
  314. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/SourceType.kt +23 -0
  315. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/SubtitleType.kt +26 -0
  316. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/SurfaceType.kt +23 -0
  317. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/TextTrack.kt +66 -0
  318. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/TimedMetadata.kt +51 -0
  319. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/TimedMetadataObject.kt +56 -0
  320. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/UnifiedPlayerOnLoad.kt +35 -0
  321. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Variant_NullType_HybridVideoPlayerSourceSpec.kt +62 -0
  322. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/Variant_NullType_TextTrack.kt +62 -0
  323. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/VideoInformation.kt +86 -0
  324. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/VideoOrientation.kt +28 -0
  325. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/VideoPlayerStatus.kt +25 -0
  326. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/onLoadData.kt +71 -0
  327. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/onLoadStartData.kt +56 -0
  328. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/onPlaybackStateChangeData.kt +56 -0
  329. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/onProgressData.kt +61 -0
  330. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unifiedplayer/onVolumeChangeData.kt +56 -0
  331. package/nitrogen/generated/ios/UnifiedPlayer+autolinking.rb +62 -0
  332. package/nitrogen/generated/ios/UnifiedPlayer-Swift-Cxx-Bridge.cpp +280 -0
  333. package/nitrogen/generated/ios/UnifiedPlayer-Swift-Cxx-Bridge.hpp +1106 -0
  334. package/nitrogen/generated/ios/UnifiedPlayer-Swift-Cxx-Umbrella.hpp +162 -0
  335. package/nitrogen/generated/ios/UnifiedPlayerAutolinking.mm +49 -0
  336. package/nitrogen/generated/ios/UnifiedPlayerAutolinking.swift +50 -0
  337. package/nitrogen/generated/ios/c++/HybridVideoPlayerEventEmitterSpecSwift.cpp +11 -0
  338. package/nitrogen/generated/ios/c++/HybridVideoPlayerEventEmitterSpecSwift.hpp +279 -0
  339. package/nitrogen/generated/ios/c++/HybridVideoPlayerFactorySpecSwift.cpp +11 -0
  340. package/nitrogen/generated/ios/c++/HybridVideoPlayerFactorySpecSwift.hpp +87 -0
  341. package/nitrogen/generated/ios/c++/HybridVideoPlayerSourceFactorySpecSwift.cpp +11 -0
  342. package/nitrogen/generated/ios/c++/HybridVideoPlayerSourceFactorySpecSwift.hpp +125 -0
  343. package/nitrogen/generated/ios/c++/HybridVideoPlayerSourceSpecSwift.cpp +11 -0
  344. package/nitrogen/generated/ios/c++/HybridVideoPlayerSourceSpecSwift.hpp +125 -0
  345. package/nitrogen/generated/ios/c++/HybridVideoPlayerSpecSwift.cpp +11 -0
  346. package/nitrogen/generated/ios/c++/HybridVideoPlayerSpecSwift.hpp +256 -0
  347. package/nitrogen/generated/ios/c++/HybridVideoViewViewManagerFactorySpecSwift.cpp +11 -0
  348. package/nitrogen/generated/ios/c++/HybridVideoViewViewManagerFactorySpecSwift.hpp +84 -0
  349. package/nitrogen/generated/ios/c++/HybridVideoViewViewManagerSpecSwift.cpp +11 -0
  350. package/nitrogen/generated/ios/c++/HybridVideoViewViewManagerSpecSwift.hpp +217 -0
  351. package/nitrogen/generated/ios/swift/BandwidthData.swift +65 -0
  352. package/nitrogen/generated/ios/swift/BufferConfig.swift +201 -0
  353. package/nitrogen/generated/ios/swift/CustomVideoMetadata.swift +114 -0
  354. package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__string_____OnGetLicensePayload.swift +61 -0
  355. package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
  356. package/nitrogen/generated/ios/swift/Func_void_BandwidthData.swift +46 -0
  357. package/nitrogen/generated/ios/swift/Func_void_TimedMetadata.swift +46 -0
  358. package/nitrogen/generated/ios/swift/Func_void_VideoInformation.swift +46 -0
  359. package/nitrogen/generated/ios/swift/Func_void_VideoPlayerStatus.swift +46 -0
  360. package/nitrogen/generated/ios/swift/Func_void_bool.swift +46 -0
  361. package/nitrogen/generated/ios/swift/Func_void_double.swift +46 -0
  362. package/nitrogen/generated/ios/swift/Func_void_onLoadData.swift +46 -0
  363. package/nitrogen/generated/ios/swift/Func_void_onLoadStartData.swift +46 -0
  364. package/nitrogen/generated/ios/swift/Func_void_onPlaybackStateChangeData.swift +46 -0
  365. package/nitrogen/generated/ios/swift/Func_void_onProgressData.swift +46 -0
  366. package/nitrogen/generated/ios/swift/Func_void_onVolumeChangeData.swift +46 -0
  367. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
  368. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__variant_nitro__NullType__TextTrack__.swift +65 -0
  369. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_Promise_std__string__.swift +66 -0
  370. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +46 -0
  371. package/nitrogen/generated/ios/swift/Func_void_std__vector_std__string_.swift +46 -0
  372. package/nitrogen/generated/ios/swift/HybridVideoPlayerEventEmitterSpec.swift +74 -0
  373. package/nitrogen/generated/ios/swift/HybridVideoPlayerEventEmitterSpec_cxx.swift +479 -0
  374. package/nitrogen/generated/ios/swift/HybridVideoPlayerFactorySpec.swift +55 -0
  375. package/nitrogen/generated/ios/swift/HybridVideoPlayerFactorySpec_cxx.swift +145 -0
  376. package/nitrogen/generated/ios/swift/HybridVideoPlayerSourceFactorySpec.swift +56 -0
  377. package/nitrogen/generated/ios/swift/HybridVideoPlayerSourceFactorySpec_cxx.swift +156 -0
  378. package/nitrogen/generated/ios/swift/HybridVideoPlayerSourceSpec.swift +56 -0
  379. package/nitrogen/generated/ios/swift/HybridVideoPlayerSourceSpec_cxx.swift +157 -0
  380. package/nitrogen/generated/ios/swift/HybridVideoPlayerSpec.swift +80 -0
  381. package/nitrogen/generated/ios/swift/HybridVideoPlayerSpec_cxx.swift +490 -0
  382. package/nitrogen/generated/ios/swift/HybridVideoViewViewManagerFactorySpec.swift +55 -0
  383. package/nitrogen/generated/ios/swift/HybridVideoViewViewManagerFactorySpec_cxx.swift +141 -0
  384. package/nitrogen/generated/ios/swift/HybridVideoViewViewManagerSpec.swift +72 -0
  385. package/nitrogen/generated/ios/swift/HybridVideoViewViewManagerSpec_cxx.swift +390 -0
  386. package/nitrogen/generated/ios/swift/IgnoreSilentSwitchMode.swift +44 -0
  387. package/nitrogen/generated/ios/swift/ListenerSubscription.swift +37 -0
  388. package/nitrogen/generated/ios/swift/LivePlaybackParams.swift +114 -0
  389. package/nitrogen/generated/ios/swift/MixAudioMode.swift +48 -0
  390. package/nitrogen/generated/ios/swift/NativeDrmParams.swift +193 -0
  391. package/nitrogen/generated/ios/swift/NativeExternalSubtitle.swift +44 -0
  392. package/nitrogen/generated/ios/swift/NativeVideoConfig.swift +136 -0
  393. package/nitrogen/generated/ios/swift/OnGetLicensePayload.swift +44 -0
  394. package/nitrogen/generated/ios/swift/ResizeMode.swift +48 -0
  395. package/nitrogen/generated/ios/swift/Resolution.swift +34 -0
  396. package/nitrogen/generated/ios/swift/SourceType.swift +40 -0
  397. package/nitrogen/generated/ios/swift/SubtitleType.swift +52 -0
  398. package/nitrogen/generated/ios/swift/SurfaceType.swift +40 -0
  399. package/nitrogen/generated/ios/swift/TextTrack.swift +57 -0
  400. package/nitrogen/generated/ios/swift/TimedMetadata.swift +35 -0
  401. package/nitrogen/generated/ios/swift/TimedMetadataObject.swift +34 -0
  402. package/nitrogen/generated/ios/swift/Variant_NullType_TextTrack.swift +30 -0
  403. package/nitrogen/generated/ios/swift/Variant_NullType__any_HybridVideoPlayerSourceSpec_.swift +30 -0
  404. package/nitrogen/generated/ios/swift/VideoInformation.swift +64 -0
  405. package/nitrogen/generated/ios/swift/VideoOrientation.swift +60 -0
  406. package/nitrogen/generated/ios/swift/VideoPlayerStatus.swift +48 -0
  407. package/nitrogen/generated/ios/swift/onLoadData.swift +49 -0
  408. package/nitrogen/generated/ios/swift/onLoadStartData.swift +41 -0
  409. package/nitrogen/generated/ios/swift/onPlaybackStateChangeData.swift +34 -0
  410. package/nitrogen/generated/ios/swift/onProgressData.swift +39 -0
  411. package/nitrogen/generated/ios/swift/onVolumeChangeData.swift +34 -0
  412. package/nitrogen/generated/shared/c++/BandwidthData.hpp +91 -0
  413. package/nitrogen/generated/shared/c++/BufferConfig.hpp +128 -0
  414. package/nitrogen/generated/shared/c++/CustomVideoMetadata.hpp +100 -0
  415. package/nitrogen/generated/shared/c++/HybridVideoPlayerEventEmitterSpec.cpp +40 -0
  416. package/nitrogen/generated/shared/c++/HybridVideoPlayerEventEmitterSpec.hpp +115 -0
  417. package/nitrogen/generated/shared/c++/HybridVideoPlayerFactorySpec.cpp +21 -0
  418. package/nitrogen/generated/shared/c++/HybridVideoPlayerFactorySpec.hpp +67 -0
  419. package/nitrogen/generated/shared/c++/HybridVideoPlayerSourceFactorySpec.cpp +22 -0
  420. package/nitrogen/generated/shared/c++/HybridVideoPlayerSourceFactorySpec.hpp +69 -0
  421. package/nitrogen/generated/shared/c++/HybridVideoPlayerSourceSpec.cpp +23 -0
  422. package/nitrogen/generated/shared/c++/HybridVideoPlayerSourceSpec.hpp +69 -0
  423. package/nitrogen/generated/shared/c++/HybridVideoPlayerSpec.cpp +57 -0
  424. package/nitrogen/generated/shared/c++/HybridVideoPlayerSpec.hpp +120 -0
  425. package/nitrogen/generated/shared/c++/HybridVideoViewViewManagerFactorySpec.cpp +21 -0
  426. package/nitrogen/generated/shared/c++/HybridVideoViewViewManagerFactorySpec.hpp +64 -0
  427. package/nitrogen/generated/shared/c++/HybridVideoViewViewManagerSpec.cpp +46 -0
  428. package/nitrogen/generated/shared/c++/HybridVideoViewViewManagerSpec.hpp +99 -0
  429. package/nitrogen/generated/shared/c++/IgnoreSilentSwitchMode.hpp +80 -0
  430. package/nitrogen/generated/shared/c++/ListenerSubscription.hpp +83 -0
  431. package/nitrogen/generated/shared/c++/LivePlaybackParams.hpp +99 -0
  432. package/nitrogen/generated/shared/c++/MixAudioMode.hpp +84 -0
  433. package/nitrogen/generated/shared/c++/NativeDrmParams.hpp +113 -0
  434. package/nitrogen/generated/shared/c++/NativeExternalSubtitle.hpp +97 -0
  435. package/nitrogen/generated/shared/c++/NativeVideoConfig.hpp +121 -0
  436. package/nitrogen/generated/shared/c++/OnGetLicensePayload.hpp +95 -0
  437. package/nitrogen/generated/shared/c++/ResizeMode.hpp +84 -0
  438. package/nitrogen/generated/shared/c++/Resolution.hpp +87 -0
  439. package/nitrogen/generated/shared/c++/SourceType.hpp +76 -0
  440. package/nitrogen/generated/shared/c++/SubtitleType.hpp +88 -0
  441. package/nitrogen/generated/shared/c++/SurfaceType.hpp +76 -0
  442. package/nitrogen/generated/shared/c++/TextTrack.hpp +96 -0
  443. package/nitrogen/generated/shared/c++/TimedMetadata.hpp +85 -0
  444. package/nitrogen/generated/shared/c++/TimedMetadataObject.hpp +87 -0
  445. package/nitrogen/generated/shared/c++/VideoInformation.hpp +112 -0
  446. package/nitrogen/generated/shared/c++/VideoOrientation.hpp +96 -0
  447. package/nitrogen/generated/shared/c++/VideoPlayerStatus.hpp +84 -0
  448. package/nitrogen/generated/shared/c++/onLoadData.hpp +100 -0
  449. package/nitrogen/generated/shared/c++/onLoadStartData.hpp +92 -0
  450. package/nitrogen/generated/shared/c++/onPlaybackStateChangeData.hpp +87 -0
  451. package/nitrogen/generated/shared/c++/onProgressData.hpp +91 -0
  452. package/nitrogen/generated/shared/c++/onVolumeChangeData.hpp +87 -0
  453. package/package.json +180 -0
  454. package/react-native.config.js +10 -0
  455. package/src/core/VideoPlayer.ts +357 -0
  456. package/src/core/VideoPlayerEvents.ts +146 -0
  457. package/src/core/hooks/useEvent.ts +24 -0
  458. package/src/core/hooks/useManagedInstance.ts +96 -0
  459. package/src/core/hooks/useVideoPlayer.ts +73 -0
  460. package/src/core/types/BufferConfig.ts +103 -0
  461. package/src/core/types/DrmParams.ts +65 -0
  462. package/src/core/types/Events.ts +283 -0
  463. package/src/core/types/IgnoreSilentSwitchMode.ts +1 -0
  464. package/src/core/types/MixAudioMode.ts +1 -0
  465. package/src/core/types/ResizeMode.ts +9 -0
  466. package/src/core/types/TextTrack.ts +22 -0
  467. package/src/core/types/Utils.ts +1 -0
  468. package/src/core/types/VideoConfig.ts +150 -0
  469. package/src/core/types/VideoError.ts +174 -0
  470. package/src/core/types/VideoInformation.ts +45 -0
  471. package/src/core/types/VideoOrientation.ts +8 -0
  472. package/src/core/types/VideoPlayerBase.ts +181 -0
  473. package/src/core/types/VideoPlayerSourceBase.ts +19 -0
  474. package/src/core/types/VideoPlayerStatus.ts +8 -0
  475. package/src/core/utils/playerFactory.ts +33 -0
  476. package/src/core/utils/sourceFactory.ts +171 -0
  477. package/src/core/video-view/NativeVideoView.tsx +18 -0
  478. package/src/core/video-view/VideoView.tsx +492 -0
  479. package/src/expo-plugins/@types.ts +37 -0
  480. package/src/expo-plugins/getPackageInfo.ts +23 -0
  481. package/src/expo-plugins/withAndroidExtensions.ts +46 -0
  482. package/src/expo-plugins/withAndroidNotificationControls.ts +43 -0
  483. package/src/expo-plugins/withAndroidPictureInPicture.ts +31 -0
  484. package/src/expo-plugins/withBackgroundAudio.ts +26 -0
  485. package/src/expo-plugins/withReactNativeVideo.ts +32 -0
  486. package/src/expo-plugins/writeToPodfile.ts +74 -0
  487. package/src/index.tsx +29 -0
  488. package/src/spec/fabric/VideoViewNativeComponent.ts +17 -0
  489. package/src/spec/nitro/VideoPlayer.nitro.ts +62 -0
  490. package/src/spec/nitro/VideoPlayerEventEmitter.nitro.ts +207 -0
  491. package/src/spec/nitro/VideoPlayerSource.nitro.ts +18 -0
  492. package/src/spec/nitro/VideoViewViewManager.nitro.ts +92 -0
@@ -0,0 +1,55 @@
1
+ import type { HybridObject } from 'react-native-nitro-modules';
2
+ import type { TextTrack } from '../../core/types/TextTrack';
3
+ import type { VideoPlayerBase } from '../../core/types/VideoPlayerBase';
4
+ import type { VideoPlayerEventEmitter } from './VideoPlayerEventEmitter.nitro';
5
+ import type { VideoPlayerSource } from './VideoPlayerSource.nitro';
6
+ export interface VideoPlayer extends HybridObject<{
7
+ ios: 'swift';
8
+ android: 'kotlin';
9
+ }>, VideoPlayerBase {
10
+ readonly source: VideoPlayerSource;
11
+ readonly eventEmitter: VideoPlayerEventEmitter;
12
+ /**
13
+ * Show playback controls in the notifications area
14
+ *
15
+ * @note on Android, this can be overridden by {@linkcode VideoPlayer.playInBackground}, as Android requires
16
+ * a foreground service to show notifications while the app is in the background.
17
+ *
18
+ * @default false
19
+ */
20
+ showNotificationControls: boolean;
21
+ /**
22
+ * Replace the current source of the player.
23
+ * @param source - The new source of the video.
24
+ * @note If you want to clear the source, you can pass null. It has the same effect as {@link release}.
25
+ * see {@link VideoPlayerSourceBase}
26
+ */
27
+ replaceSourceAsync(source: VideoPlayerSource | null): Promise<void>;
28
+ /**
29
+ * Get all available text tracks for the current source.
30
+ * @returns Array of available text tracks
31
+ */
32
+ getAvailableTextTracks(): TextTrack[];
33
+ /**
34
+ * Select a text track to display.
35
+ * @param textTrack - Text track to select, or null to unselect current track
36
+ */
37
+ selectTextTrack(textTrack: TextTrack | null): void;
38
+ /**
39
+ * Releases the player's native resources and releases native state.
40
+ */
41
+ release(): void;
42
+ /**
43
+ * Capture the current video frame as a base64 encoded image.
44
+ * @returns A promise that resolves to the base64 encoded image string (PNG format).
45
+ * @note The image will be captured at the current playback position.
46
+ */
47
+ captureFrame(): Promise<string>;
48
+ }
49
+ export interface VideoPlayerFactory extends HybridObject<{
50
+ ios: 'swift';
51
+ android: 'kotlin';
52
+ }> {
53
+ createPlayer(source: VideoPlayerSource): VideoPlayer;
54
+ }
55
+ //# sourceMappingURL=VideoPlayer.nitro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoPlayer.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/spec/nitro/VideoPlayer.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,WAAW,WACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC,EACvD,eAAe;IAEjB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IAGnC,QAAQ,CAAC,YAAY,EAAE,uBAAuB,CAAC;IAE/C;;;;;;;OAOG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAElC;;;;;OAKG;IACH,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpE;;;OAGG;IACH,sBAAsB,IAAI,SAAS,EAAE,CAAC;IAEtC;;;OAGG;IACH,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC;IAEnD;;OAEG;IACH,OAAO,IAAI,IAAI,CAAC;IAEhB;;;;OAIG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,kBACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IACzD,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,WAAW,CAAC;CACtD"}
@@ -0,0 +1,150 @@
1
+ import type { HybridObject } from 'react-native-nitro-modules';
2
+ import type { BandwidthData, onLoadData, onLoadStartData, onPlaybackStateChangeData, onProgressData, onVolumeChangeData, TimedMetadata } from '../../core/types/Events';
3
+ import type { TextTrack } from '../../core/types/TextTrack';
4
+ import type { VideoPlayerStatus } from '../../core/types/VideoPlayerStatus';
5
+ export interface ListenerSubscription {
6
+ remove(): void;
7
+ }
8
+ export interface VideoPlayerEventEmitter extends HybridObject<{
9
+ ios: 'swift';
10
+ android: 'kotlin';
11
+ }> {
12
+ /**
13
+ * Adds a listener for the `onAudioBecomingNoisy` event.
14
+ * @see {@link VideoPlayerEvents.onAudioBecomingNoisy}
15
+ * @param listener - The listener to add.
16
+ * @returns A subscription object that can be used to remove the listener.
17
+ */
18
+ addOnAudioBecomingNoisyListener(listener: () => void): ListenerSubscription;
19
+ /**
20
+ * Adds a listener for the `onAudioFocusChange` event.
21
+ * @see {@link VideoPlayerEvents.onAudioFocusChange}
22
+ * @param listener - The listener to add.
23
+ * @returns A subscription object that can be used to remove the listener.
24
+ */
25
+ addOnAudioFocusChangeListener(listener: (hasAudioFocus: boolean) => void): ListenerSubscription;
26
+ /**
27
+ * Adds a listener for the `onBandwidthUpdate` event.
28
+ * @see {@link VideoPlayerEvents.onBandwidthUpdate}
29
+ * @param listener - The listener to add.
30
+ * @returns A subscription object that can be used to remove the listener.
31
+ */
32
+ addOnBandwidthUpdateListener(listener: (data: BandwidthData) => void): ListenerSubscription;
33
+ /**
34
+ * Adds a listener for the `onBuffer` event.
35
+ * @see {@link VideoPlayerEvents.onBuffer}
36
+ * @param listener - The listener to add.
37
+ * @returns A subscription object that can be used to remove the listener.
38
+ */
39
+ addOnBufferListener(listener: (buffering: boolean) => void): ListenerSubscription;
40
+ /**
41
+ * Adds a listener for the `onControlsVisibleChange` event.
42
+ * @see {@link VideoPlayerEvents.onControlsVisibleChange}
43
+ * @param listener - The listener to add.
44
+ * @returns A subscription object that can be used to remove the listener.
45
+ */
46
+ addOnControlsVisibleChangeListener(listener: (visible: boolean) => void): ListenerSubscription;
47
+ /**
48
+ * Adds a listener for the `onEnd` event.
49
+ * @see {@link VideoPlayerEvents.onEnd}
50
+ * @param listener - The listener to add.
51
+ * @returns A subscription object that can be used to remove the listener.
52
+ */
53
+ addOnEndListener(listener: () => void): ListenerSubscription;
54
+ /**
55
+ * Adds a listener for the `onExternalPlaybackChange` event.
56
+ * @see {@link VideoPlayerEvents.onExternalPlaybackChange}
57
+ * @param listener - The listener to add.
58
+ * @returns A subscription object that can be used to remove the listener.
59
+ */
60
+ addOnExternalPlaybackChangeListener(listener: (externalPlaybackActive: boolean) => void): ListenerSubscription;
61
+ /**
62
+ * Adds a listener for the `onLoad` event.
63
+ * @see {@link VideoPlayerEvents.onLoad}
64
+ * @param listener - The listener to add.
65
+ * @returns A subscription object that can be used to remove the listener.
66
+ */
67
+ addOnLoadListener(listener: (data: onLoadData) => void): ListenerSubscription;
68
+ /**
69
+ * Adds a listener for the `onLoadStart` event.
70
+ * @see {@link VideoPlayerEvents.onLoadStart}
71
+ * @param listener - The listener to add.
72
+ * @returns A subscription object that can be used to remove the listener.
73
+ */
74
+ addOnLoadStartListener(listener: (data: onLoadStartData) => void): ListenerSubscription;
75
+ /**
76
+ * Adds a listener for the `onPlaybackStateChange` event.
77
+ * @see {@link VideoPlayerEvents.onPlaybackStateChange}
78
+ * @param listener - The listener to add.
79
+ * @returns A subscription object that can be used to remove the listener.
80
+ */
81
+ addOnPlaybackStateChangeListener(listener: (data: onPlaybackStateChangeData) => void): ListenerSubscription;
82
+ /**
83
+ * Adds a listener for the `onPlaybackRateChange` event.
84
+ * @see {@link VideoPlayerEvents.onPlaybackRateChange}
85
+ * @param listener - The listener to add.
86
+ * @returns A subscription object that can be used to remove the listener.
87
+ */
88
+ addOnPlaybackRateChangeListener(listener: (rate: number) => void): ListenerSubscription;
89
+ /**
90
+ * Adds a listener for the `onProgress` event.
91
+ * @see {@link VideoPlayerEvents.onProgress}
92
+ * @param listener - The listener to add.
93
+ * @returns A subscription object that can be used to remove the listener.
94
+ */
95
+ addOnProgressListener(listener: (data: onProgressData) => void): ListenerSubscription;
96
+ /**
97
+ * Adds a listener for the `onReadyToDisplay` event.
98
+ * @see {@link VideoPlayerEvents.onReadyToDisplay}
99
+ * @param listener - The listener to add.
100
+ * @returns A subscription object that can be used to remove the listener.
101
+ */
102
+ addOnReadyToDisplayListener(listener: () => void): ListenerSubscription;
103
+ /**
104
+ * Adds a listener for the `onSeek` event.
105
+ * @see {@link VideoPlayerEvents.onSeek}
106
+ * @param listener - The listener to add.
107
+ * @returns A subscription object that can be used to remove the listener.
108
+ */
109
+ addOnSeekListener(listener: (position: number) => void): ListenerSubscription;
110
+ /**
111
+ * Adds a listener for the `onStatusChange` event.
112
+ * @see {@link VideoPlayerEvents.onStatusChange}
113
+ * @param listener - The listener to add.
114
+ * @returns A subscription object that can be used to remove the listener.
115
+ */
116
+ addOnStatusChangeListener(listener: (status: VideoPlayerStatus) => void): ListenerSubscription;
117
+ /**
118
+ * Adds a listener for the `onTimedMetadata` event.
119
+ * @see {@link VideoPlayerEvents.onTimedMetadata}
120
+ * @param listener - The listener to add.
121
+ * @returns A subscription object that can be used to remove the listener.
122
+ */
123
+ addOnTimedMetadataListener(listener: (data: TimedMetadata) => void): ListenerSubscription;
124
+ /**
125
+ * Adds a listener for the `onTextTrackDataChanged` event.
126
+ * @see {@link VideoPlayerEvents.onTextTrackDataChanged}
127
+ * @param listener - The listener to add.
128
+ * @returns A subscription object that can be used to remove the listener.
129
+ */
130
+ addOnTextTrackDataChangedListener(listener: (data: string[]) => void): ListenerSubscription;
131
+ /**
132
+ * Adds a listener for the `onTrackChange` event.
133
+ * @see {@link VideoPlayerEvents.onTrackChange}
134
+ * @param listener - The listener to add.
135
+ * @returns A subscription object that can be used to remove the listener.
136
+ */
137
+ addOnTrackChangeListener(listener: (track: TextTrack | null) => void): ListenerSubscription;
138
+ /**
139
+ * Adds a listener for the `onVolumeChange` event.
140
+ * @see {@link VideoPlayerEvents.onVolumeChange}
141
+ * @param listener - The listener to add.
142
+ * @returns A subscription object that can be used to remove the listener.
143
+ */
144
+ addOnVolumeChangeListener(listener: (data: onVolumeChangeData) => void): ListenerSubscription;
145
+ /**
146
+ * Clears all listeners from the event emitter.
147
+ */
148
+ clearAllListeners(): void;
149
+ }
150
+ //# sourceMappingURL=VideoPlayerEventEmitter.nitro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoPlayerEventEmitter.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/spec/nitro/VideoPlayerEventEmitter.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,yBAAyB,EACzB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAK5E,MAAM,WAAW,oBAAoB;IACnC,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,uBACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IACzD;;;;;OAKG;IACH,+BAA+B,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC;IAE5E;;;;;OAKG;IACH,6BAA6B,CAC3B,QAAQ,EAAE,CAAC,aAAa,EAAE,OAAO,KAAK,IAAI,GACzC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,4BAA4B,CAC1B,QAAQ,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,GACtC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,mBAAmB,CACjB,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,GACrC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,kCAAkC,CAChC,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GACnC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC;IAE7D;;;;;OAKG;IACH,mCAAmC,CACjC,QAAQ,EAAE,CAAC,sBAAsB,EAAE,OAAO,KAAK,IAAI,GAClD,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,iBAAiB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,oBAAoB,CAAC;IAE9E;;;;;OAKG;IACH,sBAAsB,CACpB,QAAQ,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,GACxC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,gCAAgC,CAC9B,QAAQ,EAAE,CAAC,IAAI,EAAE,yBAAyB,KAAK,IAAI,GAClD,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,+BAA+B,CAC7B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAC/B,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,qBAAqB,CACnB,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,GACvC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,2BAA2B,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC;IAExE;;;;;OAKG;IACH,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,oBAAoB,CAAC;IAE9E;;;;;OAKG;IACH,yBAAyB,CACvB,QAAQ,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,GAC5C,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,0BAA0B,CACxB,QAAQ,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,GACtC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,iCAAiC,CAC/B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,GACjC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,wBAAwB,CACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,GAC1C,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,yBAAyB,CACvB,QAAQ,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,GAC3C,oBAAoB,CAAC;IAExB;;OAEG;IACH,iBAAiB,IAAI,IAAI,CAAC;CAC3B"}
@@ -0,0 +1,21 @@
1
+ import type { HybridObject } from 'react-native-nitro-modules';
2
+ import type { NativeVideoConfig } from '../../core/types/VideoConfig';
3
+ import type { VideoPlayerSourceBase } from '../../core/types/VideoPlayerSourceBase';
4
+ /**
5
+ * A source for a {@link VideoPlayer}.
6
+ * Source cannot be changed after it is created. If you need to update the source, you need to create a new one.
7
+ * It provides functions to get information about the asset.
8
+ */
9
+ export interface VideoPlayerSource extends HybridObject<{
10
+ ios: 'swift';
11
+ android: 'kotlin';
12
+ }>, VideoPlayerSourceBase {
13
+ }
14
+ export interface VideoPlayerSourceFactory extends HybridObject<{
15
+ ios: 'swift';
16
+ android: 'kotlin';
17
+ }> {
18
+ fromUri(uri: string): VideoPlayerSource;
19
+ fromVideoConfig(config: NativeVideoConfig): VideoPlayerSource;
20
+ }
21
+ //# sourceMappingURL=VideoPlayerSource.nitro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoPlayerSource.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/spec/nitro/VideoPlayerSource.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAEpF;;;;GAIG;AACH,MAAM,WAAW,iBACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC,EACvD,qBAAqB;CAAG;AAE5B,MAAM,WAAW,wBACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IACzD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACxC,eAAe,CAAC,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CAAC;CAC/D"}
@@ -0,0 +1,75 @@
1
+ import type { HybridObject } from 'react-native-nitro-modules';
2
+ import type { ResizeMode } from '../../core/types/ResizeMode';
3
+ import type { VideoPlayer } from './VideoPlayer.nitro';
4
+ import type { ListenerSubscription } from './VideoPlayerEventEmitter.nitro';
5
+ export type SurfaceType = 'surface' | 'texture';
6
+ export interface VideoViewViewManager extends HybridObject<{
7
+ ios: 'swift';
8
+ android: 'kotlin';
9
+ }> {
10
+ player?: VideoPlayer;
11
+ controls: boolean;
12
+ pictureInPicture: boolean;
13
+ autoEnterPictureInPicture: boolean;
14
+ resizeMode: ResizeMode;
15
+ enterFullscreen(): void;
16
+ exitFullscreen(): void;
17
+ enterPictureInPicture(): void;
18
+ exitPictureInPicture(): void;
19
+ canEnterPictureInPicture(): boolean;
20
+ keepScreenAwake: boolean;
21
+ surfaceType: SurfaceType;
22
+ /**
23
+ * Adds a listener for the `onPictureInPictureChange` event.
24
+ * @see {@link VideoViewEvents.onPictureInPictureChange}
25
+ * @param listener - The listener to add.
26
+ * @returns A subscription object that can be used to remove the listener.
27
+ */
28
+ addOnPictureInPictureChangeListener(listener: (isInPictureInPicture: boolean) => void): ListenerSubscription;
29
+ /**
30
+ * Adds a listener for the `onFullscreenChange` event.
31
+ * @see {@link VideoViewEvents.onFullscreenChange}
32
+ * @param listener - The listener to add.
33
+ * @returns A subscription object that can be used to remove the listener.
34
+ */
35
+ addOnFullscreenChangeListener(listener: (fullscreen: boolean) => void): ListenerSubscription;
36
+ /**
37
+ * Adds a listener for the `willEnterFullscreen` event.
38
+ * @see {@link VideoViewEvents.willEnterFullscreen}
39
+ * @param listener - The listener to add.
40
+ * @returns A subscription object that can be used to remove the listener.
41
+ */
42
+ addWillEnterFullscreenListener(listener: () => void): ListenerSubscription;
43
+ /**
44
+ * Adds a listener for the `willExitFullscreen` event.
45
+ * @see {@link VideoViewEvents.willExitFullscreen}
46
+ * @param listener - The listener to add.
47
+ * @returns A subscription object that can be used to remove the listener.
48
+ */
49
+ addWillExitFullscreenListener(listener: () => void): ListenerSubscription;
50
+ /**
51
+ * Adds a listener for the `willEnterPictureInPicture` event.
52
+ * @see {@link VideoViewEvents.willEnterPictureInPicture}
53
+ * @param listener - The listener to add.
54
+ * @returns A subscription object that can be used to remove the listener.
55
+ */
56
+ addWillEnterPictureInPictureListener(listener: () => void): ListenerSubscription;
57
+ /**
58
+ * Adds a listener for the `willExitPictureInPicture` event.
59
+ * @see {@link VideoViewEvents.willExitPictureInPicture}
60
+ * @param listener - The listener to add.
61
+ * @returns A subscription object that can be used to remove the listener.
62
+ */
63
+ addWillExitPictureInPictureListener(listener: () => void): ListenerSubscription;
64
+ /**
65
+ * Clears all listeners from the event emitter.
66
+ */
67
+ clearAllListeners(): void;
68
+ }
69
+ export interface VideoViewViewManagerFactory extends HybridObject<{
70
+ ios: 'swift';
71
+ android: 'kotlin';
72
+ }> {
73
+ createViewManager(nitroId: number): VideoViewViewManager;
74
+ }
75
+ //# sourceMappingURL=VideoViewViewManager.nitro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VideoViewViewManager.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/spec/nitro/VideoViewViewManager.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAE5E,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAGhD,MAAM,WAAW,oBACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IACzD,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,EAAE,OAAO,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,IAAI,IAAI,CAAC;IACxB,cAAc,IAAI,IAAI,CAAC;IACvB,qBAAqB,IAAI,IAAI,CAAC;IAC9B,oBAAoB,IAAI,IAAI,CAAC;IAC7B,wBAAwB,IAAI,OAAO,CAAC;IACpC,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IAIzB;;;;;OAKG;IACH,mCAAmC,CACjC,QAAQ,EAAE,CAAC,oBAAoB,EAAE,OAAO,KAAK,IAAI,GAChD,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,6BAA6B,CAC3B,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,GACtC,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,8BAA8B,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC;IAE3E;;;;;OAKG;IACH,6BAA6B,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC;IAE1E;;;;;OAKG;IACH,oCAAoC,CAClC,QAAQ,EAAE,MAAM,IAAI,GACnB,oBAAoB,CAAC;IAExB;;;;;OAKG;IACH,mCAAmC,CACjC,QAAQ,EAAE,MAAM,IAAI,GACnB,oBAAoB,CAAC;IAExB;;OAEG;IACH,iBAAiB,IAAI,IAAI,CAAC;CAC3B;AAGD,MAAM,WAAW,2BACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IACzD,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,CAAC;CAC1D"}
package/nitro.json ADDED
@@ -0,0 +1,47 @@
1
+ {
2
+ "android": {
3
+ "androidCxxLibName": "UnifiedPlayer",
4
+ "androidNamespace": [
5
+ "unifiedplayer"
6
+ ]
7
+ },
8
+ "cxxNamespace": [
9
+ "unifiedplayer"
10
+ ],
11
+ "ios": {
12
+ "iosModuleName": "UnifiedPlayer"
13
+ },
14
+ "ignorePaths": ["drm-plugin", "node_modules"],
15
+ "autolinking": {
16
+ "VideoPlayerFactory": {
17
+ "ios": {
18
+ "language": "swift",
19
+ "implementationClassName": "HybridVideoPlayerFactory"
20
+ },
21
+ "android": {
22
+ "language": "kotlin",
23
+ "implementationClassName": "HybridVideoPlayerFactory"
24
+ }
25
+ },
26
+ "VideoPlayerSourceFactory": {
27
+ "ios": {
28
+ "language": "swift",
29
+ "implementationClassName": "HybridVideoPlayerSourceFactory"
30
+ },
31
+ "android": {
32
+ "language": "kotlin",
33
+ "implementationClassName": "HybridVideoPlayerSourceFactory"
34
+ }
35
+ },
36
+ "VideoViewViewManagerFactory": {
37
+ "ios": {
38
+ "language": "swift",
39
+ "implementationClassName": "HybridVideoViewViewManagerFactory"
40
+ },
41
+ "android": {
42
+ "language": "kotlin",
43
+ "implementationClassName": "HybridVideoViewViewManagerFactory"
44
+ }
45
+ }
46
+ }
47
+ }
@@ -0,0 +1,95 @@
1
+ #
2
+ # UnifiedPlayer+autolinking.cmake
3
+ # This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ # https://github.com/mrousavy/nitro
5
+ # Copyright © Marc Rousavy @ Margelo
6
+ #
7
+
8
+ # This is a CMake file that adds all files generated by Nitrogen
9
+ # to the current CMake project.
10
+ #
11
+ # To use it, add this to your CMakeLists.txt:
12
+ # ```cmake
13
+ # include(${CMAKE_SOURCE_DIR}/../nitrogen/generated/android/UnifiedPlayer+autolinking.cmake)
14
+ # ```
15
+
16
+ # Define a flag to check if we are building properly
17
+ add_definitions(-DBUILDING_UNIFIEDPLAYER_WITH_GENERATED_CMAKE_PROJECT)
18
+
19
+ # Enable Raw Props parsing in react-native (for Nitro Views)
20
+ add_definitions(-DRN_SERIALIZABLE_STATE)
21
+
22
+ # Add all headers that were generated by Nitrogen
23
+ include_directories(
24
+ "../nitrogen/generated/shared/c++"
25
+ "../nitrogen/generated/android/c++"
26
+ "../nitrogen/generated/android/"
27
+ )
28
+
29
+ # Add all .cpp sources that were generated by Nitrogen
30
+ target_sources(
31
+ # CMake project name (Android C++ library name)
32
+ UnifiedPlayer PRIVATE
33
+ # Autolinking Setup
34
+ ../nitrogen/generated/android/UnifiedPlayerOnLoad.cpp
35
+ # Shared Nitrogen C++ sources
36
+ ../nitrogen/generated/shared/c++/HybridVideoPlayerSpec.cpp
37
+ ../nitrogen/generated/shared/c++/HybridVideoPlayerFactorySpec.cpp
38
+ ../nitrogen/generated/shared/c++/HybridVideoPlayerEventEmitterSpec.cpp
39
+ ../nitrogen/generated/shared/c++/HybridVideoPlayerSourceSpec.cpp
40
+ ../nitrogen/generated/shared/c++/HybridVideoPlayerSourceFactorySpec.cpp
41
+ ../nitrogen/generated/shared/c++/HybridVideoViewViewManagerSpec.cpp
42
+ ../nitrogen/generated/shared/c++/HybridVideoViewViewManagerFactorySpec.cpp
43
+ # Android-specific Nitrogen C++ sources
44
+ ../nitrogen/generated/android/c++/JHybridVideoPlayerSpec.cpp
45
+ ../nitrogen/generated/android/c++/JVariant_NullType_HybridVideoPlayerSourceSpec.cpp
46
+ ../nitrogen/generated/android/c++/JVariant_NullType_TextTrack.cpp
47
+ ../nitrogen/generated/android/c++/JHybridVideoPlayerFactorySpec.cpp
48
+ ../nitrogen/generated/android/c++/JHybridVideoPlayerEventEmitterSpec.cpp
49
+ ../nitrogen/generated/android/c++/JHybridVideoPlayerSourceSpec.cpp
50
+ ../nitrogen/generated/android/c++/JHybridVideoPlayerSourceFactorySpec.cpp
51
+ ../nitrogen/generated/android/c++/JHybridVideoViewViewManagerSpec.cpp
52
+ ../nitrogen/generated/android/c++/JHybridVideoViewViewManagerFactorySpec.cpp
53
+ )
54
+
55
+ # From node_modules/react-native/ReactAndroid/cmake-utils/folly-flags.cmake
56
+ # Used in node_modules/react-native/ReactAndroid/cmake-utils/ReactNative-application.cmake
57
+ target_compile_definitions(
58
+ UnifiedPlayer PRIVATE
59
+ -DFOLLY_NO_CONFIG=1
60
+ -DFOLLY_HAVE_CLOCK_GETTIME=1
61
+ -DFOLLY_USE_LIBCPP=1
62
+ -DFOLLY_CFG_NO_COROUTINES=1
63
+ -DFOLLY_MOBILE=1
64
+ -DFOLLY_HAVE_RECVMMSG=1
65
+ -DFOLLY_HAVE_PTHREAD=1
66
+ # Once we target android-23 above, we can comment
67
+ # the following line. NDK uses GNU style stderror_r() after API 23.
68
+ -DFOLLY_HAVE_XSI_STRERROR_R=1
69
+ )
70
+
71
+ # Add all libraries required by the generated specs
72
+ find_package(fbjni REQUIRED) # <-- Used for communication between Java <-> C++
73
+ find_package(ReactAndroid REQUIRED) # <-- Used to set up React Native bindings (e.g. CallInvoker/TurboModule)
74
+ find_package(react-native-nitro-modules REQUIRED) # <-- Used to create all HybridObjects and use the Nitro core library
75
+
76
+ # Link all libraries together
77
+ target_link_libraries(
78
+ UnifiedPlayer
79
+ fbjni::fbjni # <-- Facebook C++ JNI helpers
80
+ ReactAndroid::jsi # <-- RN: JSI
81
+ react-native-nitro-modules::NitroModules # <-- NitroModules Core :)
82
+ )
83
+
84
+ # Link react-native (different prefab between RN 0.75 and RN 0.76)
85
+ if(ReactAndroid_VERSION_MINOR GREATER_EQUAL 76)
86
+ target_link_libraries(
87
+ UnifiedPlayer
88
+ ReactAndroid::reactnative # <-- RN: Native Modules umbrella prefab
89
+ )
90
+ else()
91
+ target_link_libraries(
92
+ UnifiedPlayer
93
+ ReactAndroid::react_nativemodule_core # <-- RN: TurboModules Core
94
+ )
95
+ endif()
@@ -0,0 +1,27 @@
1
+ ///
2
+ /// UnifiedPlayer+autolinking.gradle
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ /// This is a Gradle file that adds all files generated by Nitrogen
9
+ /// to the current Gradle project.
10
+ ///
11
+ /// To use it, add this to your build.gradle:
12
+ /// ```gradle
13
+ /// apply from: '../nitrogen/generated/android/UnifiedPlayer+autolinking.gradle'
14
+ /// ```
15
+
16
+ logger.warn("[NitroModules] 🔥 UnifiedPlayer is boosted by nitro!")
17
+
18
+ android {
19
+ sourceSets {
20
+ main {
21
+ java.srcDirs += [
22
+ // Nitrogen files
23
+ "${project.projectDir}/../nitrogen/generated/android/kotlin"
24
+ ]
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,122 @@
1
+ ///
2
+ /// UnifiedPlayerOnLoad.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #ifndef BUILDING_UNIFIEDPLAYER_WITH_GENERATED_CMAKE_PROJECT
9
+ #error UnifiedPlayerOnLoad.cpp is not being built with the autogenerated CMakeLists.txt project. Is a different CMakeLists.txt building this?
10
+ #endif
11
+
12
+ #include "UnifiedPlayerOnLoad.hpp"
13
+
14
+ #include <jni.h>
15
+ #include <fbjni/fbjni.h>
16
+ #include <NitroModules/HybridObjectRegistry.hpp>
17
+
18
+ #include "JHybridVideoPlayerSpec.hpp"
19
+ #include "JHybridVideoPlayerFactorySpec.hpp"
20
+ #include "JHybridVideoPlayerEventEmitterSpec.hpp"
21
+ #include "JFunc_void.hpp"
22
+ #include "JFunc_void_bool.hpp"
23
+ #include "JFunc_void_BandwidthData.hpp"
24
+ #include "JFunc_void_onLoadData.hpp"
25
+ #include "JFunc_void_onLoadStartData.hpp"
26
+ #include "JFunc_void_onPlaybackStateChangeData.hpp"
27
+ #include "JFunc_void_double.hpp"
28
+ #include "JFunc_void_onProgressData.hpp"
29
+ #include "JFunc_void_VideoPlayerStatus.hpp"
30
+ #include "JFunc_void_TimedMetadata.hpp"
31
+ #include "JFunc_void_std__vector_std__string_.hpp"
32
+ #include "JFunc_void_std__optional_std__variant_nitro__NullType__TextTrack__.hpp"
33
+ #include "JFunc_void_onVolumeChangeData.hpp"
34
+ #include "JHybridVideoPlayerSourceSpec.hpp"
35
+ #include "JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_std__string_____OnGetLicensePayload.hpp"
36
+ #include "JHybridVideoPlayerSourceFactorySpec.hpp"
37
+ #include "JHybridVideoViewViewManagerSpec.hpp"
38
+ #include "JHybridVideoViewViewManagerFactorySpec.hpp"
39
+ #include <NitroModules/DefaultConstructableObject.hpp>
40
+
41
+ namespace margelo::nitro::unifiedplayer {
42
+
43
+ int initialize(JavaVM* vm) {
44
+ return facebook::jni::initialize(vm, []() {
45
+ ::margelo::nitro::unifiedplayer::registerAllNatives();
46
+ });
47
+ }
48
+
49
+ struct JHybridVideoPlayerFactorySpecImpl: public jni::JavaClass<JHybridVideoPlayerFactorySpecImpl, JHybridVideoPlayerFactorySpec::JavaPart> {
50
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/unifiedplayer/HybridVideoPlayerFactory;";
51
+ static std::shared_ptr<JHybridVideoPlayerFactorySpec> create() {
52
+ static const auto constructorFn = javaClassStatic()->getConstructor<JHybridVideoPlayerFactorySpecImpl::javaobject()>();
53
+ jni::local_ref<JHybridVideoPlayerFactorySpec::JavaPart> javaPart = javaClassStatic()->newObject(constructorFn);
54
+ return javaPart->getJHybridVideoPlayerFactorySpec();
55
+ }
56
+ };
57
+ struct JHybridVideoPlayerSourceFactorySpecImpl: public jni::JavaClass<JHybridVideoPlayerSourceFactorySpecImpl, JHybridVideoPlayerSourceFactorySpec::JavaPart> {
58
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/unifiedplayer/HybridVideoPlayerSourceFactory;";
59
+ static std::shared_ptr<JHybridVideoPlayerSourceFactorySpec> create() {
60
+ static const auto constructorFn = javaClassStatic()->getConstructor<JHybridVideoPlayerSourceFactorySpecImpl::javaobject()>();
61
+ jni::local_ref<JHybridVideoPlayerSourceFactorySpec::JavaPart> javaPart = javaClassStatic()->newObject(constructorFn);
62
+ return javaPart->getJHybridVideoPlayerSourceFactorySpec();
63
+ }
64
+ };
65
+ struct JHybridVideoViewViewManagerFactorySpecImpl: public jni::JavaClass<JHybridVideoViewViewManagerFactorySpecImpl, JHybridVideoViewViewManagerFactorySpec::JavaPart> {
66
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/unifiedplayer/HybridVideoViewViewManagerFactory;";
67
+ static std::shared_ptr<JHybridVideoViewViewManagerFactorySpec> create() {
68
+ static const auto constructorFn = javaClassStatic()->getConstructor<JHybridVideoViewViewManagerFactorySpecImpl::javaobject()>();
69
+ jni::local_ref<JHybridVideoViewViewManagerFactorySpec::JavaPart> javaPart = javaClassStatic()->newObject(constructorFn);
70
+ return javaPart->getJHybridVideoViewViewManagerFactorySpec();
71
+ }
72
+ };
73
+
74
+ void registerAllNatives() {
75
+ using namespace margelo::nitro;
76
+ using namespace margelo::nitro::unifiedplayer;
77
+
78
+ // Register native JNI methods
79
+ margelo::nitro::unifiedplayer::JHybridVideoPlayerSpec::CxxPart::registerNatives();
80
+ margelo::nitro::unifiedplayer::JHybridVideoPlayerFactorySpec::CxxPart::registerNatives();
81
+ margelo::nitro::unifiedplayer::JHybridVideoPlayerEventEmitterSpec::CxxPart::registerNatives();
82
+ margelo::nitro::unifiedplayer::JFunc_void_cxx::registerNatives();
83
+ margelo::nitro::unifiedplayer::JFunc_void_bool_cxx::registerNatives();
84
+ margelo::nitro::unifiedplayer::JFunc_void_BandwidthData_cxx::registerNatives();
85
+ margelo::nitro::unifiedplayer::JFunc_void_onLoadData_cxx::registerNatives();
86
+ margelo::nitro::unifiedplayer::JFunc_void_onLoadStartData_cxx::registerNatives();
87
+ margelo::nitro::unifiedplayer::JFunc_void_onPlaybackStateChangeData_cxx::registerNatives();
88
+ margelo::nitro::unifiedplayer::JFunc_void_double_cxx::registerNatives();
89
+ margelo::nitro::unifiedplayer::JFunc_void_onProgressData_cxx::registerNatives();
90
+ margelo::nitro::unifiedplayer::JFunc_void_VideoPlayerStatus_cxx::registerNatives();
91
+ margelo::nitro::unifiedplayer::JFunc_void_TimedMetadata_cxx::registerNatives();
92
+ margelo::nitro::unifiedplayer::JFunc_void_std__vector_std__string__cxx::registerNatives();
93
+ margelo::nitro::unifiedplayer::JFunc_void_std__optional_std__variant_nitro__NullType__TextTrack___cxx::registerNatives();
94
+ margelo::nitro::unifiedplayer::JFunc_void_onVolumeChangeData_cxx::registerNatives();
95
+ margelo::nitro::unifiedplayer::JHybridVideoPlayerSourceSpec::CxxPart::registerNatives();
96
+ margelo::nitro::unifiedplayer::JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_std__string_____OnGetLicensePayload_cxx::registerNatives();
97
+ margelo::nitro::unifiedplayer::JHybridVideoPlayerSourceFactorySpec::CxxPart::registerNatives();
98
+ margelo::nitro::unifiedplayer::JHybridVideoViewViewManagerSpec::CxxPart::registerNatives();
99
+ margelo::nitro::unifiedplayer::JHybridVideoViewViewManagerFactorySpec::CxxPart::registerNatives();
100
+
101
+ // Register Nitro Hybrid Objects
102
+ HybridObjectRegistry::registerHybridObjectConstructor(
103
+ "VideoPlayerFactory",
104
+ []() -> std::shared_ptr<HybridObject> {
105
+ return JHybridVideoPlayerFactorySpecImpl::create();
106
+ }
107
+ );
108
+ HybridObjectRegistry::registerHybridObjectConstructor(
109
+ "VideoPlayerSourceFactory",
110
+ []() -> std::shared_ptr<HybridObject> {
111
+ return JHybridVideoPlayerSourceFactorySpecImpl::create();
112
+ }
113
+ );
114
+ HybridObjectRegistry::registerHybridObjectConstructor(
115
+ "VideoViewViewManagerFactory",
116
+ []() -> std::shared_ptr<HybridObject> {
117
+ return JHybridVideoViewViewManagerFactorySpecImpl::create();
118
+ }
119
+ );
120
+ }
121
+
122
+ } // namespace margelo::nitro::unifiedplayer
@@ -0,0 +1,34 @@
1
+ ///
2
+ /// UnifiedPlayerOnLoad.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include <jni.h>
9
+ #include <functional>
10
+ #include <NitroModules/NitroDefines.hpp>
11
+
12
+ namespace margelo::nitro::unifiedplayer {
13
+
14
+ [[deprecated("Use registerNatives() instead.")]]
15
+ int initialize(JavaVM* vm);
16
+
17
+ /**
18
+ * Register the native (C++) part of UnifiedPlayer, and autolinks all Hybrid Objects.
19
+ * Call this in your `JNI_OnLoad` function (probably inside `cpp-adapter.cpp`),
20
+ * inside a `facebook::jni::initialize(vm, ...)` call.
21
+ * Example:
22
+ * ```cpp (cpp-adapter.cpp)
23
+ * JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) {
24
+ * return facebook::jni::initialize(vm, []() {
25
+ * // register all UnifiedPlayer HybridObjects
26
+ * margelo::nitro::unifiedplayer::registerNatives();
27
+ * // any other custom registrations go here.
28
+ * });
29
+ * }
30
+ * ```
31
+ */
32
+ void registerAllNatives();
33
+
34
+ } // namespace margelo::nitro::unifiedplayer