a849cc19e8
fix: add extra checks to determine if a file is local ( #4503 )
...
* fix: beter isLocalAsset checks
* fix: add "asset://" to possible assets paths
* Update src/Video.tsx
---------
Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com >
2025-04-06 16:18:34 +02:00
Kamil Moskała and GitHub
41ddc5c27a
feat(android): initial bitrate ( #4480 )
...
* feat(android): implement initialBitrate
* refactor: reorder type
* docs: add initialBitrate section
* fix: lint
* refactor: move `initialBitrate` into `source.bufferConfig`
2025-04-06 16:16:58 +02:00
Wojciech Ogrodowczyk and GitHub
d2e5d9c64e
feat(ios): set playback speed controls to initial playback rate ( #4495 )
...
Otherwise, the Video can be initiated with playback rate 0.5 and
play correctly (slower), but in native playback speed controls 1.0
will be marked as current playback speed.
2025-04-02 17:37:56 +02:00
Kamil Moskała and GitHub
697afd52f6
feat(android): add asset management functions to plugin ( #4494 )
...
* feat: manage asset plugins
* fix: continue when plugin is not exoplayer plugin
* refactor: change functions plugin type
* docs: introduce new plugins
2025-03-28 13:41:13 +01:00
Kamil Moskała and GitHub
f188a7fd48
refactor(ios): unpause after exiting fullscreen ( #4472 )
...
* refactor(ios): unpause after exiting fullscreen
* chore: lint code
2025-03-26 12:20:32 +01:00
Wojciech Ogrodowczyk and GitHub
229a5764ea
fix(ios): don't try to modify react view after unmount ( #4474 )
2025-03-22 15:17:41 +01:00
Kamil Moskała and GitHub
4458627051
docs: update favico & add json-ld ( #4477 )
2025-03-19 10:57:41 +01:00
Krzysztof Moch
ede502bf74
chore: release v6.11.0
2025-03-16 14:15:57 +01:00
Emmanuel Ferdman and GitHub
044e08a78d
docs: update examples ( #4468 )
...
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com >
2025-03-13 20:19:49 +01:00
Lyqqt and GitHub
d902c1bf43
feat(windows): add topSeek parms mentioned in docs ( #4456 )
2025-03-13 12:06:36 +01:00
Krzysztof Moch and GitHub
9f02614f5d
refactor(ios): add audio session manager ( #4466 )
2025-03-12 18:22:50 +01:00
Lyqqt and GitHub
fa20223c44
fix(windows): event name not matches with SPEC ( #4455 )
2025-03-12 14:14:23 +01:00
Krzysztof Moch and GitHub
6e6f91517c
feat: enhance react-native-video plugins [Plugins API Breaking] ( #4366 )
...
* feat: allow plugins for providing custom DRM manager
This will allow plugins to provide DRM manger to create custom implementations, eg. using SKD from DRM providers
* chore(example): fix drm example on android
* chore: lint code
* fix: remove platform player logic & dependency from `RNVPlugin`
* chore: change warning to debug msg
* chore: lint code
* chore(example/bare): update Podfile.lock
* refactor: reorganize ReactNativeVideoManager plugin registration methods
* refactor: add helpers & clean code
* docs: update documentation
* lint code
* add comment
* docs: update plugins section
2025-03-12 14:13:46 +01:00
Marcin Dziewulski and GitHub
b5103743e8
fix(android): call startForeground() immediately to prevent ForegroundServiceDidNotStartInTimeException ( #4453 )
...
* fix: call startForeground() immediately in onStartCommand() to prevent ForegroundServiceDidNotStartInTimeException
* fix: use string resources for notification text instead of hardcoded strings
* fix: add missing import
* fix: resolve CI issues
* fix: use getString() method to convert string resource IDs to actual strings
2025-03-12 13:42:02 +01:00
Olivier Bouillet and GitHub
f9d3878ecc
chore(ios): remove duplicated code ( #4439 )
2025-03-12 13:37:03 +01:00
Kamil Moskała and GitHub
b11c1f315d
docs: remove ga ( #4462 )
2025-03-11 17:42:22 +01:00
bc533e53b0
fix(ios): invalid metadata handling ( #4422 )
...
- When the metadata has the tag "iTunSMPB" or "iTunNORM" then the metadata is not converted correctly and comes [nil, nil, ...] which leads to crash
Co-authored-by: Alexander <aleksandar.todorov@serviceos.com >
2025-03-10 22:03:05 +01:00
9055b14cf4
docs: update structure ( #4454 )
...
* [Preview] docs: update (#9 )
Co-authored-by: Bart Widlarz <bart@thewidlarzgroup.com >
* docs: update links
* docs: fix naming
* docs: update footer
* docs: update content
* docs: refine grammar
* fix(docs): update typo
* docs: update url
* refactor: sdk name
* docs: add issue boost link
* docs: add new roadmap to readme
* lint code
---------
Co-authored-by: Bart Widlarz <bart@thewidlarzgroup.com >
Co-authored-by: Kamil <moskalakamil07@gmail.com >
2025-03-06 12:38:25 +01:00
YangJH and GitHub
82f5f3d21c
fix(android): fix bugs related Android PIP listeners ( #4441 )
...
* fix(android): fixed bug where listeners were not removed properly
* fix(android): fixes a bug that causes PIP to work when player is null
* refactor(android): call pipUnsubscriber without handler
* chore(android): apply lint
2025-03-06 12:24:59 +01:00
Kamil Moskała and GitHub
13a5da8955
chore: update utm links ( #4447 )
...
* chore: update utm links
* Update package.json
2025-03-04 15:32:40 +01:00
YangJH and GitHub
235c281219
fix(android): prevent ratio calculations before loading video ( #4442 )
2025-03-04 15:11:13 +01:00
Philipp Mikheyev and GitHub
057c287f12
fix(tvOS): handle allowsPictureInPicturePlayback for tvOS ( #4448 )
2025-03-04 15:08:24 +01:00
Olivier Bouillet
b8459ca71d
chore: release v6.10.2
2025-02-22 15:05:17 +01:00
Szymon Rybczak and GitHub
3edf511f9b
docs: remove additional braces in config file ( #4418 )
2025-02-19 19:22:35 +01:00
6697cbf5d0
fix(android): fix gradle exception text related to AndroidX version ( #4420 )
...
* fix(android): fix gradle exception text related to AndroidX version check
* Update android/build.gradle
---------
Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com >
2025-02-19 19:19:41 +01:00
Konstantin and GitHub
04eec42f1e
fix(tvOS): fix tvos compile error for rotation handler ( #4417 )
2025-02-16 11:55:46 +01:00
Olivier Bouillet
451bafebd7
chore: release v6.10.1
2025-02-15 17:26:27 +01:00
Efstathios Ntonas and GitHub
a8ca97f05f
fix(ios): fix constraints when controls are enabled and video is inside a ScrollView ( #4383 )
2025-02-15 17:22:06 +01:00
Mihai and GitHub
c8b800a508
fix(ios): the video has no audio by default ( #4409 )
...
This reverts the change in https://github.com/TheWidlarzGroup/react-native-video/pull/4319 , I don't think that change is correct.
According to [docs](https://docs.thewidlarzgroup.com/react-native-video/component/props#selectedtexttrack ) the default value for `selectedTextTrack.type` is "system" which means the video should respect user's preference in Settings > Accesibility > Subtitles & Captioning > Closed Captions + SDH. And this is exactly what happens by default without the changes in that PR. I think the author of that PR had this setting on, that's why it was showing the subtitles without setting something for `selectedTextTrack`, which IMO is the expected result. In order to explicitly turn off subtitles you have to set `selectedTextTrack={{ type: 'disabled' }}`. I tested it with this video and the settings option on and it works (disables the subtitles) -> https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_ts/master.m3u8
Another reason why I think it should be reverted is because it also affects `selectedAudioTrack`. By default it should also have 'system' type according to [docs](https://docs.thewidlarzgroup.com/react-native-video/component/props#selectedaudiotrack ), which means "Play the audio track that matches the system language. If none match, play the first track.", but the change in that PR turns the audio off by default unless you explicitly turn it on with `selectedAudioTrack={{ type: 'system' }}`.
Fixes #4400
2025-02-15 17:09:04 +01:00
Olivier Bouillet and GitHub
faac5ad456
fix(sample): remove duplicate code in sample ( #4391 )
...
* fix: remove duplicated code in sample
2025-02-15 17:05:59 +01:00
Krzysztof Moch and GitHub
2905b61a0d
fix(infra): kotlin linter github action ( #4408 )
2025-02-09 14:14:40 +01:00
Olivier Bouillet and GitHub
74b1d5b540
fix(android): remove transparent black overlay on android default controls ( #4392 )
2025-02-09 14:09:28 +01:00
ad52668d05
fix(android): check for valid width and height on video format data ( #4394 )
...
Co-authored-by: mehdi <m.taghdisi@digikala.com >
2025-01-27 18:43:30 +01:00
Olivier Bouillet and GitHub
638f454a21
fix(android): check androidX version at early build process before really launching build ( #4388 )
2025-01-25 17:10:47 +01:00
Olivier Bouillet
43955037bb
chore: release v6.10.0
2025-01-22 22:59:46 +01:00
Olivier Bouillet and GitHub
3d3eba97e8
fix(ios): fix paused video by default ( #4379 )
...
* fix: update style to allow show control click
* fix: push missing revert
2025-01-22 22:56:50 +01:00
darth levi and GitHub
d90bf47df5
fix(windows): conversion of string to Stretch enum ( #4381 )
2025-01-22 22:32:25 +01:00
Olivier Bouillet and GitHub
d9f92b800e
chore: add pre commit hook to lint and tsc the code ( #4378 )
2025-01-22 22:31:30 +01:00
Hugo EXTRAT and GitHub
8b952e709a
fix(android): support RN 0.77 ( #4386 )
2025-01-22 22:27:28 +01:00
8dc10fd4b7
feat(web): implement web pip method and event ( #4370 )
...
Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com >
2025-01-18 15:19:55 +01:00
Olivier Bouillet and GitHub
449dfb62b5
chore: fix linter ( #4377 )
2025-01-18 15:05:58 +01:00
YangJH and GitHub
6c3af99979
fix(tvOS): fix tvos compile error ( #4369 )
...
* fix(tvOS): fix tvos compile error
2025-01-18 11:49:12 +01:00
Kamil Moskała and GitHub
6cc1bff167
docs: fix analytics ( #4368 )
2025-01-13 15:01:15 +01:00
Krzysztof Moch
89ee02bdab
chore: release v6.9.1
2025-01-10 12:09:07 +01:00
Joy and GitHub
3924b5e295
fix: NPE in setEnterPictureInPictureOnLeave for unsupported Android versions ( #4362 )
2025-01-10 12:07:25 +01:00
Krzysztof Moch and GitHub
eff8ea24af
infra: fix bot comments ( #4367 )
2025-01-10 12:01:31 +01:00
Olivier Bouillet and GitHub
c47d165668
chore(android): fix type in generic folder ( #4323 )
2025-01-04 13:48:59 +01:00
424f4eedde
fix: avoid memory leak on iOS ( #4355 )
...
* fix: avoid memory leak on iOS
---------
Co-authored-by: Vladimir Vlasov <crivlaldo@gmail.com >
2025-01-04 13:47:22 +01:00
Krzysztof Moch
d31c72fc04
chore: release v6.9.0
2025-01-04 12:51:27 +01:00
69a7bc2d26
feat: implement enterPictureInPictureOnLeave prop for both platform (Android, iOS) ( #3385 )
...
* docs: enable Android PIP
* chore: change comments
* feat(android): implement Android PictureInPicture
* refactor: minor refactor code and apply lint
* fix: rewrite pip action intent code for Android14
* fix: remove redundant codes
* feat: add isInPictureInPicture flag for lifecycle handling
- activity provide helper method for same purpose, but this flag makes code simple
* feat: add pipFullscreenPlayerView for makes PIP include video only
* fix: add manifest value checker for prevent crash
* docs: add pictureInPicture prop's Android guide
* fix: sync controller visibility
* refactor: refining variable name
* fix: check multi window mode when host pause
- some OS version call onPause on multi-window mode
* fix: handling when onStop is called while in multi-window mode
* refactor: enhance PIP util codes
* fix: fix FullscreenPlayerView constructor
* refactor: add enterPictureInPictureOnLeave prop and pip methods
- remove pictureInPicture boolean prop
- add enterPictureInPictureOnLeave boolean prop
- add enterPictureInPicture method
- add exitPictureInPicture method
* fix: fix lint error
* fix: prevent audio play in background without playInBackground prop
* fix: fix onDetachedFromWindow
* docs: update docs for pip
* fix(android): sync pip controller with external controller state
- for media session
* fix(ios): fix pip active fn variable reference
* refactor(ios): refactor code
* refactor(android): refactor codes
* fix(android): fix lint error
* refactor(android): refactor android pip logics
* fix(android): fix flickering issue when stop picture in picture
* fix(android): fix import
* fix(android): fix picture in picture with fullscreen mode
* fix(ios): fix syntax error
* fix(android): fix Fragment managed code
* refactor(android): remove redundant override lifecycle
* fix(js): add PIP type definition for codegen
* fix(android): fix syntax
* chore(android): fix lint error
* fix(ios): fix enter background handler
* refactor(ios): remove redundant code
* fix(ios): fix applicationDidEnterBackground for PIP
* fix(android): fix onPictureInPictureStatusChanged
* fix(ios): fix RCTPictureInPicture
* refactor(android): Ignore exception for some device ignore pip checker
- some device ignore PIP availability check, so we need to handle exception to prevent crash
* fix(android): add hideWithoutPlayer fn into Kotlin ver
* refactor(android): remove redundant code
* fix(android): fix pip ratio to be calculated with correct ratio value
* fix(android): fix crash issue when unmounting in PIP mode
* fix(android): fix lint error
* Update android/src/main/java/com/brentvatne/react/VideoManagerModule.kt
* fix(android): fix lint error
* fix(ios): fix lint error
* fix(ios): fix lint error
* feat(expo): add android picture in picture config within expo plugin
* fix: Replace Fragment with androidx.activity
- remove code that uses Fragment, which is a tricky implementation
* fix: fix lint error
* fix(android): disable auto enter when player released
* fix(android): fix event handler to check based on Activity it's bound to
---------
Co-authored-by: jonghun <jonghun@toss.im >
Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com >
2025-01-04 12:37:33 +01:00