Commit Graph

343 Commits

Author SHA1 Message Date
Seyed Mostafa Hasani
fb1d6bdef7
fix: index of the selected track (#4012) 2024-07-24 10:08:37 +02:00
Seyed Mostafa Hasani
6189080c9a
feat(android): add error handling for Kotlin version (#4018)
* feat(android): add error handling for Kotlin version mismatch

* fix: lint error

* refactor: use variables from gradle file

* chore: downgrade required Kotlin version

* refactor: check Kotlin version

* refactor: kotlin variables in build.gradle

* refactor: kotlin variables in build.gradle

* chore(doc): update document

* chore: add dependency to build.gradle for a specific version of react-native

* fix: remove additional dependency
2024-07-24 10:07:19 +02:00
Olivier Bouillet
1ee5811c8e
fix(android): app crash at boot with old arch (#4022)
* 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: ensure player doesn't start when view is unmounted

* Fix/ensure view drop stop playback startup (#3875)

* fix: ensure player doesn't start when view is unmounted

* chore: fix app boot due to missing registered events

* chore: fix linter

* chore: fix build

* fix: handle code review feedbacks

* chore: revert previous change to handle only necessary fix
2024-07-22 10:56:58 +02:00
lovegaoshi
9f382163d8
fix(android): resize mode cover calculation (#4010) 2024-07-18 10:53:50 +02:00
Krzysztof Moch
ab7e02e453
fix(android): fix backward compatibility (#4020) 2024-07-18 10:51:57 +02:00
Seyed Mostafa Hasani
76d5e93c17
refactor(android): migrate BecomingNoisyListener interface to Kotlin (#3996)
* Rename .java to .kt

* refactor(android): migrate BecomingNoisyListener interface to Kotlin

* remove: java file (AudioBecomingNoisyReceiver.java)
2024-07-18 09:11:07 +02:00
Igor Malgrab
2f70c02cdc
feat(android): set originalFitsSystemWindows on fullscreen open (#4013) 2024-07-17 12:29:38 +02:00
Krzysztof Moch
5cd5e5efe7
fix(android): resolve compatibility issue 2024-07-15 12:29:57 +02:00
Seyed Mostafa Hasani
0104fbbbf3
chore(android): migrate FullScreenPlayerView to Kotlin (#3969)
* Rename .java to .kt

* chore(android): migrate FullScreenPlayerView to Kotlin

* refactor: onBackPressed function

* refactor: fullScreen button function

* fix: lint error

* chore: revert onBackPressed function
2024-07-15 12:04:49 +02:00
Seyed Mostafa Hasani
4b8d09e61f
fix(android): exit fullscreen mode after finishing video playback (#3978) 2024-07-15 12:04:19 +02:00
Seyed Mostafa Hasani
5abc223db8
refactor(android): migrate AudioOutput to Kotlin (#3993)
* Rename .java to .kt

* refactor(android): migrate AudioOutput to Kotlin

* fix: lint error

* refactor: rename of variables
2024-07-15 12:01:32 +02:00
Seyed Mostafa Hasani
df9ffde5fa
refactor(android): migrate ReactExoplayerConfig to Kotlin (#3994)
* Rename .java to .kt

* refactor(android): migrate ReactExoplayerConfig to Kotlin
2024-07-15 11:58:07 +02:00
Seyed Mostafa Hasani
4e7c64e707
refactor(android): migrate ReactExoplayerLoadErrorHandlingPolicy to Kotlin (#3995)
* Rename .java to .kt

* refactor(android): migrate ReactExoplayerLoadErrorHandlingPolicy to Kotlin
2024-07-15 11:30:53 +02:00
Seyed Mostafa Hasani
bed9b8e4d9
refactor(android): migrate AudioBecomingNoisyReceiver to Kotlin (#3997)
* Rename .java to .kt

* refactor(android): migrate AudioBecomingNoisyReceiver to Kotlin

* fix: lint error

* chore: initialize appContext with context.applicationContext
2024-07-15 10:17:07 +02:00
Kamil Moskała
0a55ace0ca
fix(android): handle aspect ratio for rotated videos (#4000) 2024-07-15 10:15:29 +02:00
YangJH
f82268be1b
fix(android): fix onVideoLoad event field key (#4001)
* fix(android): fix onVideoLoad event naturalSize field key

* fix(android): fix onVideoLoad event currentTime field key
2024-07-15 10:14:56 +02:00
YangJH
05623c9f54
fix(android): fix android notification controller order (#4002) 2024-07-15 10:14:31 +02:00
YangJH
c2084c2ace
refactor: internal refactor for prepare new arch (#3980)
* chore(js): fix typo

* refactor(js): refactor type code for codegen

* refactor(js): refactor Video component

- parse shutterColor value within JS
- remove internal fullscreen state

* chore(js): add deprecation warning comment

* fix(js): fix return type

* fix(js): fix import path

* refactor(android): apply changed API for new arch

* refactor(ios): apply changed API for new arch

* fix(ios): fix wrong name

* refactor: refactor VideoDecoderProperties

- rename and add wrapper

* refactor(android): Code fixes for backward compatibility with Kotlin
2024-07-12 10:27:42 +02:00
Krzysztof Moch
111a5d2163
feat: add isSeeking to onPlaybackStateChanged (#3899)
* feat: add `isSeeking` to `onPlaybackStateChanged``

* refactor `onSeek` event emit logic

* fix rebase
2024-07-11 10:08:36 +02:00
Seyed Mostafa Hasani
b25e43ee79
chore(android): migrate DataSourceUtil to Kotlin (#3984)
* Rename .java to .kt

* chore(android): migrate DataSourceUtil to Kotlin

* fix: type issue in DataSourceUtil

* fix: lint error

* chore: refactor DataSourceUtil with object & @JvmStatic

* fix: lint error
2024-07-11 10:07:05 +02:00
Seyed Mostafa Hasani
452e42f1dd
chore(android): migrate AspectRatioFrameLayout to Kotlin (#3985)
* Rename .java to .kt

* chore(android): migrate AspectRatioFrameLayout to Kotlin

* chore: refactor setter and getter of class

* fix: use field
2024-07-11 10:06:22 +02:00
Olivier Bouillet
66dcf32b56
refactor: move view type and drm in source (#3867)
* 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

* chore(android): refactor DRM props into a dedicated class

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

* chore: fix linter

* fix: ensure drm prop is correctly cleaned

* feat(android): move viewType (secure texture) & drm inside the source

The origianl behavior has been kept for interoperability, but marked as deprecated in doc

* chore: fix linter

* chore(ios): move drm prop in source like on android

* chore: fix linter

* chore: clean log

* fix: allow to disable secure View

* chore: fix viewType resolution (source value was not handled)

* chore: use contentDeepEquals instead of manual checks

* chore: fix linter

* fix: ensure player doesn't start when view is unmounted

* Fix/ensure view drop stop playback startup (#3875)

* fix: ensure player doesn't start when view is unmounted

* chore: revert change

* chore: add warning in case of invalid Surface configuration

* chore: code clean

* fix: simplify surface management

* chore: restore previous code

* chore: fix typo

* chore: code cleanup

* feat(android): add multiDrm flag support

* docs: update docs

* chore: fix ios build

* chore: fix deprecated declaration

---------

Co-authored-by: Krzysztof Moch <krzysmoch.programs@gmail.com>
2024-07-10 12:17:22 +02:00
Krzysztof Moch
08f6caa645
feat: add expo plugins (#3933)
* feat: add expo plugins

* add export

* fix import

* fix bugs

* build `lib` to `CommonJS`

* restore `build.gradle`

* remove plugin tmp

* add expo plugin for ios caching

* add docs for expo plugin

* fix expo plugin export

* fix docs
2024-07-10 11:49:13 +02:00
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