Commit Graph

279 Commits

Author SHA1 Message Date
Daniel Mariño
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 Daniel
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
Anders Lemke
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 Andersson
9c31948dbf
Always set headers for iOS (#2014) 2020-06-11 16:53:14 +02:00
Jens Andersson
f395bd1d3d
Removed JS fullscreening for Android (#2013) 2020-06-11 16:44:13 +02:00
Param Aggarwal
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
Jens Andersson
6bc25f1099 Implement pending seek 2020-05-07 11:00:59 +02:00
Jens Andersson
838b99aacb
Update CHANGELOG, alpha-6 hasn't been released yet 2020-05-07 10:54:31 +02:00
Harrison Mendonça
b8234f8dc5 Update CHANGELOG.md 2020-05-06 12:15:47 -03: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
Marlon Andrade
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
89b6d113a1 Update changelog 2020-02-25 19:09:01 -05:00
Benoit Dion
4d0be29cbb
Update changelog (#1913) 2020-02-17 12:43:27 -05:00
Benoit Dion
029b893d58 Bump version to 5.1.0-alpha 2020-01-28 18:43:32 -05:00
IbrahimSulai
9200dce1ae
Add full screen support to Android Exoplayer (#1730) 2020-01-28 17:21:21 -05:00
Daniel Mariño
78f1d29394 update changelog version 2019-09-24 09:30:59 +02:00
Benoit Dion
3d40deb734
Update changelog with Exoplayer update (#1766) 2019-09-23 11:08:37 -04:00
Daniel Mariño
a86f316f00 changelog for #1696 2019-09-21 09:53:57 +02:00
Daniel Mariño Ruiz
cfcf6ce506
Merge branch 'master' into master 2019-09-21 08:41:55 +02:00
Daniel Mariño Ruiz
9272678c8c
Merge branch 'master' into fix-NSInternalInconsistencyException 2019-09-08 08:29:11 +02:00
Jovan Stanimirovic
4320b56545 bumped version & updated changelog 2019-08-22 11:03:23 +02:00
Nahuel Marisi
923bc59b7c Updated CHANGELOG to reflect bug fix in PR 1720 2019-08-20 10:23:52 +02:00
Daniel Mariño
c38ff02d2d 5.0.1 2019-07-28 15:54:17 +02:00
Daniel Mariño
917f9cb460 prepare 5.0.0 version 2019-07-25 10:12:36 +02:00
Daniel Mariño
6bdbaec506 4.4.4 2019-07-12 10:17:23 +02:00
Daniel Mariño
cde2432804 Merge branch 'rnv-master' into feature/handle-props-racing-conditions-on-expplayer
# Conflicts:
#	CHANGELOG.md
2019-07-09 11:39:30 +02:00
Daniel Mariño Ruiz
eae487c57e
Merge branch 'release/4.4.3' into feature/fix-when-muted-and-controls 2019-07-08 12:15:55 +02:00
Daniel Mariño
466c004837 handle racing conditions when props are setted on exoplayer 2019-07-07 10:21:23 +02:00
Daniel Mariño
61a72ad0b0 update changelog 2019-07-06 14:04:08 +02:00
Daniel Mariño Ruiz
9dec6aec4d
Merge branch 'release/4.4.3' into bugfix/android-disablefocus-audio 2019-07-06 09:16:19 +02:00
Daniel Mariño Ruiz
9bc709f35e
Merge branch 'release/4.4.3' into master 2019-07-04 10:05:54 +02:00
Daniel Mariño
6c7a0b4450 changelog for #1629 2019-07-04 10:03:08 +02:00
Kurt Johnson
2b067f1978
Merge branch 'master' into bugfix/android-disablefocus-audio 2019-07-03 16:43:37 -04:00
Jens Andersson
666c26d9ec Updated changelog 2019-07-03 09:42:38 +02:00
Zaid Daghestani
68761793fd
Add #1646 to changelog 2019-07-02 11:43:22 -07:00
Jens Andersson
cb3e8c8281
Merge branch 'release/4.4.2' into posterfix 2019-06-20 09:06:13 +01:00
CHaNGeTe
88d2aed832 bump version 2019-06-20 07:30:51 +02:00
CHaNGeTe
e033fc4666 update changelog for #1592 2019-06-20 07:29:46 +02:00
Daniel Mariño Ruiz
92f7459e6d
Merge pull request #1614 from jenshandersson/master
Remove video player when entering background correctly
2019-06-19 21:11:42 +02:00
Jens Andersson
e5b5bbee7f Updated changelog and readme 2019-06-19 14:32:44 +01:00
Daniel Mariño
9c04bd23fe Update CHANGELOG 2019-06-19 09:24:51 +02:00
Jens Andersson
0a1557984e Update CHANGELOG.md 2019-06-17 09:20:13 +01:00
Daniel Mariño Ruiz
4223f5dfe5
Update CHANGELOG.md 2019-06-12 07:04:43 +02:00
Daniel Mariño Ruiz
5f42e0fb88
Update CHANGELOG.md 2019-06-12 07:01:36 +02:00
Hampton Maxwell
2fb1619692 Android audio freeze fix 2019-04-03 23:29:39 -07:00
Kurt Johnson
3d80bfd236
Merge branch 'master' into bugfix/android-disablefocus-audio 2019-03-15 15:57:00 -04:00
Hampton Maxwell
b5c25777bd Fix undefined variable 2019-02-18 23:22:20 -08:00
Hampton Maxwell
80fb571af9 Picture in Picture iOS 2019-02-18 22:13:43 -08:00
Hampton Maxwell
967dc3feec Add items for 4.4.0 2019-02-18 21:39:10 -08:00
Nick
b448b30de6 fix: remove runtime warning by replacing UIManager.RCTVideo with UIManager.getViewManagerConfig('RCTVideo') (and ensuring backwards compat) (#1487)
* replaced UIManager.RCTVideo >  UIManager.getViewManagerConfig('RCTVideo')

* added requested changes

* updated changelog.md

* docs: adjust wording
2019-02-18 12:17:20 +01:00
Laurin Quast
d8a2a9e108
fix(ios): message sent to deallocated instance (#1482)
* fix(ios): message sent to deallocated instance

* chore: update changelog
2019-02-14 16:34:14 +01:00
Hampton Maxwell
4424774ca3
Merge pull request #1448 from sridhard/master
Feature Implementation: Recovery from transient internet failures
2019-02-10 20:07:29 -08:00
Kurt Johnson
a55b7e5a24 Added details to readme and changelog 2019-02-07 11:14:27 -05:00
sridhar
8dd782d91e updated changelog for PR 1448
updated changelog for PR 1448
2019-01-24 19:25:32 +05:30
Laurin Quast
125d5dc9c5
fix: omit packager assets from caching (#1438) 2019-01-24 13:15:58 +01:00
Hampton Maxwell
ba439cc319 Add video track selection & onBandwidthUpdate 2018-12-31 22:04:28 -08:00
Hampton Maxwell
1b58d1a4c6 Update to ExoPlayer 2.9.3 2018-12-31 13:52:46 -08:00
Hampton Maxwell
d5fe91af2b Fix android subtitle issue caused by using rawdatasource 2018-12-31 13:37:45 -08:00
Hampton Maxwell
53b1a54bef Filter enabled flag 2018-12-30 19:21:14 -08:00
Hampton Maxwell
272095c22e solve the memory leak on Android and avoid the crash on kitkat 2018-12-13 12:51:17 -08:00
Hampton Maxwell
d5ee6b5a7a Fix useTextureView default & Support setting the maxBitRate 2018-12-13 10:14:02 -08:00
Hampton Maxwell
b65bdb6ab2 Don't init iOS filter unless set 2018-12-12 22:24:09 -08:00
Hampton Maxwell
b2aa8c4e38 Version 4.1.0 2018-12-05 20:12:55 -08:00
Hampton Maxwell
af07f8553e Move hideShutterView to 4.0.2 2018-12-05 20:10:50 -08:00
Hampton Maxwell
39b475774c
Merge pull request #1355 from vadimgoroshevsky/master
ExoPlayer - Add possibility to hide shutterView (black screen while loading)
2018-12-05 20:06:33 -08:00
Hampton Maxwell
a34f6e7b8a Add disable AirPlay if side car text tracks enabled 2018-12-05 17:39:20 -08:00
vadim
2caf713857 Update changelog and documentation 2018-11-30 18:42:22 +02:00
Hampton Maxwell
ecf89f6d79 Fix Android onSeek 2018-11-27 19:55:10 -08:00
Hampton Maxwell
d8a19e66c3 Add missing files to package.json #1342 2018-11-21 09:25:24 -08:00
Hampton Maxwell
54e3770576 Version 4.0.0 2018-11-21 00:08:52 -08:00
Nicolas Gonzalez
e9008cfa9e merge CHANGELOG 2018-11-19 21:23:25 -06:00
Nicolas Gonzalez
0152db8f5a Fixed Conflict in CHANGELOG.md 2018-11-18 14:12:01 -06:00
Daniel Dudek
341260fee5
Merge branch 'master' into fix/android_volume_focus_change 2018-11-14 12:49:37 +01:00
Daniel Dudek
13cdac8611 Updated CHANGELOG.md 2018-11-14 12:47:18 +01:00
Hampton Maxwell
30c30ec575 Make seek() throw an exception when using NaN value 2018-11-13 23:12:08 -08:00
Hampton Maxwell
dece8a2ca1 Re-add fullscreenAutorotate prop 2018-11-13 23:04:03 -08:00
Nicolas Gonzalez
afba82458f updated changelog 2018-10-26 08:50:59 -05:00
Hampton Maxwell
a6db0a5d3f Switch useTextureView to default to true 2018-10-13 20:24:08 -07:00
Hampton Maxwell
303fa4b176 Update to ExoPlayer 2.9.0 2018-10-13 20:16:41 -07:00
Hampton Maxwell
604250b4a6 fullscreenOrientation option 2018-10-13 19:16:07 -07:00
Hampton Maxwell
dc0a48fc6f Update to ExoPlayer 2.8.4 2018-10-07 12:55:34 -07:00
Hampton Maxwell
fae09eb4cf Support react-native-dom 2018-09-27 16:07:11 -07:00
Hampton Maxwell
d9eef0fd51 Remove flash between poster and video 2018-09-27 13:55:57 -07:00
Hampton Maxwell
ea4c732c95 Reduce package size 2018-09-22 15:01:51 -07:00
Hampton Maxwell
b0c0ac10f4 Avoid crash on ExoPlayer when there are no tracks to choose from 2018-09-12 19:42:11 -07:00
Hampton Maxwell
be5a588b76 ipod-library uri support 2018-09-03 18:31:04 -07:00
Hampton Maxwell
09d0db21bb Add caching cleanup notes 2018-08-27 19:09:05 -07:00
Hampton Maxwell
53c5afeee9 Merge branch 'develop' of https://github.com/react-native-community/react-native-video into develop 2018-08-08 13:43:47 -07:00
Hampton Maxwell
7bc58b9a83 ExoPlayer update to 2.8.2 2018-08-08 13:29:42 -07:00
Hampton Maxwell
9dc218c7a1 Android MediaPlayer onTimedMetadata support 2018-08-07 11:43:09 -07:00
Laurin Quast
8fcdc6e02a Merge remote-tracking branch 'upstream/master' into implement-ios-caching 2018-08-06 10:39:39 +02:00
Hampton Maxwell
ba159c3fa7 Version 3.2.0 2018-08-05 18:31:33 -07:00
Hampton Maxwell
4419b2897d Update NewtonSoft JSON to match react-native-windows versio 2018-08-05 18:17:11 -07:00
Hampton Maxwell
1cc38d1a9c Prevent sleep timeout on Android MediaPlayer 2018-08-05 17:36:17 -07:00
Hampton Maxwell
1d57576c27 Android ExoPlayer buffer configuration 2018-08-03 16:07:57 -07:00
Hampton Maxwell
9def59078b Fix #1150 where assets with bundled assets don't work on iOS in release mode 2018-08-02 12:15:04 -07:00
Hampton Maxwell
fd6333f8ac Various iOS sideloaded text track fixes 2018-08-02 12:13:16 -07:00
Laurin Quast
2260ae5b8c Merge remote-tracking branch 'upstream/master' into implement-ios-caching 2018-07-30 21:20:34 +02:00
Hampton Maxwell
080d1344f1 Simplify SDK vars code for Android 2018-07-24 14:24:46 -07:00
Laurin Quast
201f61b4a7
Merge branch 'master' into implement-ios-caching 2018-07-19 09:47:36 +02:00
Laurin Quast
1110793cc5 update changelog 2018-07-19 09:07:23 +02:00
Hampton Maxwell
46d0bc88b7 Add Android MediaPlayer fullscreen support 2018-07-17 17:50:09 -07:00
Hampton Maxwell
432d1b4f62 Add iOS onAudioBecomingNoisy 2018-07-16 15:45:14 -07:00
Hampton Maxwell
3d4c36ea4e Add entry for iOS textTracks 2018-07-11 09:23:39 -07:00
Hampton Maxwell
b57b0bc69d Note that HTTP headers are ExoPlayer only 2018-06-29 13:53:20 -07:00
Hampton Maxwell
9e16048602 ExoPlayer playableDuration incorrect 2018-06-25 12:28:05 -07:00
Hampton Maxwell
0853bbd65a Prevent iOS onLoad event during seeking 2018-06-25 11:46:15 -07:00
Hampton Maxwell
f51b929159 HTTP Header support 2018-06-25 11:12:55 -07:00
Hampton Maxwell
98639d7c84 Begin adding 3.0 changes 2018-06-22 16:49:10 -07:00
Hampton Maxwell
7f6c218989 Version 2.3.1 2018-06-21 09:23:00 -07:00
Hampton Maxwell
d3d1947beb Version 2.3.0 2018-06-20 22:29:49 -07:00
Hampton Maxwell
1a27090b88 Add iOS seek tolerance 2018-06-20 22:29:31 -07:00
Hampton Maxwell
dc4c180cd4 Add audioOnly prop 2018-06-20 17:52:21 -07:00
Hampton Maxwell
a6808eea6b Fix for removePlayerLayer observer not being set 2018-06-20 16:46:39 -07:00
Hampton Maxwell
1522644f70
Support allowsExternalPlayback on iOS 2018-06-10 11:05:43 -07:00
Hampton Maxwell
9be83b19e7 Entry for inherit Android SDK & build tools version from root project 2018-06-09 16:49:21 -07:00
Hampton Maxwell
d67b35329d Entry for ExoPlayer starts paused when playInBackground set 2018-06-09 16:27:52 -07:00
Hampton Maxwell
4aa4fa5c84 Add # to links 2018-06-08 10:16:40 -07:00
Hampton Maxwell
1faf76d16e Shorten PR links 2018-06-08 10:15:39 -07:00
Hampton Maxwell
3da0e86068 Add entry for text track selection 2018-06-08 10:14:24 -07:00
Hampton Maxwell
99c29a907d Release version 2.2.0 2018-06-08 10:12:07 -07:00
Hampton Maxwell
5d085b7505 Add entry for adding useTextureView support 2018-06-08 00:15:00 -07:00
Hampton Maxwell
e5a3deb51f Add entry for left/right Android MediaPlayer balance 2018-06-07 23:08:52 -07:00
Hampton Maxwell
b86a2a7e12 Add fix for multiple onEnd notifications on iOS 2018-06-03 21:27:36 -07:00
Hampton Maxwell
cc823e3fde Add iOS swipe bug & iOS switch source crash 2018-06-03 21:11:14 -07:00
Hampton Maxwell
8858574405 ExoPlayer cookie support 2018-06-01 11:57:30 -07:00
Hampton Maxwell
b4d1ee78ac Add note for poster resize mode 2018-05-29 16:24:47 -07:00
Hampton Maxwell
dc6eed2100 Initial commit 2018-05-29 16:12:51 -07:00