bitmovin-player-react-native 1.20.1 → 1.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/CHANGELOG.md +116 -85
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/com/bitmovin/player/reactnative/PlayerModule.kt +4 -0
  4. package/android/src/main/java/com/bitmovin/player/reactnative/converter/JsonConverter.kt +59 -0
  5. package/build/components/PlayerView/index.d.ts +1 -1
  6. package/build/components/PlayerView/index.d.ts.map +1 -1
  7. package/build/components/PlayerView/index.js +11 -3
  8. package/build/components/PlayerView/index.js.map +1 -1
  9. package/build/components/PlayerView/properties.d.ts +8 -0
  10. package/build/components/PlayerView/properties.d.ts.map +1 -1
  11. package/build/components/PlayerView/properties.js.map +1 -1
  12. package/build/events.d.ts +97 -4
  13. package/build/events.d.ts.map +1 -1
  14. package/build/events.js.map +1 -1
  15. package/build/mediaControlConfig.d.ts +0 -2
  16. package/build/mediaControlConfig.d.ts.map +1 -1
  17. package/build/mediaControlConfig.js.map +1 -1
  18. package/build/modules/PlayerModule.d.ts +4 -0
  19. package/build/modules/PlayerModule.d.ts.map +1 -1
  20. package/build/modules/PlayerModule.js.map +1 -1
  21. package/build/player.d.ts +7 -0
  22. package/build/player.d.ts.map +1 -1
  23. package/build/player.js +13 -0
  24. package/build/player.js.map +1 -1
  25. package/build/tweaksConfig.d.ts +0 -13
  26. package/build/tweaksConfig.d.ts.map +1 -1
  27. package/build/tweaksConfig.js.map +1 -1
  28. package/ios/PlayerModule.swift +5 -0
  29. package/ios/RCTConvert+BitmovinPlayer.swift +0 -5
  30. package/ios/RNBitmovinPlayer.podspec +1 -1
  31. package/package.json +2 -1
  32. package/plugin/build/withAppGradleDependencies.js +90 -31
  33. package/plugin/src/withAppGradleDependencies.ts +157 -39
  34. package/scripts/test-with-app-gradle-dependencies.js +150 -0
  35. package/src/components/PlayerView/index.tsx +13 -2
  36. package/src/components/PlayerView/properties.ts +9 -0
  37. package/src/events.ts +96 -4
  38. package/src/mediaControlConfig.ts +0 -2
  39. package/src/modules/PlayerModule.ts +5 -0
  40. package/src/player.ts +16 -0
  41. package/src/tweaksConfig.ts +0 -13
package/CHANGELOG.md CHANGED
@@ -1,5 +1,36 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.22.0] - 2026-07-23
4
+
5
+ ### Added
6
+
7
+ - `PlayerViewProps.onPlayerViewReady` callback fired once after the player is initialized and the native view is mounted
8
+
9
+ ### Changed
10
+
11
+ - Update Bitmovin's native Android SDK version to [`3.159.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31590)
12
+ - Update Bitmovin's native iOS SDK version to [`3.117.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31170)
13
+
14
+ ## [1.21.0] - 2026-06-26
15
+
16
+ ### Added
17
+
18
+ - Android: Expose normalized cue layout data on `CueEnterEvent` and `CueExitEvent` via `layout` (`line`, `lineAlign`, `position`, `positionAlign`, `size`, `textAlign`, `writingMode`) and `html`
19
+ - iOS: `Player.showAirPlayTargetPicker()` to display the system AirPlay route selection menu
20
+
21
+ ### Fixed
22
+
23
+ - Android: Expo config plugin now enables core library desugaring independently from Cast and offline features
24
+
25
+ ### Removed
26
+
27
+ - iOS: `TweaksConfig.updatesNowPlayingInfoCenter`. Use `MediaControlConfig.isEnabled` to control the Now Playing information instead
28
+
29
+ ### Changed
30
+
31
+ - Update Bitmovin's native Android SDK version to [`3.155.1+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31551)
32
+ - Update Bitmovin's native iOS SDK version to [`3.115.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31150)
33
+
3
34
  ## [1.20.1] - 2026-06-12
4
35
 
5
36
  ### Fixed
@@ -15,8 +46,8 @@
15
46
 
16
47
  ### Changed
17
48
 
18
- - Update Bitmovin's native Android SDK version to `3.154.0+jason`
19
- - Update Bitmovin's native iOS SDK version to `3.114.1`
49
+ - Update Bitmovin's native Android SDK version to [`3.154.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31540)
50
+ - Update Bitmovin's native iOS SDK version to [`3.114.1`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31141)
20
51
 
21
52
  ### Fixed
22
53
 
@@ -30,8 +61,8 @@
30
61
 
31
62
  ### Changed
32
63
 
33
- - Update Bitmovin's native iOS SDK version to `3.113.0`
34
- - Update Bitmovin's native Android SDK version to `3.152.0+jason`
64
+ - Update Bitmovin's native iOS SDK version to [`3.113.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31130)
65
+ - Update Bitmovin's native Android SDK version to [`3.152.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31520)
35
66
 
36
67
  ## [1.18.0] - 2026-05-01
37
68
 
@@ -42,8 +73,8 @@
42
73
 
43
74
  ### Changed
44
75
 
45
- - Update Bitmovin's native Android SDK version to `3.151.0+jason`
46
- - Update Bitmovin's native iOS SDK version to `3.112.0`
76
+ - Update Bitmovin's native Android SDK version to [`3.151.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31510)
77
+ - Update Bitmovin's native iOS SDK version to [`3.112.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31120)
47
78
  - Android: Kotlin version to `2.2.20`
48
79
  - Update Expo SDK version to `54.0.34`
49
80
 
@@ -51,7 +82,7 @@
51
82
 
52
83
  ### Changed
53
84
 
54
- - Update Bitmovin's native Android SDK version to `3.149.0+jason`
85
+ - Update Bitmovin's native Android SDK version to [`3.149.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31490)
55
86
  - Update Expo SDK version to `54.0.33` and React Native version to `0.81.5`
56
87
  - Minimum supported Expo SDK version is now `54`
57
88
  - Minimum supported React Native version is now `0.81.5`
@@ -65,7 +96,7 @@
65
96
  ### Changed
66
97
 
67
98
  - `DebugConfig.setDebugLoggingEnabled` now also controls JS-side debug logging; `console.log` calls in the `Network` and `Drm` modules are suppressed unless debug logging is enabled
68
- - Update Bitmovin's native iOS SDK version to `3.111.0`
99
+ - Update Bitmovin's native iOS SDK version to [`3.111.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31110)
69
100
 
70
101
  ### Fixed
71
102
 
@@ -81,7 +112,7 @@
81
112
 
82
113
  ### Changed
83
114
 
84
- - Update Bitmovin's native iOS SDK version to `3.110.0`
115
+ - Update Bitmovin's native iOS SDK version to [`3.110.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31100)
85
116
 
86
117
  ### Fixed
87
118
 
@@ -95,14 +126,14 @@
95
126
 
96
127
  ### Changed
97
128
 
98
- - Update Bitmovin's native iOS SDK version to `3.109.0`
99
- - Update Bitmovin's native Android SDK version to `3.146.0+jason`
129
+ - Update Bitmovin's native iOS SDK version to [`3.109.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31090)
130
+ - Update Bitmovin's native Android SDK version to [`3.146.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31460)
100
131
 
101
132
  ## [1.13.0] - 2026-03-13
102
133
 
103
134
  ### Changed
104
135
 
105
- - Update Bitmovin's native Android SDK version to `3.145.0+jason`
136
+ - Update Bitmovin's native Android SDK version to [`3.145.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31450)
106
137
 
107
138
  ## [1.12.0] - 2026-03-13
108
139
 
@@ -114,15 +145,15 @@
114
145
 
115
146
  ### Changed
116
147
 
117
- - Update Bitmovin's native Android SDK version to `3.144.0+jason`
148
+ - Update Bitmovin's native Android SDK version to [`3.144.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31440)
118
149
  - Update Expo SDK version to `53.0.27`
119
150
 
120
151
  ## [1.10.0] - 2026-02-27
121
152
 
122
153
  ### Changed
123
154
 
124
- - Update Bitmovin's native iOS SDK version to `3.108.1`
125
- - Update Bitmovin's native Android SDK version to `3.143.0+jason`
155
+ - Update Bitmovin's native iOS SDK version to [`3.108.1`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31081)
156
+ - Update Bitmovin's native Android SDK version to [`3.143.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31430)
126
157
  - Update Expo SDK version to `53.0.26`
127
158
 
128
159
  ### Fixed
@@ -152,8 +183,8 @@
152
183
  - If you have no UI customizations, no action is required; the new UI is used automatically
153
184
  - If you ship a custom v3 bundle (even if it still uses the legacy v3 factory names), [migrate to UI v4](https://developer.bitmovin.com/playback/reference/migration-guide-v3-to-v4) or set a legacy factory explicitly via `new CustomUi('<legacy UIFactory function>')` and keep loading the v3 bundle
154
185
  - iOS: When re-attaching a different Player to an existing PlayerView, fullscreen and Picture-in-Picture are exited before the swap
155
- - Update Bitmovin's native iOS SDK version to `3.107.0`
156
- - Update Bitmovin's native Android SDK version to `3.141.0+jason`
186
+ - Update Bitmovin's native iOS SDK version to [`3.107.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31070)
187
+ - Update Bitmovin's native Android SDK version to [`3.141.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31410)
157
188
 
158
189
  ### Fixed
159
190
 
@@ -165,8 +196,8 @@
165
196
 
166
197
  ### Changed
167
198
 
168
- - Update Bitmovin's native Android SDK version to `3.140.1+jason`
169
- - Update Bitmovin's native iOS SDK version to `3.106.0`
199
+ - Update Bitmovin's native Android SDK version to [`3.140.1+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31401)
200
+ - Update Bitmovin's native iOS SDK version to [`3.106.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31060)
170
201
  - iOS: `appId` property from Expo config `Features.googleCastSDK.ios` object is now used to initialize Cast receiver application ID
171
202
 
172
203
  ### Fixed
@@ -187,9 +218,9 @@
187
218
 
188
219
  ### Changed
189
220
 
190
- - Update Bitmovin's native Android SDK version to `3.138.0+jason`
221
+ - Update Bitmovin's native Android SDK version to [`3.138.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31380)
191
222
  - Update IMA SDK dependency on Android to `3.38.0`
192
- - Update Bitmovin's native iOS SDK version to `3.105.0`
223
+ - Update Bitmovin's native iOS SDK version to [`3.105.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31050)
193
224
  - Update the Google Cast iOS Sender SDK used by the example app to `4.8.4`
194
225
 
195
226
  ## [1.6.0] - 2025-12-11
@@ -201,7 +232,7 @@
201
232
 
202
233
  ### Changed
203
234
 
204
- - Update Bitmovin's native Android SDK version to `3.135.0+jason`
235
+ - Update Bitmovin's native Android SDK version to [`3.135.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31350)
205
236
 
206
237
  ## [1.5.0] - 2025-12-05
207
238
 
@@ -215,8 +246,8 @@
215
246
 
216
247
  ### Changed
217
248
 
218
- - Update Bitmovin's native Android SDK version to `3.134.0+jason`
219
- - Update Bitmovin's native iOS SDK version to `3.102.0`
249
+ - Update Bitmovin's native Android SDK version to [`3.134.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31340)
250
+ - Update Bitmovin's native iOS SDK version to [`3.102.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#31020)
220
251
  - When no subtitle is selected on iOS/tvOS, it returns `null` instead of a track with identifier `off` to align with the Android Player SDK behavior
221
252
  - `SubtitleChangedEvent`'s properties of `oldSubtitleTrack` and `newSubtitleTrack` are now optional to align with the native Player SDKs
222
253
 
@@ -229,8 +260,8 @@
229
260
 
230
261
  ### Changed
231
262
 
232
- - Update Bitmovin's native Android SDK version to `3.132.1+jason`
233
- - Update Bitmovin's native iOS SDK version to `3.98.0`
263
+ - Update Bitmovin's native Android SDK version to [`3.132.1+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31321)
264
+ - Update Bitmovin's native iOS SDK version to [`3.98.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3980)
234
265
 
235
266
  ### Fixed
236
267
 
@@ -253,7 +284,7 @@
253
284
 
254
285
  ### Changed
255
286
 
256
- - Update Bitmovin's native Android SDK version to `3.131.0+jason`
287
+ - Update Bitmovin's native Android SDK version to [`3.131.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31310)
257
288
 
258
289
  ### Fixed
259
290
 
@@ -263,8 +294,8 @@
263
294
 
264
295
  ### Changed
265
296
 
266
- - Update Bitmovin's native iOS SDK version to `3.97.2`
267
- - Update Bitmovin's native Android SDK version to `3.128.0+jason`
297
+ - Update Bitmovin's native iOS SDK version to [`3.97.2`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3972)
298
+ - Update Bitmovin's native Android SDK version to [`3.128.0+jason`](https://developer.bitmovin.com/playback/docs/release-notes-android#31280)
268
299
  - Update IMA SDK dependency on iOS to `3.26.1`
269
300
  - Update IMA SDK dependency on tvOS to `4.15.1`
270
301
  - Update IMA SDK dependency on Android to `3.37.0`
@@ -273,8 +304,8 @@
273
304
 
274
305
  ### Changed
275
306
 
276
- - Update Bitmovin's native Android SDK version to `3.123.0`
277
- - Update Bitmovin's native iOS SDK version to `3.94.1`
307
+ - Update Bitmovin's native Android SDK version to [`3.123.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#31230)
308
+ - Update Bitmovin's native iOS SDK version to [`3.94.1`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3941)
278
309
 
279
310
  ### Fixed
280
311
 
@@ -304,8 +335,8 @@
304
335
 
305
336
  ### Changed
306
337
 
307
- - Update Bitmovin's native Android SDK version to `3.118.0`
308
- - Update Bitmovin's native iOS SDK version to `3.93.0`
338
+ - Update Bitmovin's native Android SDK version to [`3.118.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#31180)
339
+ - Update Bitmovin's native iOS SDK version to [`3.93.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3930)
309
340
  - Android: Add null safety checks to `ReadableMap`/`ReadableArray` calls in `JsonConverter`
310
341
 
311
342
  ### Removed
@@ -320,15 +351,15 @@
320
351
 
321
352
  ### Changed
322
353
 
323
- - Update Bitmovin's native Android SDK version to `3.115.0`
324
- - Update Bitmovin's native iOS SDK version to `3.92.0`
354
+ - Update Bitmovin's native Android SDK version to [`3.115.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#31150)
355
+ - Update Bitmovin's native iOS SDK version to [`3.92.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3920)
325
356
 
326
357
  ## [0.42.0] - 2025-06-02
327
358
 
328
359
  ### Changed
329
360
 
330
- - Update Bitmovin's native Android SDK version to `3.112.0`
331
- - Update Bitmovin's native iOS SDK version to `3.90.0`
361
+ - Update Bitmovin's native Android SDK version to [`3.112.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#31120)
362
+ - Update Bitmovin's native iOS SDK version to [`3.90.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3900)
332
363
 
333
364
  ### Added
334
365
 
@@ -352,8 +383,8 @@
352
383
 
353
384
  ### Changed
354
385
 
355
- - Update Bitmovin's native Android SDK version to `3.104.2`
356
- - Update Bitmovin's native iOS SDK version to `3.85.2`
386
+ - Update Bitmovin's native Android SDK version to [`3.104.2`](https://developer.bitmovin.com/playback/docs/release-notes-android#31042)
387
+ - Update Bitmovin's native iOS SDK version to [`3.85.2`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3852)
357
388
 
358
389
  ## [0.39.0] - 2025-03-07
359
390
 
@@ -365,8 +396,8 @@
365
396
 
366
397
  ### Changed
367
398
 
368
- - Update Bitmovin's native Android SDK version to `3.104.1`
369
- - Update Bitmovin's native iOS SDK version to `3.85.0`
399
+ - Update Bitmovin's native Android SDK version to [`3.104.1`](https://developer.bitmovin.com/playback/docs/release-notes-android#31041)
400
+ - Update Bitmovin's native iOS SDK version to [`3.85.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3850)
370
401
 
371
402
  ## [0.37.0] - 2025-01-17
372
403
 
@@ -378,7 +409,7 @@
378
409
 
379
410
  ### Changed
380
411
 
381
- - Update Bitmovin's native iOS SDK version to `3.80.0`
412
+ - Update Bitmovin's native iOS SDK version to [`3.80.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3800)
382
413
 
383
414
  ### Added
384
415
 
@@ -388,8 +419,8 @@
388
419
 
389
420
  ### Changed
390
421
 
391
- - Update Bitmovin's native Android SDK version to `3.98.0`
392
- - Update Bitmovin's native iOS SDK version to `3.79.0`
422
+ - Update Bitmovin's native Android SDK version to [`3.98.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3980)
423
+ - Update Bitmovin's native iOS SDK version to [`3.79.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3790)
393
424
 
394
425
  ### Fixed
395
426
 
@@ -399,7 +430,7 @@
399
430
 
400
431
  ### Changed
401
432
 
402
- - Update Bitmovin's native Android SDK version to `3.96.0`
433
+ - Update Bitmovin's native Android SDK version to [`3.96.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3960)
403
434
 
404
435
  ## [0.33.0] - 2024-11-28
405
436
 
@@ -410,14 +441,14 @@
410
441
 
411
442
  ### Changed
412
443
 
413
- - Update Bitmovin's native iOS SDK version to `3.78.0`
414
- - Update Bitmovin's native Android SDK version to `3.94.0`
444
+ - Update Bitmovin's native iOS SDK version to [`3.78.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3780)
445
+ - Update Bitmovin's native Android SDK version to [`3.94.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3940)
415
446
 
416
447
  ## [0.32.0] - 2024-11-14
417
448
 
418
449
  ### Changed
419
450
 
420
- - Update Bitmovin's native Android SDK version to `3.92.0`
451
+ - Update Bitmovin's native Android SDK version to [`3.92.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3920)
421
452
 
422
453
  ### Fixed
423
454
 
@@ -433,7 +464,7 @@
433
464
 
434
465
  ### Changed
435
466
 
436
- - Update Bitmovin's native Android SDK version to `3.91.0`
467
+ - Update Bitmovin's native Android SDK version to [`3.91.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3910)
437
468
 
438
469
  ### Deprecated
439
470
 
@@ -443,8 +474,8 @@
443
474
 
444
475
  ### Changed
445
476
 
446
- - Update Bitmovin's native Android SDK version to `3.90.0`
447
- - Update Bitmovin's native iOS SDK version to `3.77.0`
477
+ - Update Bitmovin's native Android SDK version to [`3.90.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3900)
478
+ - Update Bitmovin's native iOS SDK version to [`3.77.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3770)
448
479
 
449
480
  ### Added
450
481
 
@@ -462,8 +493,8 @@
462
493
 
463
494
  ### Changed
464
495
 
465
- - Update Bitmovin's native Android SDK version to `3.82.0`
466
- - Update Bitmovin's native iOS SDK version to `3.71.0`
496
+ - Update Bitmovin's native Android SDK version to [`3.82.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3820)
497
+ - Update Bitmovin's native iOS SDK version to [`3.71.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3710)
467
498
  - Update IMA SDK dependency on Android to `3.33.0`
468
499
 
469
500
  ### Changed
@@ -476,8 +507,8 @@
476
507
 
477
508
  ### Changed
478
509
 
479
- - Update Bitmovin's native Android SDK version to `3.78.0`
480
- - Update Bitmovin's native iOS SDK version to `3.67.0`
510
+ - Update Bitmovin's native Android SDK version to [`3.78.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3780)
511
+ - Update Bitmovin's native iOS SDK version to [`3.67.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3670)
481
512
 
482
513
  ## [0.27.1] - 2024-07-05
483
514
 
@@ -492,8 +523,8 @@
492
523
 
493
524
  - Update Google IMA SDK dependencies to `3.23.0` for iOS, and to `4.13.0` for tvOS
494
525
  - Update example app dependency: Google Cast iOS sender SDK to `4.8.1`
495
- - Update Bitmovin's native Android SDK version to `3.74.0`
496
- - Update Bitmovin's native iOS SDK version to `3.66.0`
526
+ - Update Bitmovin's native Android SDK version to [`3.74.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3740)
527
+ - Update Bitmovin's native iOS SDK version to [`3.66.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3660)
497
528
 
498
529
  ## [0.26.0] - 2024-06-14
499
530
 
@@ -503,8 +534,8 @@
503
534
 
504
535
  ### Changed
505
536
 
506
- - Update Bitmovin's native Android SDK version to `3.73.0`
507
- - Update Bitmovin's native iOS SDK version to `3.65.0`
537
+ - Update Bitmovin's native Android SDK version to [`3.73.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3730)
538
+ - Update Bitmovin's native iOS SDK version to [`3.65.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3650)
508
539
 
509
540
  ### Fixed
510
541
 
@@ -530,8 +561,8 @@
530
561
 
531
562
  ### Changed
532
563
 
533
- - Update Bitmovin's native Android SDK version to `3.72.0`
534
- - Update Bitmovin's native iOS SDK version to `3.64.0`
564
+ - Update Bitmovin's native Android SDK version to [`3.72.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3720)
565
+ - Update Bitmovin's native iOS SDK version to [`3.64.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3640)
535
566
 
536
567
  ### Fixed
537
568
 
@@ -542,8 +573,8 @@
542
573
 
543
574
  ### Changed
544
575
 
545
- - Update Bitmovin's native Android SDK version to `3.68.0`
546
- - Update Bitmovin's native iOS SDK version to `3.62.0`
576
+ - Update Bitmovin's native Android SDK version to [`3.68.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3680)
577
+ - Update Bitmovin's native iOS SDK version to [`3.62.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3620)
547
578
 
548
579
  ### Fixed
549
580
 
@@ -557,7 +588,7 @@
557
588
 
558
589
  ### Changed
559
590
 
560
- - Update Bitmovin's native iOS SDK version to `3.60.0`
591
+ - Update Bitmovin's native iOS SDK version to [`3.60.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3600)
561
592
  - Update IMA SDK dependency on iOS to `3.19.1`, respectively `4.9.2` for tvOS
562
593
 
563
594
  ## [0.21.0] - 2024-04-08
@@ -570,8 +601,8 @@
570
601
  ### Changed
571
602
 
572
603
  - Android: Default Picture-in-Picture implementation doesn't automatically hide/show the Toolbar anymore. This should be handled by the app itself, check out the sample app for an example implementation
573
- - Update Bitmovin's native Android SDK version to `3.65.0`
574
- - Update Bitmovin's native iOS SDK version to `3.59.0`
604
+ - Update Bitmovin's native Android SDK version to [`3.65.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3650)
605
+ - Update Bitmovin's native iOS SDK version to [`3.59.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3590)
575
606
 
576
607
  ## [0.20.0] - 2024-03-29
577
608
 
@@ -582,7 +613,7 @@
582
613
 
583
614
  ### Changed
584
615
 
585
- - Update Bitmovin's native Android SDK version to `3.64.0`
616
+ - Update Bitmovin's native Android SDK version to [`3.64.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3640)
586
617
 
587
618
  ## [0.19.0] - 2024-03-22
588
619
 
@@ -592,8 +623,8 @@
592
623
 
593
624
  ### Changed
594
625
 
595
- - Update Bitmovin's native Android SDK version to `3.63.0`
596
- - Update Bitmovin's native iOS SDK version to `3.57.2`
626
+ - Update Bitmovin's native Android SDK version to [`3.63.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3630)
627
+ - Update Bitmovin's native iOS SDK version to [`3.57.2`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3572)
597
628
 
598
629
  ### Fixed
599
630
 
@@ -604,8 +635,8 @@
604
635
  ### Changed
605
636
 
606
637
  - React Native version to `0.73.4`
607
- - Update Bitmovin's native Android SDK version to `3.61.0`
608
- - Update Bitmovin's native iOS SDK version to `3.56.3`
638
+ - Update Bitmovin's native Android SDK version to [`3.61.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3610)
639
+ - Update Bitmovin's native iOS SDK version to [`3.56.3`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3563)
609
640
 
610
641
  ### Fixed
611
642
 
@@ -619,7 +650,7 @@
619
650
 
620
651
  ### Changed
621
652
 
622
- - Update Bitmovin's native iOS SDK version to `3.55.0`
653
+ - Update Bitmovin's native iOS SDK version to [`3.55.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3550)
623
654
 
624
655
  ### Fixed
625
656
 
@@ -629,7 +660,7 @@
629
660
 
630
661
  ### Changed
631
662
 
632
- - Update Bitmovin's native Android SDK version to `3.56.0`
663
+ - Update Bitmovin's native Android SDK version to [`3.56.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3560)
633
664
  - Android: Kotlin version to `1.9.21`
634
665
 
635
666
  ## [0.15.0] - 2023-12-18
@@ -642,7 +673,7 @@
642
673
 
643
674
  - React Native version to `0.72.6`
644
675
  - React Native peer dependency version to `0.65.0+`
645
- - Update Bitmovin's native Android SDK version to `3.54.0`
676
+ - Update Bitmovin's native Android SDK version to [`3.54.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3540)
646
677
  - Android: Kotlin version to `1.8.20`
647
678
 
648
679
  ## [0.14.2] - 2023-11-27
@@ -694,7 +725,7 @@
694
725
  ### Changed
695
726
 
696
727
  - Update IMA SDK dependency on Android to `3.31.0`
697
- - Update Bitmovin's native Android SDK version to `3.47.0`
728
+ - Update Bitmovin's native Android SDK version to [`3.47.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3470)
698
729
 
699
730
  ### Deprecated
700
731
 
@@ -713,7 +744,7 @@
713
744
 
714
745
  - `AnalyticsConfig` properties to match the Bitmovin analytics v3 API
715
746
  - Use `jason` build of Bitmovin's native Android SDK
716
- - Update Bitmovin's native Android SDK version to `3.44.0`
747
+ - Update Bitmovin's native Android SDK version to [`3.44.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3440)
717
748
 
718
749
  ### Removed
719
750
 
@@ -730,7 +761,7 @@
730
761
 
731
762
  ### Changed
732
763
 
733
- - Update Bitmovin's native Android SDK version to `3.43.0`
764
+ - Update Bitmovin's native Android SDK version to [`3.43.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3430)
734
765
 
735
766
  ## [0.10.0] - 2023-09-04
736
767
 
@@ -745,7 +776,7 @@
745
776
 
746
777
  ### Changed
747
778
 
748
- - Update Bitmovin's native iOS SDK version to `3.43.1`
779
+ - Update Bitmovin's native iOS SDK version to [`3.43.1`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3431)
749
780
 
750
781
  ## [0.9.1] - 2023-08-17
751
782
 
@@ -763,7 +794,7 @@
763
794
 
764
795
  ### Changed
765
796
 
766
- - Update Bitmovin's native iOS SDK version to `3.42.0`
797
+ - Update Bitmovin's native iOS SDK version to [`3.42.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3420)
767
798
 
768
799
  ### Fixed
769
800
 
@@ -777,8 +808,8 @@
777
808
 
778
809
  ### Changed
779
810
 
780
- - Update Bitmovin's native iOS SDK version to `3.41.2`
781
- - Update Bitmovin's native Android SDK version to `3.40.0`
811
+ - Update Bitmovin's native iOS SDK version to [`3.41.2`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3412)
812
+ - Update Bitmovin's native Android SDK version to [`3.40.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3400)
782
813
  - Update IMA SDK dependency on iOS to `3.18.4`, respectively `4.8.2` for tvOS
783
814
  - Update IMA SDK dependency on Android to `3.29.0`
784
815
 
@@ -823,8 +854,8 @@
823
854
 
824
855
  ### Changed
825
856
 
826
- - Update Bitmovin's native iOS SDK version to `v3.36.0`.
827
- - Update Bitmovin's native Android SDK version to `v3.35.0`.
857
+ - Update Bitmovin's native iOS SDK version to [`v3.36.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3360).
858
+ - Update Bitmovin's native Android SDK version to [`v3.35.0`](https://developer.bitmovin.com/playback/docs/release-notes-android#3350).
828
859
 
829
860
  ## [0.5.1] - 2023-01-23
830
861
 
@@ -870,8 +901,8 @@ Adds support for tvOS projects and ability to customize the default playback beh
870
901
 
871
902
  ### Changed
872
903
 
873
- - Update Bitmovin's native iOS SDK version to `v3.28.0`.
874
- - Update Bitmovin's native Android SDK version to `v3.24.2`.
904
+ - Update Bitmovin's native iOS SDK version to [`v3.28.0`](https://developer.bitmovin.com/playback/docs/release-notes-ios#3280).
905
+ - Update Bitmovin's native Android SDK version to [`v3.24.2`](https://developer.bitmovin.com/playback/docs/release-notes-android#3242).
875
906
  - Setup a new tvOS target on example app's `.xcodeproj` file.
876
907
  - Replace `react-native` with `react-native-tvos` on the example app.
877
908
 
@@ -108,6 +108,6 @@ dependencies {
108
108
 
109
109
  // Bitmovin
110
110
  implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
111
- implementation 'com.bitmovin.player:player:3.154.0+jason'
112
- implementation 'com.bitmovin.player:player-media-session:3.154.0+jason'
111
+ implementation 'com.bitmovin.player:player:3.159.0+jason'
112
+ implementation 'com.bitmovin.player:player-media-session:3.159.0+jason'
113
113
  }
@@ -181,6 +181,10 @@ class PlayerModule : Module() {
181
181
  false
182
182
  }
183
183
 
184
+ AsyncFunction("showAirPlayTargetPicker") { _: String ->
185
+ // AirPlay is iOS-only, no-op on Android
186
+ }
187
+
184
188
  AsyncFunction("isCastAvailable") { nativeId: NativeId ->
185
189
  val player = PlayerRegistry.getPlayer(nativeId)
186
190
  return@AsyncFunction player?.isCastAvailable
@@ -1,5 +1,6 @@
1
1
  package com.bitmovin.player.reactnative.converter
2
2
 
3
+ import android.text.Layout.Alignment
3
4
  import android.util.Base64
4
5
  import android.util.Log
5
6
  import com.bitmovin.analytics.api.AnalyticsConfig
@@ -41,6 +42,7 @@ import com.bitmovin.player.api.media.MediaTrackRole
41
42
  import com.bitmovin.player.api.media.MediaType
42
43
  import com.bitmovin.player.api.media.audio.AudioTrack
43
44
  import com.bitmovin.player.api.media.audio.quality.AudioQuality
45
+ import com.bitmovin.player.api.media.subtitle.Cue
44
46
  import com.bitmovin.player.api.media.subtitle.SubtitleTrack
45
47
  import com.bitmovin.player.api.media.thumbnail.Thumbnail
46
48
  import com.bitmovin.player.api.media.thumbnail.ThumbnailTrack
@@ -512,6 +514,8 @@ fun PlayerEvent.toJson(): Map<String, Any> {
512
514
  baseMap["end"] = end
513
515
  baseMap["text"] = text
514
516
  baseMap["image"] = image?.toBase64DataUri()
517
+ cue.html?.let { baseMap["html"] = it }
518
+ baseMap["layout"] = cue.toLayoutJson()
515
519
  }
516
520
 
517
521
  is PlayerEvent.CueExit -> {
@@ -519,6 +523,8 @@ fun PlayerEvent.toJson(): Map<String, Any> {
519
523
  baseMap["end"] = end
520
524
  baseMap["text"] = text
521
525
  baseMap["image"] = image?.toBase64DataUri()
526
+ cue.html?.let { baseMap["html"] = it }
527
+ baseMap["layout"] = cue.toLayoutJson()
522
528
  }
523
529
 
524
530
  is PlayerEvent.Metadata -> {
@@ -1091,3 +1097,56 @@ fun ScteMessage.toJson(): Map<String, Any> = mapOf(
1091
1097
  "key" to key,
1092
1098
  "value" to value
1093
1099
  ).filterNotNullValues()
1100
+
1101
+ private fun Cue.toLayoutJson(): Map<String, Any> {
1102
+ val line = toLayoutLineJson()
1103
+ val position = fractionalPosition.takeIf { it != Cue.DIMEN_UNSET }?.toPercent()
1104
+ val size = size.takeIf { it != Cue.DIMEN_UNSET }?.toPercent()
1105
+ val textAlign = textAlignment?.toLayoutTextAlignJson()
1106
+
1107
+ return mapOf(
1108
+ "line" to line,
1109
+ "lineAlign" to lineAnchor.toLayoutLineAlignJson(),
1110
+ "position" to position,
1111
+ "positionAlign" to positionAnchor.toLayoutPositionAlignJson(),
1112
+ "size" to size,
1113
+ "textAlign" to textAlign,
1114
+ "writingMode" to verticalType?.toLayoutWritingModeJson(),
1115
+ ).filterNotNullValues()
1116
+ }
1117
+
1118
+ private fun Cue.toLayoutLineJson(): Map<String, Any>? = when {
1119
+ line == Cue.DIMEN_UNSET -> null
1120
+ lineType == Cue.LineType.LineTypeNumber -> mapOf("value" to line.toDouble(), "unit" to "line")
1121
+ else -> mapOf("value" to line.toPercent(), "unit" to "percent")
1122
+ }
1123
+
1124
+
1125
+ private fun Float.toPercent(): Double = (this * 100).toDouble()
1126
+
1127
+ private fun Cue.AnchorType.toLayoutLineAlignJson(): String? = when (this) {
1128
+ Cue.AnchorType.AnchorTypeMiddle -> "center"
1129
+ Cue.AnchorType.AnchorTypeEnd -> "end"
1130
+ Cue.AnchorType.AnchorTypeStart -> "start"
1131
+ Cue.AnchorType.TypeUnset -> null
1132
+ }
1133
+
1134
+ private fun Cue.AnchorType.toLayoutPositionAlignJson(): String? = when (this) {
1135
+ Cue.AnchorType.AnchorTypeStart -> "line-left"
1136
+ Cue.AnchorType.AnchorTypeMiddle -> "center"
1137
+ Cue.AnchorType.AnchorTypeEnd -> "line-right"
1138
+ Cue.AnchorType.TypeUnset -> null
1139
+ }
1140
+
1141
+ private fun Cue.VerticalType.toLayoutWritingModeJson(): String? = when (this) {
1142
+ Cue.VerticalType.VerticalTypeLeftToRight -> "vertical-lr"
1143
+ Cue.VerticalType.VerticalTypeRightToLeft -> "vertical-rl"
1144
+ Cue.VerticalType.TypeUnset -> null
1145
+ }
1146
+
1147
+ private fun Alignment.toLayoutTextAlignJson(): String = when (this) {
1148
+ Alignment.ALIGN_NORMAL -> "start"
1149
+ Alignment.ALIGN_OPPOSITE -> "end"
1150
+ Alignment.ALIGN_CENTER -> "center"
1151
+ }
1152
+
@@ -6,5 +6,5 @@ import { PlayerViewProps } from './properties';
6
6
  *
7
7
  * @param options configuration options
8
8
  */
9
- export declare function PlayerView({ viewRef, style, player, config, fullscreenHandler, customMessageHandler, isFullscreenRequested, scalingMode, isPictureInPictureRequested, pictureInPictureActions, isPictureInPictureEnabled, ...props }: PlayerViewProps): React.JSX.Element | null;
9
+ export declare function PlayerView({ viewRef, style, player, config, fullscreenHandler, customMessageHandler, isFullscreenRequested, scalingMode, isPictureInPictureRequested, pictureInPictureActions, isPictureInPictureEnabled, onPlayerViewReady, ...props }: PlayerViewProps): React.JSX.Element | null;
10
10
  //# sourceMappingURL=index.d.ts.map