Commit Graph

300 Commits

Author SHA1 Message Date
Krzysztof Moch
0312afc8ea
fix: remove setNativeProps usage (#3605)
* fix: remove `setNativeProps` usage

* code review
2024-03-28 11:22:04 +01:00
Gaëtan Kueny
bfb76e6d15
fix(android): keep screen on on fullscreen (#3563)
add KEEP_SCREEN_ON flag when video is fullscreen & playing to avoid phone to go off.
inspired by 2d8466128d
2024-03-22 09:17:00 +01:00
Olivier Bouillet
d5c8b514a1
fix(android): track selection parameter has change in last release. (#3594)
Move all setSelectedTrack to String instead of Dynamic

Co-authored-by: Olivier Bouillet <olivier@OrdinateOlivier.lan>
2024-03-22 07:58:09 +01:00
Olivier Bouillet
3d7444ab25
fix(android): ensure rate is never set to 0 (#3593)
* fix(android): ensure rate is never set to 0

---------

Co-authored-by: Olivier Bouillet <olivier@OrdinateOlivier.lan>
2024-03-21 15:40:25 +01:00
Olivier Bouillet
408cfb2c1c
chore: various code clean (#3591)
* chore: remove media3 dependancy from common

* chore: remove unused

* chore: fix linter change

---------

Co-authored-by: Olivier Bouillet <olivier@OrdinateOlivier.lan>
2024-03-21 14:07:53 +01:00
coofzilla
f4cce2ecdb
feat: implement opacity to control visibility of subtitles (#3583)
* feat: implement opacity to control visibility of subtitles

implemented per discussion on https://github.com/react-native-video/react-native-video/issues/3579

updated docs and linked onTextTrackDataChanged to the subtitle style to clarify intent on how to control visibility.

* chore: update type so that we use a union of 0 1 vs any number

* chore: run ktlint to get rid of white spaces

* feat: add ability to have range of numbers for opacity; while, 0 will still not render the subtitles.

added util function for safeGetFloat

updated types

* feat: add ability to suppress subtitles with opacity 0

add data structure for subtitle styles for extensibility

* chore: run yarn check-ios

* chore: update documentation to clarify differences between android and ios

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

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>

---------

Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>
2024-03-14 11:29:50 +01:00
Olivier Bouillet
eaa72c6665
fix(android): enableDecoderFallback to decrease DECODER_ERROR issue (#3416)
Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2024-03-12 22:38:24 +01:00
coofzilla
6184c10acc
feat(android): add subtitle event (#3566)
* feat: add onCues method to get access to subtitle content
2024-03-11 13:50:19 +01:00
YangJH
366c841c0b
fix(android): check disableFocus when state is ready (#3494)
* fix: check disableFocus when state is ready

* Revert "fix: check disableFocus when state is ready"

This reverts commit b616bc2b8165f49a60d2f4b061d5d9abce63bff6.

* refactor: makes keepScreenOn ignore disableFocus when start playback
2024-03-08 19:34:09 +01:00
yungblud
b33e6df496
Fabric (New Architecture) codegen support (#3487)
* feat: implemented codegenConfig on package.json

* chore: moved directory location of Fabric component

* fix: typefix FabricExample

* chore: pod instaslled FabricExample iOS app

* feat: implemented codegen config on package.json

* feat: implemented codegen of specs/VideoNativeComponent

* chore: removed not using type Filter

* feat: removed unnecessary export on codegen tyepes

* Revert "feat: removed unnecessary export on codegen tyepes"

This reverts commit fc243b0ac5c565eda4886cd865c32ba4e812d7ff.

* refactor: fixed types on Video component and modified types with codegen types

* feat: modified codegenNativeComponent naming (RCTVideo)

* feat: pod installed example basic app

* feat: bump up react-native dev dependency version to 0.73.2 for supporting codegen array event params

* feat: support array param types on event callback function codegen types

* chore: pod installed ios basic example

* feat: modified source prop as optional type

* feat: add original src/VideoComponent.ts again

* Revert "feat: add original src/VideoComponent.ts again"

This reverts commit d63ac94e5330f7c7fb50374f65f8f3f4e0a225d7.

* feat: add original src/VideoComponent.ts again with original file name

* feat: git rm src/specs/VideoNativeComponent.ts

* feat: git mv VideoNativeComponent.ts

* feat: git mv src/specs/VideoNativeComponent.ts

* feat: git mv src/VideoNativeComponent.ts src/specs/VideoNativeComponent.ts

* feat: implemented array type handling on android JAVA

* feat: updated iOS requestHeaders parsing native

* feat: use safeGetArray on android, removed not using import too

* feat: temporary commit - reusing enum types for remaining docs types

* feat: implemented mixed type of SelectedTrack.value for JS layer
2024-03-07 11:35:17 +01:00
Krzysztof Moch
38e3625541
fix(android): suppress lint PrivateResource (#3531) 2024-02-14 13:13:36 +01:00
Gyanendro Kh
af6aea8934
fix(android): onSeek called instantly (#3530) 2024-02-13 14:58:53 +01:00
Krzysztof Moch
41e9bcb1ef
fix(android): fix crash with interop layer (#3509) 2024-01-31 12:36:01 +01:00
Olivier Bouillet
aec7db6390
Revert "fix: remove pausePlayback when audio focus loss event (#3496)" (#3504)
This reverts commit b1ab0f24a3.

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2024-01-29 07:36:13 +01:00
Krzysztof Moch
135d97ce50
fix(android): re-layout controls after fullscreen dismiss (#3490)
* fix(android): re-layout controls after fullscreen dismiss
2024-01-26 21:34:07 +01:00
YangJH
7eeb1c530d
refactor(android): remove redundant prop variable (#3492) 2024-01-23 22:28:12 +01:00
YangJH
b1ab0f24a3
fix: remove pausePlayback when audio focus loss event (#3496) 2024-01-23 22:22:14 +01:00
YangJH
3858a15b42
fix: remove lifecycle listener after component unmount (#3489)
- fix issue #3488
2024-01-20 13:29:29 +01:00
Hanno J. Gödecke
11e5b756b1
fix(android): support opacity properly (#3464) 2024-01-10 08:46:40 +01:00
lovegaoshi
dd7bb54720
fix(android): default UA (#3429)
* Update DataSourceUtil.java

* fix(android): default UA
2023-12-20 19:49:26 +01:00
Olivier Bouillet
c8983f4094
chore: remove unused declarations (#3414)
Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-12-10 15:55:17 +01:00
Olivier Bouillet
f9bcaac515
fix(android): ensure adTagUrl can be reset (#3408)
Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-12-08 13:30:23 +01:00
Olivier Bouillet
908e30f9b8
fix(android): add explicitly dependancy to androidx.activity (#3410) 2023-12-08 11:33:29 +01:00
Krzysztof Moch
800aee09de
chore: lint project (#3395)
* chore: format swift code
* chore: format clang code
* chore: format kotlin code
* refactor: rename folder "API" to "api"
2023-12-07 08:47:40 +01:00
Krzysztof Moch
91d7135562
chore: enhance CI tests (#3344)
* chore: add swift linter

* chore: add clang linters

* chore: add kotlin linter

* chore(ci): update workflows

* chore(ci): clean workflows
2023-12-02 15:58:43 +01:00
Axel Vencatareddy
596c02d2b3
feat: add onAdError event listener (#3381)
* feat: add onAdError event listener
* feat: remove onAdError event listener and use already existing
* feat: add ERROR event to docs
2023-12-02 13:52:01 +01:00
YangJH
cac802fb77
chore(android): replacing deprecated SYSTEM_UI flag (#3386) 2023-11-30 21:16:24 +01:00
Axel Vencatareddy
d05231d76b
feat(ad): add data to onReceiveAdEvent (#3378)
* feat(ad): add adData to onReceiveAdEvent
* fix: remove adData from response if empty
* fix: add getAdData to stub file
* chore: fix build without IMA
* fix: rename `adData` to `data`

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-11-27 21:43:30 +01:00
Olivier Bouillet
fe89122524
fix(android): ads build and enable ads in android sample (#3376)
* fix: refactor androidx core version management

* chore: fix missing import rework for media3

* fix: enable IMA in sample

* chore: rename stub fie

* chore: code review, fix variable name

* chore: reorder imports

* chore: fix linking in sample

* chore: fix stub management

* chore: few cleans and ensure we don't use ima is disabled

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-11-24 13:17:13 +01:00
YangJH
2648502b36
feat: implement startPosition (#3355)
* feat(android): implement startPosition

* feat(ios): implement startPosition

* feat: implement startPosition type

* docs: fix typo

* docs: update startPosition

* refactor: put startPosition inside source prop
- put startPosition inside source prop
- rename existing prop (startTime, endTime)

* docs: update startPosition property description

* fix: fix invalid assignments

* refactor: remove redundant optional chaining

* feat: allow "0" to work too
2023-11-24 12:52:46 +01:00
Sung Jeon
0c0f3174cb
fix(android): fix leak caused by removing lifecycle listener too early (#3380)
* Fix lifecycle listener being removed too early
2023-11-23 23:23:44 +01:00
Olivier Bouillet
5beef383cb
fix(android): revert media3 update, back to 1.1.1 (#3369)
* fix: revert last media3 upgrade

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-11-22 15:03:57 +01:00
YangJH
17dbf6e826
feat(android): bump media3 version from v1.1.1 to v1.2.0 (#3362)
* feat(android): bump media3 version from v1.1.1 to v1.2.0

* chore: add lint file for ignore UnstableApi lint error
2023-11-20 08:20:27 +01:00
YangJH
f2e80e9f2d
feat(android): replace deprecated ExoPlayer2 with AndroidX media3 (#3337)
* feat(android): implement AndroidX media3 dependencies
* refactor(android): remove duplicate code
* refactor(android): remove unused codes
* feat(android): replace ExoPlayer2 with AndroidX media3
* fix(android): move default properties to gradle.properties
* revert(android): prevent security exception
* chore: align indent
* chore: remove redundant comments
* chore: reorder import
* fix: apply media3's legacy player control view
2023-11-18 14:13:54 +01:00
YangJH
8fbdc28a73
fix: fixes where Android's muted prop behavior differs from iOS (#3339) 2023-11-08 19:39:04 +01:00
Krzysztof Moch
6df0f7d1c0
chore(android): bump kotlin version (#3334)
* chore(android): update gradle files

* docs: update android installation section
2023-11-08 07:41:17 +01:00
Krzysztof Moch
cdbc856387
feat: add onVolumeChange event (#3322)
* feat: implement `onVolumeChange` event
2023-11-04 18:11:54 +01:00
Andy Garron
68beb2701a
[Android] use explicit not-exported flag for AudioBecomingNoisyReceiver (#3327)
* using explicit not-exported flag for AudioBecomingNoisyReceiver
* androidx.core:core version 1.9.0, androix.activity:activity version 1.6.0

---------

Co-authored-by: Andy G <Andy Garron>
2023-11-04 14:59:59 +01:00
Olivier Bouillet
0bfbda66e4
fix(android): ensure audio volume is changed in UI thread (#3292)
Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-10-18 22:45:19 +02:00
Jay Kim
c78077ff0a
fix(android): remove kotlin-android-extensions (#3299) 2023-10-18 22:31:31 +02:00
Olivier Bouillet
ab0398d7dc
Chore/refactor in api folder (#3285)
* feat: add prop to allow controlling of debug log level

* fix: move props parsing to safeGetters

* chore: fix typing

* chore: fix types and lintter

* chore: move file VideoEventEmitter

* fix: make VideoEventEmitter player agnostic

And create a dedicated API data for that

* chore: move generic file in API folder

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-10-13 17:27:55 +02:00
Olivier Bouillet
ad581ea2dc
chore(android): Fix/make videoEventEmitter agnostic on player (#3281) 2023-10-12 21:46:40 +02:00
Olivier Bouillet
a4073d3e70
chore(android): fix some android studio warning (#3290)
Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-10-12 10:36:43 +02:00
Krzysztof Moch
7fd7b3ff32
feat: refactor resize prop handler (#3286) 2023-10-11 21:56:54 +02:00
Olivier Bouillet
add87922a6
feat(android): add prop to control debug log level (#3277)
* feat: add prop to allow controlling of debug log level

* fix: move props parsing to safeGetters

---------

Co-authored-by: olivier <olivier.bouillet@ifeelsmart.com>
2023-10-10 09:47:56 +02:00
Krzysztof Moch
6e98cb9700
Merge branch 'master' into feat/playback-ref-functions 2023-09-29 22:44:32 +02:00
Olivier Bouillet
21de75eac6
Merge pull request #3254 from TheWidlarzGroup/feat/is-codec-supported-update
feat(android): update `isCodecSupported` to return enum
2023-09-29 18:28:18 +02:00
KrzysztofMoch
01c8e54e12 chore(android/gradle): add suport for AGP 8 2023-09-25 12:24:08 +02:00
KrzysztofMoch
842a156b3c chore(android/gradle): remove doubled compileOptions 2023-09-25 12:21:21 +02:00
KrzysztofMoch
4ad210b6c7 chore(android/gradle): update namespace handler 2023-09-25 12:21:21 +02:00
KrzysztofMoch
812e9dc84f feat(android): update isCodecSupported to return enum 2023-09-25 08:17:03 +02:00
KrzysztofMoch
f9743fdbd6 chore: invert setPlayerPauseState logic 2023-09-22 09:04:20 +02:00
KrzysztofMoch
421712825b chore: rename setPlayerStatus to setPlayerPauseState 2023-09-21 07:25:21 +02:00
KrzysztofMoch
0066ec744c feat(android): add playback functions to ref 2023-09-18 13:09:53 +02:00
olivier
19c8134dbc chore: fix build by adding a fallback on kotlin version 2023-09-05 22:17:37 +02:00
Craig Martin
0678a2ccf1 Fix: AudioOutput on Android 2023-09-05 14:27:10 -04:00
Craig Martin
89464279d1 Add missing import 2023-08-25 15:16:18 -04:00
Craig Martin
12edcf8555 Add missing import 2023-08-25 15:14:22 -04:00
Craig Martin
1111cdc15a Move enum to its own file 2023-08-25 15:09:19 -04:00
Craig Martin
dbeea19ce8 Formatting cleanup 2023-08-22 23:42:13 -04:00
Craig Martin
140cfe0a9c Additional formatting cleanup 2023-08-22 23:35:51 -04:00
Craig Martin
90a8eb245d Revert formatting changes to keep diff cleaner 2023-08-22 23:30:01 -04:00
Craig Martin
db6e73e035 Merge remote-tracking branch 'upstream/master' 2023-08-22 22:31:30 -04:00
Olivier Bouillet
30d8146916
Merge pull request #3175 from react-native-yeouido/feature/fabric-example
[New Arch] Fabric Example
2023-08-03 21:37:59 +02:00
Olivier Bouillet
90fe971dee
Merge pull request #3179 from vemarav/shuttercolor
Android: fixes black splashes
2023-08-03 20:59:35 +02:00
Olivier Bouillet
236d17e8b5
Merge branch 'master' into fix-memleak 2023-08-03 20:53:12 +02:00
Craig Martin
dc3e83a3d5 Merge remote-tracking branch 'upstream/master' 2023-07-27 16:24:11 -04:00
Aravind Vemula
28ac4d20f8 fixes black splashes on android 2023-07-23 21:38:26 +05:30
yungblud
0ca348f4b5 feat: setup kotlin 2023-07-19 16:32:19 +09:00
Olivier Bouillet
48fa1bc0e9
Merge pull request #3163 from mrousavy/patch-1
feat: RN 0.73 support
2023-07-08 12:51:38 +02:00
Marc Rousavy
7e5bc488c7
feat: RN 0.73 support
Adds `namespace` prop which is required by Gradle 8 (dep. of RN 0.73)
2023-07-03 22:12:44 +02:00
Roland Yeghiazaryan
7f3d707628
Fix ids in exo_player_control_view 2023-06-15 10:56:37 +02:00
Basix
493b620e63
Move OnAudioFocusChangeListener to own class 2023-05-09 11:45:56 +09:00
Craig Martin
e0095c3aff Make sure audioOutput is respected on first render 2023-04-12 17:43:52 -04:00
Craig Martin
daabb91475 Allow audio output via earpiece 2023-04-02 14:02:56 -04:00
Yavor Ivanov
b65f94b27e Merge branch 'master' into AndroidRangePlayback 2023-02-13 18:15:06 +02:00
Yavor Ivanov
31b43f232b android support for partial video range 2023-02-13 17:57:13 +02:00
Yavor Ivanov
e3fb49cebb Android formatting fixes 2023-02-13 17:30:24 +02:00
Yavor Ivanov
3266eb2d67 Merge remote-tracking branch 'official/master' 2023-02-13 15:39:22 +02:00
olivier
7aeaa2a3d1 chore(android): fix path to disable CSAI 2023-02-09 23:20:10 +01:00
Yavor Ivanov
a56b4d148c Fixed android build error 2023-02-09 13:53:06 +02:00
Radin Gospodinov
6ca0ab3834 Android range playback. 2023-02-09 09:38:05 +02:00
olivier
57b4a76775 fix: add stub for IMA and option to enable it on demand 2023-02-07 23:14:50 +01:00
Samet Şahin
9d72011009 fix 2023-01-18 14:53:34 +03:00
Samet Şahin
07d0c9ebfc fix 2023-01-18 13:41:32 +03:00
Olivier Bouillet
9bcca0c5be
Merge pull request #2806 from iFeelSmart/feat/add_new_events_on_tracks_changed
Feature(android): new events on tracks changed
2023-01-03 18:50:38 +01:00
olivier bouillet
2b6654b458 Merge branch 'master' of https://github.com/react-native-video/react-native-video into feat/add_new_events_on_tracks_changed
# Conflicts:
#	API.md
#	android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java
#	android/src/main/java/com/brentvatne/exoplayer/VideoEventEmitter.java
#	examples/basic/yarn.lock
2023-01-02 22:59:10 +01:00
olivier bouillet
8c95464788 fix(android): fix tracks selection 2023-01-02 21:52:41 +01:00
olivier bouillet
7cd164ea2c chore(android): small refactor to avoid unnecessary allocations 2023-01-02 21:52:08 +01:00
olivier bouillet
c529f1ecad fix(android): clear progress handler before adding new one 2022-12-22 08:37:31 +01:00
Jay Kim
c263cc89ff
fix(android): check null activity
If activity is null at initialization, the app crashes. This change checks for null activity and throw react native error, which prevents app crash.
2022-12-14 13:26:29 +09:00
Axel Vencatareddy
eef8f2cecc
Merge branch 'master' into master 2022-11-30 13:14:07 +01:00
Axel Vencatareddy
567c299b2a [ANDROID ADS] Always setAdTagUrl even if it's null 2022-11-30 12:39:43 +01:00
Axel Vencatareddy
8040ac99ce [ADS] Make ImaAdsLoader nullable 2022-11-16 20:46:36 +01:00
Axel Vencatareddy
8ee6ad9900 [ADS] Add adOverlayFrameLayout in layout instead of view 2022-11-16 20:16:37 +01:00
Axel Vencatareddy
0a30f207df [ANDROID] Remove multidex usage as it is not mandatory 2022-11-16 20:11:29 +01:00
Axel Vencatareddy
b9f6ed438c [ANDROID] Update build.gradle 2022-11-16 19:20:06 +01:00
Axel Vencatareddy
0d70c53f53 [ANDROID] Fix reformating code that do not belong to this feature 2022-11-16 13:45:18 +01:00
Axel Vencatareddy
c789363c5b [ANDROID] Fix video not playing if no adTagUrl passed 2022-11-16 13:42:25 +01:00
Axel Vencatareddy
915e31a874 [CLEAN] Cleanup useless code 2022-11-16 13:23:50 +01:00