Commit Graph
1216 Commits
Author SHA1 Message Date
Armands MalejevandGitHub 2fcc1de626 VEX-5825: Android player error handling improvements (#10)
Improve error handling.
2021-10-12 14:56:50 +03:00
Armands MalejevandGitHub a0b679cc07 VEX-5545: Some Android codecs don't support specific resolutions (#8)
Add support for detecting if format is supported and exclude unsupported resolutions from auto quality selection and video track info in RN.
2021-09-26 16:38:10 +03:00
Armands MalejevandGitHub 93604b2c25 VEX-3245: Buffer Progress UI While Paused (#7)
Add support for onBufferProgress prop on Android to get buffer data even when the player is paused.
2021-07-07 18:59:55 +03:00
Nick FujitaandGitHub cba88fa9d8 VEX-5044: Allow exoplayer to preinit with empty source (#6)
- Allow player to be init before source is provided, and later update once a source is provided.
- Adds handling for providing a empty source in order to stop playback and clear out any existing content
2021-06-30 10:24:21 +09:00
Armands MalejevandGitHub 80873102a4 VEX-4579: Network loss handling (#5)
Add support for customizing back buffer duration and handle network errors gracefully to prevent releasing the player when network is lost.
2021-05-17 13:09:09 +03:00
Armands MalejevandGitHub f6cce0d819 VEX-4556: The app crashes when the premium episode is loaded (#4)
Fix player crashing when it is being cleared.
2021-05-07 11:37:57 +03:00
Adrian MuiandGitHub 61e6535b2f Feature/toggle buffering (#3)
This PR adds the property disableBuffering: boolean for android. The PR was initally created as a personal fork and referenced in crunchyroll/vilos#1227

also updated RNVLoadControl constructor and method to reflect new ExoPlayer.LoadControl api

related ticket: https://jira.tenkasu.net/browse/VEX-3776
2021-03-18 12:58:04 +02:00
Armands MalejevandGitHub 6100981760 Upgrade exoplayer to 2.13.2 (#2)
Upgrade ExoPlayer from 2.11.4 to 2.13.2 and fix any related issues related to the upgrade and deprecated method use.
2021-03-17 17:49:10 +02:00
Armands MalejevandGitHub 568971be77 Fix AudoFocus pausing video when attempting to play (#1)
Fix AudioFocus bug that could cause the player to stop responding to play/pause in some instances.

Fixes issue react-native-video#1945

This was caused by the player requesting audio focus on each play (un-pause) and that resulted in a small window of Audio focus loss and then gain. The focus loss results in the player being paused while the player was supposed to play at the time. The solution is to keep track of Audio focus and not request new focus if we already have it.
2021-03-15 16:51:16 +02:00
Nick 5adedb131b Update package.json version number to 5.1.1 2021-01-14 11:13:39 +09:00
Nick FujitaandGitHub 88b636f158 iOS DRM Fixes for License Fetching (#2208) 2021-01-13 19:18:01 +09:00
Tero PaananenandGitHub faf8aed29b Renaming Boolean etc to AsBoolean (#2119) 2020-09-30 14:27:39 -04:00
Radek CzemerysandGitHub f653589ecd fix: Xcode 12 compatibility (#2152)
Latest Xcode 12 fails to build while without a module to depend on React-Core directly hence this change is necessary for native modules on iOS. This change requires to React Native 0.60.2 or newer. For more details please check: facebook/react-native#29633 (comment)
2020-09-29 10:05:28 -04:00
IrwinandGitHub 4246016fb4 Update README.md (#2076)
You only need to perform linking for React Native < 0.60
2020-09-29 10:01:02 -04:00
Adam GormanandGitHub 408d3f720e Add ARM64 support for windows (#2137)
Adding arm64 support for RNW builds.

Nothing in this project is using anything that isn't already supported in arm64 windows libs. It was simply overlooked when RNW was originally added.

We have been using RNW and RNV in our project for 6+ months and just been using a patch-package to apply this change. Figured it was overdue to upstream this change.

You can see this similar code in the RNW repo.
https://github.com/microsoft/react-native-windows/blob/95935e008621778dbcec01363602c19abc060632/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/SampleLibraryCPP.vcxproj#L28
and
https://github.com/microsoft/react-native-windows/blob/master/packages/microsoft-reactnative-sampleapps/windows/SampleLibraryCPP/SampleLibraryCPP.vcxproj#L44
2020-09-29 10:00:27 -04:00
Hampton Maxwell 5683167a3a Prepare 5.1.0-alpha8 2020-08-19 20:20:21 -07:00
Nick FujitaandGitHub f70c4294ff Merge pull request #2116 from nickfujita/id3-error-fix
Port over ID3 fix from 4.x branch
2020-08-20 12:16:02 +09:00
Nick Fujita 553fef02cc Port over fix from 4.x branch 2020-08-17 16:28:36 +09:00
Hampton Maxwell f3e6ce1058 Prepare 5.1.0-alpha7 2020-08-12 19:01:29 -07:00
Hampton Maxwell 90da768087 Ready 5.1.0-alpha6 for release 2020-08-12 19:00:48 -07:00
Daniel MariñoandGitHub 81b42e7ca7 Add iOS and Android basic DRM support (#1445)
This PR adds support for DRM streams on iOS (Fairplay) and Android (Playready, Widevine, Clearkey)

I am neither Android nor iOS developer, so feel free to provide feedback to improve this PR.

**Test stream for ANDROID:**
```
testStream = {
        uri: 'http://profficialsite.origin.mediaservices.windows.net/c51358ea-9a5e-4322-8951-897d640fdfd7/tearsofsteel_4k.ism/manifest(format=mpd-time-csf)',
        type: 'mpd',
        drm: {
            type: DRMType.PLAYREADY,
            licenseServer: 'http://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(persist:false,sl:150)'
        }
    };
```

or 
```
{
    uri: 'https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd',
    drm: {
        type: 'widevine', //or DRMType.WIDEVINE
        licenseServer: 'https://drm-widevine-licensing.axtest.net/AcquireLicense',
        headers: {
            'X-AxDRM-Message': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImZpcnN0X3BsYXlfZXhwaXJhdGlvbiI6NjAsInBsYXlyZWFkeSI6eyJyZWFsX3RpbWVfZXhwaXJhdGlvbiI6dHJ1ZX0sImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.FAbIiPxX8BHi9RwfzD7Yn-wugU19ghrkBFKsaCPrZmU'
        },
    }
}
```

**Test stream for iOS:**
Sorry but I can not provide free streams to test. If anyone can provide test streams, or found some we can use, please let me know to also test them.

It has been tested with a private provider and they work, at least with the `getLicense` override method. (An example implementation is provided in the README)
2020-08-12 18:56:21 -07:00
Jeferson DanielandGitHub dbf1a4e034 Fix exoplayer aspect ratio update on source changes (#2053)
* Fix exoplayer aspect ratio update on source changes

* Update CHANGELOG.md
2020-06-30 19:00:16 +02:00
8962720f56 Support preventsDisplaySleepDuringVideoPlayback (#2019)
* Add flag on iOS

* Add flag in Android

* Add documentation

* Add changelog entry

* Also set setKeepScreenOn

* Fix prop not being set

* add preventsDisplaySleepDuringVideoPlayback to exoplayer

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

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

Co-authored-by: Jens Andersson <jens@fritan.com>

Co-authored-by: Anton Tanderup <antontandrup@gmail.com>
Co-authored-by: Jens Andersson <jens@fritan.com>
2020-06-16 14:31:23 +02:00
Jens AnderssonandGitHub 9c31948dbf Always set headers for iOS (#2014) 2020-06-11 16:53:14 +02:00
Jens AnderssonandGitHub f395bd1d3d Removed JS fullscreening for Android (#2013) 2020-06-11 16:44:13 +02:00
limaAnicetoandGitHub 7c8c613a65 Upgrade exoplayer to 2.11.4 (#2034) 2020-06-11 09:17:33 -04:00
Jens AnderssonandGitHub 2dd5025190 Revert "[ios] Adaptive fullscreen in landscape by device orientation (#1862)" (#2043)
This reverts commit c9096d16f7.
2020-06-09 12:35:18 +02:00
Tuan LuongandGitHub c9096d16f7 [ios] Adaptive fullscreen in landscape by device orientation (#1862)
* update UIInterfaceOrientation in fullscreen

* update code
2020-05-15 14:48:15 +02:00
0b914ef2b9 Expose currentPlaybackTime when live stream video (#1944)
* added trackId to exoplayer onLoad callback

* added trackInfo to bandwidth callback

* syntax fix

* syntax fix

* version update

* sending complete logcat for media playback exception ExoPlaybackException

* version bump

* package publish changes

* Live playback fix

* Version bump

* import fix

* version bump

* configurable preferredForwardBufferDuration

* configurable preferredForwardBufferDuration

* version update

* Exposing time

* exo player window current tsp

* return type

* Current window timestamp in epoch

* iOS changes

* version update

* Updated package.json

* updated version

* CurrentTime bug fix

* Updated package.json

* Updated currentPlaybackTime

* Updated currentPlayback logic

* Updated package.json

* Bug fix

* Added semicolon

* updated package.json

* Updated ReactVideoView

* updated verison

* Revert package.json changes

* Update ReactVideoView.java

* Use standard log

* Document preferredForwardBufferDuration (iOS)

* Document currentPlaybackTime

* Document trackId

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update README.md

* Update CHANGELOG.md

Co-authored-by: anubansal <anu.bansal@curefit.com>
Co-authored-by: Sivakumar J <sivakumar@curefit.com>
Co-authored-by: parikshit <parikshit@curefit.com>
Co-authored-by: anubansal92 <40559524+anubansal92@users.noreply.github.com>
Co-authored-by: Rishu Agrawal <rishu.agrawal@v.curefit.com>
Co-authored-by: rishu-curefit <54575330+rishu-curefit@users.noreply.github.com>
2020-05-15 09:25:19 +02:00
Evan BaconandGitHub e3009c60e1 Recommend npx pod-install for setup instructions
# Summary

We've been recommending devs use `npx pod-install` since it will attempt to install CocoaPods CLI if it's not available on the computer (cite [React Navigation setup guide](https://reactnavigation.org/docs/getting-started/#installing-dependencies-into-a-bare-react-native-project)). This has proved very useful for Expo users who are now migrating to the bare workflow and want to use community packages in their projects.

## Checklist

- [x] I have tested this on a device and a simulator
- [x] I added the documentation in `README.md`
2020-05-14 12:16:36 -07:00
Jens AnderssonandGitHub d6a7117250 Merge pull request #1994 from jenshandersson/pendingseek
Implement pending seek fully
2020-05-07 11:05:16 +02:00
Jens Andersson 6bc25f1099 Implement pending seek 2020-05-07 11:00:59 +02:00
Jens AnderssonandGitHub 838b99aacb Update CHANGELOG, alpha-6 hasn't been released yet 2020-05-07 10:54:31 +02:00
Jens AnderssonandGitHub c4385090ab Merge pull request #1978 from euharrison/master
Audio mix with other apps for iOS
2020-05-07 09:52:34 +02:00
Harrison Mendonça b8234f8dc5 Update CHANGELOG.md 2020-05-06 12:15:47 -03:00
Harrison Mendonça 2b33b9ebbb Merge remote-tracking branch 'upstream/master' 2020-05-06 12:09:41 -03:00
Jens AnderssonandGitHub c579d3cddd Merge pull request #1992 from jenshandersson/feat/hlssize
Fix video dimensions for HLS streams
2020-05-05 18:16:28 +02:00
Jens Andersson 08c7aaa77e Compare CGFloats instead 2020-05-05 18:10:49 +02:00
Jens Andersson 4bc2a723a4 Changelog 2020-05-05 17:56:44 +02:00
Jens Andersson cc2e9c42fa Fix video dimensions for HLS streams 2020-05-05 17:49:42 +02:00
Harrison Mendonça 052f49e472 Update index.ios.js 2020-04-20 20:12:34 -03:00
Harrison Mendonça 4157a609ac Update README.md 2020-04-20 18:47:59 -03:00
Harrison Mendonça b4582c681b add mixWithOthers prop 2020-04-20 17:25:59 -03:00
Hampton MaxwellandGitHub 1ecb09acc4 Update onLoad event to include videoTracks info 2020-03-02 14:31:06 -08:00
Marlon AndradeandGitHub 91384d8489 Don't set reactViewController view frame to whole screen (#1931)
this fixes the case on any time you have a react view that displays the video, but it's being rendered with controls but not as a full screen (ie. easily reproducible when you have a tabbar for instance - the reactViewController.view frame shouldnt be the whole screen bounds).
2020-02-26 20:43:33 -05:00
Benoit Dion 68dc15242d v5.1.0-alpha5 2020-02-25 19:10:26 -05:00
Benoit Dion 89b6d113a1 Update changelog 2020-02-25 19:09:01 -05:00
Brandon FaulknerandGitHub 6d1a7bed58 Fix the ref sample code to remove the syntax error 2020-02-25 09:22:41 -05:00
Di DaandGitHub a4fec8eb99 Add support for react-native Windows Cpp/WinRT (#1893)
This also deprecates the old react-native windows implementation
2020-02-25 09:21:06 -05:00
Benoit DionandGitHub 4f07aab8b1 Bump javascript dependencies (#1914)
Also update linting rules to match other community repositories.
2020-02-22 13:56:31 -05:00