expo-libvlc-player 7.1.3 → 7.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -63,6 +63,7 @@ class LibVlcPlayerView(
|
|
|
63
63
|
|
|
64
64
|
var firstPlay: Boolean = true
|
|
65
65
|
private var shouldInit: Boolean = true
|
|
66
|
+
var shouldRepeat: Boolean = true
|
|
66
67
|
|
|
67
68
|
val onBuffering by EventDispatcher()
|
|
68
69
|
val onPlaying by EventDispatcher<Unit>()
|
|
@@ -183,6 +184,7 @@ class LibVlcPlayerView(
|
|
|
183
184
|
mediaPlayer = MediaPlayer(libVLC!!)
|
|
184
185
|
attachPlayerLayout(playerLayout)
|
|
185
186
|
setPlayerListener(mediaPlayer!!)
|
|
187
|
+
addPlayerSlaves(slaves)
|
|
186
188
|
setupPlayer()
|
|
187
189
|
|
|
188
190
|
try {
|
|
@@ -328,8 +330,6 @@ class LibVlcPlayerView(
|
|
|
328
330
|
fun setupPlayer() {
|
|
329
331
|
post {
|
|
330
332
|
mediaPlayer?.let { player ->
|
|
331
|
-
addPlayerSlaves(slaves)
|
|
332
|
-
|
|
333
333
|
if (scale != MediaPlayerConstants.DEFAULT_PLAYER_SCALE) {
|
|
334
334
|
player.setScale(scale.toFloat())
|
|
335
335
|
}
|
|
@@ -467,16 +467,16 @@ class LibVlcPlayerView(
|
|
|
467
467
|
var volume: Int = MediaPlayerConstants.MAX_PLAYER_VOLUME
|
|
468
468
|
set(value) {
|
|
469
469
|
val oldValue = field
|
|
470
|
-
field = value
|
|
471
|
-
|
|
472
|
-
if (mute) return
|
|
473
|
-
|
|
474
470
|
val newVolume =
|
|
475
471
|
value.coerceIn(
|
|
476
472
|
MediaPlayerConstants.MIN_PLAYER_VOLUME,
|
|
477
473
|
MediaPlayerConstants.MAX_PLAYER_VOLUME,
|
|
478
474
|
)
|
|
479
475
|
|
|
476
|
+
field = newVolume
|
|
477
|
+
|
|
478
|
+
if (mute) return
|
|
479
|
+
|
|
480
480
|
mediaPlayer?.setVolume(newVolume)
|
|
481
481
|
|
|
482
482
|
val hadVolume = oldValue > MediaPlayerConstants.MIN_PLAYER_VOLUME
|
|
@@ -558,6 +558,7 @@ class LibVlcPlayerView(
|
|
|
558
558
|
}
|
|
559
559
|
|
|
560
560
|
fun stop() {
|
|
561
|
+
shouldRepeat = false
|
|
561
562
|
mediaPlayer?.stop()
|
|
562
563
|
}
|
|
563
564
|
|
|
@@ -712,6 +713,8 @@ fun LibVlcPlayerView.setPlayerListener(mediaPlayer: MediaPlayer?) {
|
|
|
712
713
|
onPlaying(Unit)
|
|
713
714
|
|
|
714
715
|
if (firstPlay) {
|
|
716
|
+
setupPlayer()
|
|
717
|
+
|
|
715
718
|
setPlayerTracks()
|
|
716
719
|
|
|
717
720
|
retryUntil { isLastAttempt ->
|
|
@@ -754,9 +757,11 @@ fun LibVlcPlayerView.setPlayerListener(mediaPlayer: MediaPlayer?) {
|
|
|
754
757
|
|
|
755
758
|
firstPlay = true
|
|
756
759
|
|
|
757
|
-
if (repeat) {
|
|
760
|
+
if (repeat && shouldRepeat) {
|
|
758
761
|
player.play()
|
|
759
762
|
}
|
|
763
|
+
|
|
764
|
+
shouldRepeat = true
|
|
760
765
|
}
|
|
761
766
|
|
|
762
767
|
MediaPlayerManager.keepAwakeManager.toggleKeepAwake()
|
|
@@ -91,8 +91,8 @@ public class LibVlcPlayerModule: Module {
|
|
|
91
91
|
view.audioMixingMode = audioMixingMode
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
-
Prop("repeat", false) { (view: LibVlcPlayerView,
|
|
95
|
-
view.
|
|
94
|
+
Prop("repeat", false) { (view: LibVlcPlayerView, Repeat: Bool) in
|
|
95
|
+
view.Repeat = Repeat
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
Prop("autoplay", true) { (view: LibVlcPlayerView, autoplay: Bool) in
|
|
@@ -17,6 +17,7 @@ class LibVlcPlayerView: ExpoView {
|
|
|
17
17
|
|
|
18
18
|
var firstPlay: Bool = true
|
|
19
19
|
private var shouldInit: Bool = true
|
|
20
|
+
private var shouldRepeat: Bool = true
|
|
20
21
|
|
|
21
22
|
let onBuffering = EventDispatcher()
|
|
22
23
|
let onPlaying = EventDispatcher()
|
|
@@ -80,6 +81,7 @@ class LibVlcPlayerView: ExpoView {
|
|
|
80
81
|
mediaPlayer = VLCMediaPlayer(library: library!)
|
|
81
82
|
mediaPlayer!.drawable = drawable
|
|
82
83
|
mediaPlayer!.delegate = self
|
|
84
|
+
addPlayerSlaves(slaves)
|
|
83
85
|
setupPlayer()
|
|
84
86
|
|
|
85
87
|
vlcDialog = VLCDialogProvider(library: library!, customUI: dialogCustomUI)
|
|
@@ -202,8 +204,6 @@ class LibVlcPlayerView: ExpoView {
|
|
|
202
204
|
guard let self else { return }
|
|
203
205
|
|
|
204
206
|
if let player = mediaPlayer {
|
|
205
|
-
addPlayerSlaves(slaves)
|
|
206
|
-
|
|
207
207
|
if scale != MediaPlayerConstants.defaultPlayerScale {
|
|
208
208
|
player.scaleFactor = Float(scale)
|
|
209
209
|
}
|
|
@@ -357,15 +357,21 @@ class LibVlcPlayerView: ExpoView {
|
|
|
357
357
|
|
|
358
358
|
var time: Int = MediaPlayerConstants.defaultPlayerTime
|
|
359
359
|
|
|
360
|
-
var
|
|
361
|
-
didSet {
|
|
362
|
-
if mute { return }
|
|
360
|
+
var _volume: Int = MediaPlayerConstants.maxPlayerVolume
|
|
363
361
|
|
|
362
|
+
var volume: Int {
|
|
363
|
+
get { _volume }
|
|
364
|
+
set {
|
|
365
|
+
let oldValue = _volume
|
|
364
366
|
let newVolume = max(
|
|
365
367
|
MediaPlayerConstants.minPlayerVolume,
|
|
366
|
-
min(MediaPlayerConstants.maxPlayerVolume,
|
|
368
|
+
min(MediaPlayerConstants.maxPlayerVolume, newValue)
|
|
367
369
|
)
|
|
368
370
|
|
|
371
|
+
_volume = newVolume
|
|
372
|
+
|
|
373
|
+
if mute { return }
|
|
374
|
+
|
|
369
375
|
mediaPlayer?.audio?.volume = Int32(newVolume)
|
|
370
376
|
|
|
371
377
|
let hadVolume = oldValue > MediaPlayerConstants.minPlayerVolume
|
|
@@ -398,7 +404,7 @@ class LibVlcPlayerView: ExpoView {
|
|
|
398
404
|
}
|
|
399
405
|
}
|
|
400
406
|
|
|
401
|
-
var
|
|
407
|
+
var Repeat: Bool = false
|
|
402
408
|
|
|
403
409
|
var autoplay: Bool = true
|
|
404
410
|
|
|
@@ -428,6 +434,7 @@ class LibVlcPlayerView: ExpoView {
|
|
|
428
434
|
}
|
|
429
435
|
|
|
430
436
|
func stop() {
|
|
437
|
+
shouldRepeat = false
|
|
431
438
|
mediaPlayer?.stop()
|
|
432
439
|
}
|
|
433
440
|
|
|
@@ -547,6 +554,8 @@ extension LibVlcPlayerView: VLCMediaPlayerDelegate {
|
|
|
547
554
|
onPlaying()
|
|
548
555
|
|
|
549
556
|
if firstPlay {
|
|
557
|
+
setupPlayer()
|
|
558
|
+
|
|
550
559
|
setPlayerTracks()
|
|
551
560
|
|
|
552
561
|
retryUntil { [weak self] isLastAttempt in
|
|
@@ -593,9 +602,11 @@ extension LibVlcPlayerView: VLCMediaPlayerDelegate {
|
|
|
593
602
|
|
|
594
603
|
firstPlay = true
|
|
595
604
|
|
|
596
|
-
if shouldRepeat {
|
|
605
|
+
if Repeat, shouldRepeat {
|
|
597
606
|
player.play()
|
|
598
607
|
}
|
|
608
|
+
|
|
609
|
+
shouldRepeat = true
|
|
599
610
|
}
|
|
600
611
|
|
|
601
612
|
MediaPlayerManager.shared.keepAwakeManager.toggleKeepAwake()
|