Commit Graph

320 Commits

Author SHA1 Message Date
Seyed Mostafa Hasani
1728373d11
chore(android): migrate DefaultReactExoplayerConfig to Kotlin (#3983)
* Rename .java to .kt

* chore(android): migrate DefaultReactExoplayerConfig to Kotlin
2024-07-10 10:20:16 +02:00
YangJH
7562669fd6
feat(android): Bump default media3 version from v1.1.1 to v1.3.1 (#3977) ⚠️ need targetSdkVersion 34 2024-07-06 22:16:07 +02:00
YangJH
3c9b1b571a
refactor(android): migrate VideoEventEmitter to Kotlin (#3962)
* refactor(android): migrate VideoEventEmitter to Kotlin

* feat(android): apply rewritten EventEmitter's functions

* refactor(android): remove duplicated code

* fix(android): fix lint error

* fix(android): fix event name value

* refactor(android): rename of event constants for Fabric

- https://github.com/facebook/react-native/blob/v0.74.3/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java#L136-L138
2024-07-04 14:01:28 +02:00
Seyed Mostafa Hasani
530686ca82
fix(android): build issue on the latest react-native version (#3963) 2024-07-02 22:40:25 +02:00
YangJH
3f11894c2b
fix(android): fix wrong module name (#3959) 2024-06-30 18:20:08 +02:00
Seyed Mostafa Hasani
702a0d9d32
refactor(android): migrate ReactVideoPackage to Kotlin (#3955) 2024-06-30 17:34:28 +02:00
YangJH
99585987ea
refactor(android): migrate VideoDecoderPropertiesModule to Kotlin (#3954) 2024-06-30 17:32:30 +02:00
EETVApps
322d7e993d
fix(android): added setAllowChunklessPreparation to HlsMediaSource.Factory to allow build success on projects without HLS support (#3948) (#3950)
Co-authored-by: Darren Taft <darren.taft@bt.com>
2024-06-28 11:43:55 +02:00
Olivier Bouillet
b431d09e2f
chore(android): rework view type (#3940) 2024-06-27 11:58:06 +02:00
Olivier Bouillet
a7d834a80a
feat(android): allow building exoplayer from source (#3932)
* feat(android): allow to build from source code

* fix(android): allow to build plugin from source
2024-06-25 13:20:12 +02:00
Olivier Bouillet
91d27a6009
feat: add plugins management (#3909) 2024-06-25 08:55:32 +02:00
Ash Mish
c2ce372bcf
feat(android): add onControlsVisiblityChange (#3925)
* Adding onControlsVisiblityChange for Android
2024-06-22 11:15:21 +02:00
Olivier Bouillet
104ee703ba
fix(android): avoid crash multiplayer with notification (#3931) 2024-06-22 10:55:40 +02:00
Olivier Bouillet
856b1dd58b
fix(android): use UI thread to pause when lost audio focus (#3916) 2024-06-20 11:50:56 +02:00
Olivier Bouillet
264b57aa2e
fix(android): allow chunk less preparation (#3913) 2024-06-20 11:19:35 +02:00
Krzysztof Moch
098a754110
fix(android): show controls in notification on older androids (#3886) 2024-06-12 11:54:45 +02:00
Olivier Bouillet
cfb5b1cd31
Chore(android): refactor drm props (#3846) 2024-06-10 22:42:18 +02:00
Seyed Mostafa Hasani
3a4a13011a
chore: add setFullScreen to component's ref (#3855)
* chore: add setFullScreen to component's ref and remove presentFullscreenPlayer & dismissFullscreenPlayer
2024-06-10 22:41:26 +02:00
Olivier Bouillet
c2cd7529fd
fix(android): fix null pointer exception at playback start with item metadata (#3879)
* fix(android): fix null pointer exception at playback start with item metadata
2024-06-07 15:06:49 +02:00
Olivier Bouillet
d4a8c24f65
feat(android): allow chunckless preparation (#3882)
* feat(android): add a way to disable chuncklessPreparation on HLS
2024-06-07 14:06:46 +02:00
Krzysztof Moch
ff1e24aaad fix: ensure view drop stop playback startup (#3875) 2024-06-07 13:54:14 +02:00
Olivier Bouillet
7133c96cac
fix: ensure progress is sent before onEnd callback (#3872)
* fix: add onProgress event before onEnd
2024-06-03 12:13:52 +02:00
Olivier Bouillet
b698b1837b
fix(android): video resolution orientation android (#3862)
* fix(android): ensure width/heigh respect rotation of the video + Add rotation info in onVideoTrack event
2024-05-31 18:53:24 +02:00
Olivier Bouillet
c2ce66ed26
fix(android): optimize lag on old android (#3860)
* fix: enable forceEnableMediaCodecAsynchronousQueueing for old android device
2024-05-31 08:58:29 +02:00
Olivier Bouillet
bdf3e556d8
fix(android): refactor source, fix random DRM issue and crop start on local asset (#3835)
* fix: refactor source parameter parsing

Also fix a side issue when using a local file cropping props were not applied
Also fix random DRM issue by refactoring initializePlayerSource https://github.com/TheWidlarzGroup/react-native-video/issues/3082

* chore: restore metadata checks before appling them
2024-05-30 08:53:49 +02:00
Seyed Mostafa Hasani
c7f4d7b83b
feat: add getCurrentPosition to component's ref (#3824)
* feat: add getCurrentPosition to component's ref
---------

Co-authored-by: mostafahasani <hasanie.mostafa@alopeyk.com>
2024-05-28 11:00:38 +02:00
Seyed Mostafa Hasani
5059e7a7f1
feat(android): handle increment forward and rewind buttons (#3818)
* feat(android): handle increment forward and rewind buttons
* fix: function name for get seekIncrementMS
2024-05-28 09:32:30 +02:00
YangJH
c2cc917368
feat(android): Change subtitleLayout from child to sibling of layout (#3830) 2024-05-28 09:29:40 +02:00
lovegaoshi
c2a14240ad
fix(android): android cache header (#3832)
* fix: android cache header
2024-05-28 09:29:21 +02:00
Paul Rinaldi
5c29b48747
fix(android): allow notification tap to foreground app (#3831) 2024-05-28 09:23:56 +02:00
Seyed Mostafa Hasani
ce9a0cdfa2
chore(android): add colors and dimens files to handle variables (#3836) 2024-05-27 19:19:34 +02:00
Olivier Bouillet
69bde447b8
fix(android): revert previous fix not compatible with old java version (#3828) 2024-05-23 17:35:13 +02:00
YangJH
089dc7e032
feat(android): change default user agent value (#3813)
* feat(android): change default user agent value

* docs: fix headers prop platform
2024-05-22 22:59:32 +02:00
Olivier Bouillet
d987525b6d
chore(android): fix various warnings (#3810)
* chore: add missing annotation
* chore: remove unused import
* chore: add final on members
* chore: remove unused
* chore: add missing annotations
* chore: remove unused
* chore: replace switch by if
* chore: simplify lamba declaration
* chore: more beautifull declaration
* chore: rename variable considered as a typo
* chore: remove deprecated & avoid multiple calls to the same function
2024-05-22 14:02:55 +02:00
Olivier Bouillet
cad5c4624c
fix(android)!: rework video tracks management (#3778)
* fix: fix crash when invalid index type is provided and minor clean up
* fix: review video track management. Fix index support and rework string vs int in tracks management
* fix: ABR track selection check
* fix: split track selector in sample and lint code
* fix: ensure we don't report null fields
* chore: improve tracks displayed
* chore: start moving to selection by index only
2024-05-22 14:01:55 +02:00
Paul Rinaldi
94b3da3477
fix(android): implement seek backward in notification service (#3808) 2024-05-21 22:16:07 +02:00
Olivier Bouillet
e16730de11
fix(android): implement live configuration management (#3792)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* feat(android): implement live buffer configuration

* chore: fix linter
2024-05-20 16:18:20 +02:00
Olivier Bouillet
d272a86f20
Fix(android): allow to select tracks with exceeded capabilities for more flexibility (#3791)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* fix: allow to select Exceeded Constraints tracks for more playback flexibilities
2024-05-20 15:36:54 +02:00
Seyed Mostafa Hasani
95e6140eea
feat(android): add possibility to hide seekBar (#3789)
* feat: hide seekBar on Android when a video is a live broadcast

* refactor: prop name & code

* chore: update the document for a new prop (controlsStyles)

* refactor: code

* remove: additional variables

* fix: indent issues

* remove: duplicate function

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

revert change1

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

revert change2

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

chore: revert indent change

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

chore: revert indent change

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

chore: revert indent change

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

chore: revert indent change

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java

chore: revert indent change

* fix: eslint errors

* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java

chore: revert indent change

---------

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>
2024-05-20 12:45:18 +02:00
Seyed Mostafa Hasani
3cd7ab60b2
feat: add setVolume function to component's ref (#3794)
* feat: add setVolume function to component's ref

* Update methods.mdx
2024-05-20 12:21:48 +02:00
Olivier Bouillet
d4c9be2ba0
fix(android): random android crash (#3777)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* fix(android): fix random crash
2024-05-17 15:16:48 +02:00
Olivier Bouillet
d716e1ab2a
chore(android): improve exoplayer logs (#3780)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* fix: improve debuging display and enable it in the sample
2024-05-17 15:10:37 +02:00
Olivier Bouillet
7b1e1293f6
fix(android): avoid blinking on video track change (#3782)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* fix(android): avoid ghost resizing when video track change
2024-05-17 14:47:03 +02:00
YangJH
6455380f9e
fix(android): source metadata compare function (#3775) 2024-05-17 14:44:48 +02:00
YangJH
66e0ba579b
fix(android): playback doesn't work with 0 startPositionMs (#3784) 2024-05-17 14:21:02 +02:00
Olivier Bouillet
324b461527
fix(android): remove remaining ad view when zapping (#3786)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* fix(android): ensure adsLoader is well release if unused
2024-05-16 15:57:27 +02:00
Olivier Bouillet
219496ff3a
fix(android): video tracks crash and clean (#3767)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup

* fix: fix crash when invalid index type is provided and minor clean up
2024-05-14 16:39:41 +02:00
Olivier Bouillet
9716f4cb36
Fix(android): avoid video resizing flickering (#3751)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* chore: improve issue template

* fix(android): avoid video view flickering at playback startup
2024-05-13 19:20:36 +02:00
Olivier Bouillet
2e623ca0fb
fix(avoid): avoid early return in setSrc (#3759)
* perf: ensure we do not provide callback to native if no callback provided from app

* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size

* fix(android): avoid easly return in setSrc
2024-05-13 19:19:20 +02:00
Olivier Bouillet
e420418e8f
feat(android): make buffering strategy dynamic (#3756)
* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size
* feat: expose bufferingStrategy to app and change default behavior
rename disableBuffering undocumented prop to bufferingStrategy and document it.
before this change, default was 'dependingOnMemory'. It can trigger some unnecessary gc() call on android.
2024-05-11 22:02:04 +02:00