Commit Graph

312 Commits

Author SHA1 Message Date
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
Olivier Bouillet
1a48f190f0
chore(android): clean up logs (#3758)
* 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(android): cleanup logs TAG
2024-05-11 19:03:44 +02:00
Olivier Bouillet
efb338ee2a
chore(android): refactor side loaded text tracks (#3754)
* 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(android): refactor external text tracks management.

Split parsing and tracks handling

* chore: fix linter
2024-05-11 18:57:59 +02:00
Zakir Bangash
d25629bb62
Revert "fix(android): video flickering add playback start (#3746)" (#3748)
This reverts commit b1cd52bc58.

s
2024-05-10 14:23:30 +02:00
Olivier Bouillet
b1cd52bc58
fix(android): video flickering add playback start (#3746)
* 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 video flickering at playback start
2024-05-08 17:55:35 +02:00
Krzysztof Moch
8ad4be459b
feat: add notification controls (#3723)
* feat(ios): add `showNotificationControls` prop

* feat(android): add `showNotificationControls` prop

* add docs

* feat!: add `metadata` property to srouce

This is breaking change for iOS/tvOS as we are moving some properties, but I believe that this will more readable and more user friendly

* chore(ios): remove UI blocking function

* code review changes for android

* update example

* fix readme

* fix typos

* update docs

* fix typo

* chore: improve sample metadata notification

* update codegen types

* rename properties

* update tvOS example

* reset metadata on source change

* update docs

---------

Co-authored-by: Olivier Bouillet <freeboub@gmail.com>
2024-05-07 12:30:57 +02:00
Olivier Bouillet
8eb31e82c7
chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size (#3739) 2024-05-06 22:04:40 +02:00
Olivier Bouillet
e05da4e9fe
feat(android): implement asset folder playback (#3733)
* fix(ts): onPlaybackRateChangeData was not correctly typed

* fix: ensure tracks are well displayed in the sample

* feat(android): implement playback from asset folder

* chore(android): fix linter

* chore: move sample mp4 from package assets to exemple assets
2024-05-06 21:51:17 +02:00
lovegaoshi
ecc946d1c1
feat(android): cache (#3514)
* feat: android cache

* docs: bufferSize

* Revert "docs: bufferSize"

This reverts commit 09637b134e121b9ca3ffd78f2f5bc657319ed67a.

* fix: cacheSize name

* feat: singleton android cache

* fix: local cache resolve

* fix: lint

* docs: android cache

* chore: merge conflict

* fix: lint

* chore: useCache button

* chore: fix state in the sample

* fix: cache factory

* chore: update cacheSizeMB docs

---------

Co-authored-by: Olivier Bouillet <freeboub@gmail.com>
2024-05-01 11:20:34 +02:00