Commit Graph

413 Commits

Author SHA1 Message Date
Igor Tironi
537d36cf60 type _eventDispatcher as RCTEventDispatcherProtocol 2022-06-14 15:50:22 -07:00
nbennink
1597d7f7c8 style: change temporary debug name 2022-06-13 11:42:12 +02:00
nbennink
16e346c0b1 Merge branch 'master' into fix/disable-sideloaded-texttracks 2022-06-13 11:40:43 +02:00
Nick Fujita
68b9db4d11
iOS Swift Conversion (#2527)
Converts iOS implementation from Objective-c to Swift

# During the conversion process some updates to the code structure were also made
- Modularize codebase from single file to smaller focused files
- Untangled large nested IF statements
- Added more null checks, since Swift is more strict with null pointers
- Added property to allow for decoding of local video sources with self contained key for offline playback
- Updates example apps to test react-native 0.63.4 and uses auto native dependency imports for android and ios
2022-05-19 22:29:25 +09:00
nbennink
c9ecc8e9e0 fix(texttracks): unable to disable sideloaded texttracks in the AVPlayer 2022-05-12 14:45:02 +02:00
Eran Hammer
60d0968514
Merge pull request #2395 from zetlanddk/apply-modifiers-before-starting
Make sure modifiers are applied before playing
2022-04-20 01:15:58 -07:00
Eran Hammer
2dadf28bb5
Merge pull request #2645 from tombaranowicz/tombaranowicz-patch-1
Disable pipController init if pictureInPicture is false
2022-04-20 00:54:53 -07:00
Eran Hammer
ccd9894910
Fix iOS 15.4 race condition 2022-04-05 12:34:41 -07:00
Tomasz Baranowicz
dad33ef885
Disable pipController init if pictureInPicture is false
Disable pipController init if pictureInPicture is set to false prevents going to PIP mode on iOS when the app goes to the background.
2021-11-05 12:42:45 +01:00
Jonas Dalesjö
bf11502fdb
Merge pull request #2215 from valtech-sd/master
Resolved ignored silent switch in iOS when player is set to paused
2021-09-09 21:34:50 +02:00
Shane Mckenna
a42240d554 Fix for tvOS native audio menu language selector 2021-08-23 11:59:53 -07:00
sdkcy
0f94a3d956 Custom skin support added for ios. onReceiveAdEvent prop added to catch ad events on ios. 2021-07-26 16:11:37 +03:00
Jonas Dalesjö
db58ba90f1
Merge pull request #2167 from redspear/1930-ios-reapply-rate-modifier
Fix: iOS rate is reset to 1.0 after play/pause #1930
2021-06-24 17:49:05 +02:00
Olgun Kaya
6c46dcffa8 Merge branch 'implement-ima-sdk' into master
# Conflicts:
#	android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java
#	examples/basic/package.json
#	examples/basic/yarn.lock
#	ios/Video/RCTVideo.h
#	ios/Video/RCTVideo.m
#	ios/Video/RCTVideoManager.m
#	react-native-video.podspec
2021-06-15 15:42:07 +03:00
anderslemke
dcea67eb96 Make sure modifiers are applied before playing 2021-06-03 15:11:57 +02:00
Nick Fujita
88b636f158
iOS DRM Fixes for License Fetching (#2208) 2021-01-13 19:18:01 +09:00
Cameron Perry
f79782b447 Resolved an issue where setting a video to paused would ignore the “silent switch” setting 2020-11-19 16:18:31 -08:00
redspear
522af9eaa7 Bugfix: #1930 2020-09-28 09:56:06 +10:00
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
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
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 Luong
c9096d16f7
[ios] Adaptive fullscreen in landscape by device orientation (#1862)
* update UIInterfaceOrientation in fullscreen

* update code
2020-05-15 14:48:15 +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
Harrison Mendonça
2b33b9ebbb Merge remote-tracking branch 'upstream/master' 2020-05-06 12:09:41 -03:00
Jens Andersson
08c7aaa77e Compare CGFloats instead 2020-05-05 18:10:49 +02:00
Jens Andersson
cc2e9c42fa Fix video dimensions for HLS streams 2020-05-05 17:49:42 +02:00
Harrison Mendonça
b4582c681b add mixWithOthers prop 2020-04-20 17:25:59 -03: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
Robby Widyahartono
e455ea0756 call requestAds when video playing 2019-12-10 13:40:26 +07:00
Robby Widyahartono
9f3d63a37d update basic example app 2019-12-10 12:09:38 +07:00
Robby Widyahartono
bf3efb5303 change deployment target to 9.0 2019-12-10 11:47:48 +07:00
Robby Widyahartono
519355ea58 Implement Interactive Media Ads (IMA) SDK 2019-12-10 11:40:49 +07:00
Ash Mishra
fa20965c35 add try catch block around removal of observer keypaths on playerViewController 2019-11-19 12:47:15 -08:00
Ash Mishra
a5bfba9451 Fixes a situation when exiting fullscreen, where observed keypath values have not been released 2019-11-19 12:32:11 -08:00
Daniel Mariño Ruiz
ed335f3b02
Fix indent and respect previous rate 2019-09-22 07:40:53 +02:00
Daniel Mariño Ruiz
cfcf6ce506
Merge branch 'master' into master 2019-09-21 08:41:55 +02:00
Jovan Stanimirovic
0cfc73252c fix formatting
fix crash iOS9
2019-08-30 16:01:19 +02:00
Jovan Stanimirovic
7615e5dcd1 fix invert boolean property 2019-08-22 10:36:33 +02:00
Jovan Stanimirovic
e3782c4ec6 added support for automaticallyWaitsToMinimizeStalling property on iOS 2019-08-22 10:10:39 +02:00
Nahuel Marisi
7a9081d5af Removing the call to observeValueForKeyPath:ofObject:change:context: on super from RCTVideo.
If the super class is not actually observing the key, the app will crash. Checking to see if
the super class responds to this selector doesn't solve this issue.

react-native-video github issue: https://github.com/react-native-community/react-native-video/issues/1515

Discussion about this particular problem: https://stackoverflow.com/questions/6574714/whats-wrong-with-this-observevalueforkeypathofobjectchangecontext-implement
2019-08-20 09:37:49 +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
576273d712 fix when controls & muted 2019-07-06 13:58:18 +02:00
Daniel Mariño Ruiz
9bc709f35e
Merge branch 'release/4.4.3' into master 2019-07-04 10:05:54 +02:00
Jens Andersson
3d2a58a8c5 Fix memory leak when using AVPlayerViewController, make sure to release player 2019-07-03 08:44:55 +02:00
Zaid Daghestani
4a3ea93739 bring back super KVO with selector check 2019-07-02 13:36:13 -07:00
Zaid Daghestani
6de06f1f54
Remove calls to [super observe] to fix crash 2019-07-01 14:56:41 -07:00
Jens Andersson
cb3e8c8281
Merge branch 'release/4.4.2' into posterfix 2019-06-20 09:06:13 +01: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
420332e078 Implemented onReadyForDisplay for iOS when using controls 2019-06-19 14:18:25 +01:00
Daniel Mariño
32796e9a54 Change also RCTVideo.h 2019-06-19 09:22:10 +02:00
CHaNGeTe
112608cbaf RCTDirectEventBlock 2019-06-18 07:31:17 +02:00
Jens Andersson
a0bb083064 Remove video layer when entering background correctly, both if using controls or not 2019-06-17 09:09:04 +01:00
Hampton Maxwell
c36a9cf2ef
Merge pull request #1441 from nfb-onf/1319-fullscreen-rotation-issues
1319 - fullscreen rotation issues with iOS built-in controls
2019-03-12 21:52:10 -07:00
Kyle Bedell
5dbf7e2b54 Remove unused delegate in header file. 2019-03-12 11:21:12 -07:00
Kyle Bedell
933bbae77b Fix tvOS picture-in-picture compilation regression. 2019-03-11 19:55:36 -07:00
Hampton Maxwell
d5fe47f238
Merge pull request #1325 from Khan/pip
Implement picture in picture for iOS
2019-02-18 22:13:02 -08:00
Hampton Maxwell
f69231fe81
Merge pull request #1246 from niklassaers/master
Instead of crashing, show a warning and return
2019-02-18 21:34:46 -08:00
Hampton Maxwell
075dfbaf7f
Only check for an empty source 2019-02-18 21:34:34 -08: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
Ash Mishra
b6ed6819f0 Fix missing layout calls in full-screen when using built-in video controls on iOS 2019-01-24 16:04:31 -08:00
Laurin Quast
125d5dc9c5
fix: omit packager assets from caching (#1438) 2019-01-24 13:15:58 +01:00
Abdulrahman Alzenki
62dc913cb3 Address some of the feedback from the pull reqeust 2019-01-07 10:41:30 -08:00
Abdulrahman Alzenki
617b046789 Implement picture in picture for iOS
Test Plan:
 - Run on ipad
 - test out onIsPictureInPictureSupported, onIsPictureInPictureActive, restoreUserInterfaceForPictureInPictureStop, startPictureInPicture, stopPictureInPicture
2019-01-07 10:26:20 -08:00
Hampton Maxwell
fb5f87bc9b Disable onBandwidthUpdate for iOS since it's not working yet 2018-12-31 22:06:50 -08:00
Hampton Maxwell
72f896d6df
Don't format bandwidth update bitrate 2018-12-31 21:39:12 -08:00
Hampton Maxwell
45a851e79a
Merge branch 'master' into master 2018-12-31 21:36:49 -08:00
Hampton Maxwell
b7a351c043
Merge pull request #1384 from nickgzzjr/master
Added filterEnabled flag and don't enable filter if source is an hls playlist
2018-12-30 19:19:33 -08:00
Hampton Maxwell
75b07d7442 Applying modifers while loading a new source causes loading a new video not to display 2018-12-22 15:33:43 -08:00
Hampton Maxwell
f401c6a287
Small code cleanup to setFilter 2018-12-20 10:45:14 -08:00
Nicolas Gonzalez
c2d9fb4301 merge 2018-12-13 21:38:32 -06:00
Nicolas Gonzalez
ebb237dc60 RCTVideo.m formatting 2018-12-13 21:37:17 -06:00
Nicolas Gonzalez
67a963328a updated basic example, added filterEnabled flag, check for HLS playlist before applying filter 2018-12-13 21:30:38 -06:00
Hampton Maxwell
a43f9c7ce1
Merge branch 'master' into maximumBitRate-adaptive-streaming 2018-12-12 22:30:52 -08:00
Hampton Maxwell
e5bada9fc6
Merge pull request #1360 from nickgzzjr/master
Only apply filter if filter is set
2018-12-12 22:23:06 -08:00
Hampton Maxwell
a4a0c8ad17
Refactor setFilter code 2018-12-12 22:21:19 -08:00
Hampton Maxwell
8119cede8e
Merge pull request #1304 from nfb-onf/disable_airplay_for_sideloaded_captions
disable airplay when sideloaded captions
2018-12-05 17:37:22 -08:00
Nicolas Gonzalez
97ac68745b only apply filter if filter is set 2018-12-01 21:58:12 -06:00
Hampton Maxwell
977877f529 Remove unused onVideoSaved event 2018-11-27 18:51:03 -08:00
Ash Mishra
5ab8165c3d renamed maximumBitRate to maxBitRate. Added applyModifiers support 2018-11-26 14:50:31 -08:00
Ash Mishra
11db343987 Support for HLS maximum bit rate adaptive streaming 2018-11-26 10:33:09 -08:00
Nicolas Gonzalez
0152db8f5a Fixed Conflict in CHANGELOG.md 2018-11-18 14:12:01 -06:00
Nicolas Gonzalez
8fc77acc9c only set filter after creating playerItem 2018-11-18 11:15:03 -06:00
Nicolas Gonzalez
8a3b6490dc Updated save function README, updated video-caching example to test saving function 2018-11-06 20:33:33 -06:00
Nicolas Gonzalez
22d65addd3 Added FilterType.js with all filters that do not require extra parameters 2018-11-06 08:38:28 -06:00
Nicolas Gonzalez
67f01aae90 undo code formatting 2nd try 2018-10-27 20:50:33 -05:00
Nicolas Gonzalez
fbeca99c27 undo code formatting 2018-10-27 20:43:14 -05:00
sridhar
aa526206d2 Merge branch 'master' of git://github.com/react-native-community/react-native-video into react-native-community-master
Merge branch 'master' of git://github.com/react-native-community/react-native-video into react-native-community-master
2018-10-27 09:19:28 +05:30
Nicolas Gonzalez
16e45fc9f1 added ability to export video 2018-10-26 08:21:41 -05:00
Ash Mishra
67406b5e7b restored autorotate to fullscreen options 2018-10-25 14:56:59 -07:00
Nicolas Gonzalez
18e8895712 added video filter 2018-10-25 08:56:20 -05:00
Hampton Maxwell
2c391f5807
Merge pull request #1298 from relivecc/ios-cached-asset
return cached asset
2018-10-23 19:18:24 -07:00
Frikkie Snyman
f0a1bebc04 return cached asset 2018-10-23 16:09:19 +02:00
Ash Mishra
7026ca7e51 disable airplay when sideloaded captions 2018-10-18 15:21:46 -07:00
Ash Mishra
bbf37ed5cb Removed autoRotate from codebase; added TV_OS target check for
orientation; added tvOS target to examples/basic/ios project
2018-10-11 16:42:11 -07:00
Hampton Maxwell
0646dca071 Split fullscreen options into separate props 2018-10-07 20:24:50 -07:00
Hampton Maxwell
5336d4f866
Merge branch 'master' into master 2018-10-07 16:07:11 -07:00
Hampton Maxwell
777247907d Namespace onExternalPlaybackChange as onVideoExternalPlaybackChange 2018-10-07 15:59:10 -07:00
Niklas Saers
865db71179 Doh, should of course be AND, not OR 2018-09-20 13:38:39 +02:00
sridhar
b256f2d4d8 IOS bandwidth reporting
IOS bandwidth reporting
2018-09-19 17:58:49 +05:30
Niklas Saers
c37507768c Instead of crashing, show a warning and return 2018-09-19 12:02:55 +02:00
sridhar
a1a0ca648c bandwidth report for IOS
bandwidth report for IOS
2018-09-18 20:09:32 +05:30
Artur Jaworski
d7efcf315f introducing onExternalPlaybackActiveChange 2018-09-13 15:49:49 +02:00
Ash Mishra
443bf88c63 Adds fullscreenOptions to iOS 2018-09-04 16:05:45 -07:00
Ash Mishra
0580f2710f Merge branch 'master' of https://github.com/nfb-onf/react-native-video
# Conflicts:
#	ios/RCTVideoPlayerViewController.m
#	ios/Video/RCTVideo.m
2018-09-04 15:26:56 -07:00
Ash Mishra
77c48c9dfc added an onCaptionsDeviceSettings event 2018-09-04 15:19:32 -07:00
Ash Mishra
37c31a3c92 Improvements to urlFilePath so that it only does a /Documents/ folder check if the file does not exist; improvements to full-screen options for iOS to default autorotate, and to respect landscape / portrait masks 2018-09-04 15:17:54 -07:00
Ash Mishra
3b0d459230 Fix for files that are stored in the Documents folder on iOS (and not as resources in the JS app) 2018-09-04 15:17:19 -07:00
Ash Mishra
f45d6a2c3e Added fullscreen options for iOS Player 2018-09-04 15:15:30 -07:00
Ash Mishra
3ba26eb45a Working on autorotation of video player 2018-09-04 15:08:56 -07:00
Hampton Maxwell
b6512e4316 Remove old test var 2018-08-27 18:19:15 -07:00
Hampton Maxwell
67a388911d Add debug message when disabling caching due to text tracks 2018-08-27 18:16:59 -07:00
Hampton Maxwell
b6ee8f7fed Simplify text track + cache bypass code 2018-08-27 18:05:41 -07:00
Hampton Maxwell
a26dc264b2
Bypass cache when sideloaded text tracks are specified
Fixes a crash when using the cache & sideloaded text tracks together due to the tracks on the asset not being available. Re-visit when someone with more expertise on the cache can look at it.
2018-08-27 17:55:33 -07:00
Ash Mishra
7b8f79b36a added an onCaptionsDeviceSettings event 2018-08-27 10:42:49 -07:00
Ash Mishra
7d805f1363 Improvements to urlFilePath so that it only does a /Documents/ folder check if the file does not exist; improvements to full-screen options for iOS to default autorotate, and to respect landscape / portrait masks 2018-08-20 11:52:06 -07:00
Ash Mishra
f7fd5dc5b7 Fix for files that are stored in the Documents folder on iOS (and not as resources in the JS app) 2018-08-16 15:32:36 -07:00
Ash Mishra
887010f291 merge RCTVideo.m 2018-08-14 10:29:01 -07:00
Ash Mishra
f41831ceac Added fullscreen options for iOS Player 2018-08-09 09:58:03 -07:00
Hampton Maxwell
86d655c3d1 Refactor to move caching code into a single block 2018-08-08 15:37:18 -07:00
Hampton Maxwell
8084b160d5 Code style cleanups 2018-08-08 15:34:07 -07:00
Hampton Maxwell
9d22835343 Rework logic for extension detection 2018-08-08 13:56:11 -07:00
Laurin Quast
8d5f81a494 add missing enum 2018-08-06 10:40:11 +02:00
Laurin Quast
8fcdc6e02a Merge remote-tracking branch 'upstream/master' into implement-ios-caching 2018-08-06 10:39:39 +02:00
Laurin Quast
c9e2ba0547 Fix URLs with query strings at the end, e.g. ?size=large
Fix HLS Playlists (only support mp4, m4v and mov file extension)

Add debug logging for guiding library consumers about why their video is not cached
2018-08-05 23:06:25 +02:00
Ash Mishra
0c03932ada Working on autorotation of video player 2018-08-02 10:32:50 -07:00
Ash Mishra
aa439470b3 Fix issue with embedded Bundle videos in Release configuration 2018-08-01 12:15:27 -07:00
Ash Mishra
fa30fb3e43 remove tracks that are not valid from textTracks; and default to system if selectedTextTrack unavailable 2018-07-31 16:56:19 -07:00
Laurin Quast
9f2cb8f92d Merge remote-tracking branch 'upstream/master' into implement-ios-caching 2018-08-01 00:11:35 +02:00
Laurin Quast
685133ea48 remove cache property 2018-07-31 23:47:55 +02:00
Laurin Quast
b83f3a57db fix xcode project paths 2018-07-31 07:07:13 +02:00
Laurin Quast
2260ae5b8c Merge remote-tracking branch 'upstream/master' into implement-ios-caching 2018-07-30 21:20:34 +02:00
Hampton Maxwell
c84e059543 Only look for text tracks matching system language when the "system" type is set 2018-07-29 17:42:09 -07:00
Laurin Quast
82edb959d8 remove cache property 2018-07-19 09:08:55 +02:00
Laurin Quast
4f386d2c93 make video cache feature optional 2018-07-19 02:06:09 +02:00
Hampton Maxwell
06eb1c57d8 Support selecting audio tracks
Implements audio track selection on iOS & Android ExoPlayer. The prop mirrors the API for selectedTextTrack.
2018-07-17 14:14:21 -07:00
Laurin Quast
4c7676396a remove duplicated code block 2018-07-17 15:29:53 +02:00
Laurin Quast
5d7b296680 update example project and fix build errors 2018-07-17 14:36:03 +02:00
Laurin Quast
6cfea3aacb Merge branch 'master' into implement-ios-caching 2018-07-17 13:28:37 +02:00
Hampton Maxwell
de68244bc6 Add onVideoAudioBecomingNoisy 2018-07-16 09:47:27 -07:00
Hampton Maxwell
d003c87b57 Add onAudioBecomingNoisy for iOS 2018-07-12 21:48:58 -07:00
Hampton Maxwell
fe26f54bfb
Fix default sideload text track for system caption setting 2018-07-09 21:08:40 -07:00
Ash Mishra
0d32a31b85 Merged, but text sideloading is not working 2018-07-09 17:00:47 -07:00
Hampton Maxwell
93ce4d6b9f Support loading multiple sideloaded text tracks 2018-07-09 16:28:38 -07:00
Ash Mishra
c9b752454a PR fixes for iOS sideloaded captions 2018-07-09 11:20:32 -07:00
Ash Mishra
fa63a9ef87 Fix for textTracks not being set before selectedTextTrack (bug found on iOS 9.3) 2018-07-06 16:38:24 -07:00
Ash Mishra
05d4be2d9c Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	ios/RCTVideo.m
#	package.json
2018-07-06 16:01:02 -07:00
Hampton Maxwell
7bd7024a5e
Merge pull request #758 from LandonS23/ios-controls
Show iOS controls without using present full screen
2018-07-06 13:26:08 -07:00
Ash Mishra
3e2e16ef44 iOS Sidecar loading for captions and offline support (isAsset). Android
fix to respect User settings for captions.
2018-07-05 13:36:36 -07:00
Hampton Maxwell
3f5ab0b7ae Disable HTTP headers since it uses a private API 2018-06-26 15:39:04 -07:00
Hampton Maxwell
4174d5a713 Prevent onLoad event during seeking 2018-06-25 11:43:51 -07:00
Hampton Maxwell
c67dd7b8ef
Merge branch 'master' into master 2018-06-22 18:57:58 -07:00
Hampton Maxwell
9401328d46 Support specifying an alternate seek tolerance on iOS 2018-06-20 22:09:45 -07:00
Hampton Maxwell
026afabe8b Only allow the player layer observer to be cleared if it's set (#907) 2018-06-20 16:33:50 -07:00
Hampton Maxwell
9ad11dd569 Avoid crash when text track doesn't have a title or language 2018-06-20 15:26:24 -07:00
Hampton Maxwell
a1a4e0c44b Report textTracks in onLoad 2018-06-11 20:55:23 -07:00
Emrah Kaya
6cd7dfeedf fix syntax errors 2018-06-11 11:10:01 +02:00
genglei01
6f5211f2c4
remove indentation
remove indentation
2018-06-11 00:04:13 +08:00
Emrah Kaya
f340025a09 respecting cookies when opting in for headers (ios) 2018-06-09 21:53:57 +02:00
Emrah
2d89a3fd54
Merge branch 'master' into master 2018-06-09 21:36:09 +02:00
genglei01
7460df9edb
Merge branch 'master' into master 2018-06-08 11:18:26 +08:00
LeoGeng
e79e447375 Add allowsExternalPlayback property to control external playback 2018-06-06 09:40:12 +08:00
Hampton Maxwell
03017c0f63 Merge branch 'master' into feature/text-tracks 2018-06-04 11:47:16 -07:00
Hampton Maxwell
88f6e7d9ac
Merge pull request #832 from jalieven/upstream
Preventing multiple observers for the same notification
2018-06-03 21:23:53 -07:00
Hampton Maxwell
761549ca5c
Merge pull request #974 from wildseansy/master
Fixes #963
2018-06-03 21:08:51 -07:00
Hampton Maxwell
7882d5cf66
Merge pull request #1048 from blink22/fix/partial-swipe-black-screen
Fix partial swipe on video in fullscreen shows a black screen
2018-06-03 20:54:04 -07:00
Hampton Maxwell
b44ae2c0c2 Get automatic system track selection working 2018-06-02 19:41:25 -07:00
Ahmed Barakat
a2a7cf1452 Fix partial swiping on video shows black screen
In iOS 11, Apple added a feature to close the Video Player via a swipe gesture. Partial swiping cases viewWillDisappear to be called without viewDidDisappear which cases a black screen.
2018-06-02 15:03:18 +02:00
Hampton Maxwell
9764fe3be4 First pass at text track selection, mostly complete 2018-06-02 02:24:13 -07:00
Hampton Maxwell
fd8ebbd74a
Merge branch 'master' into allow-progress-update-interval-to-work-on-ios 2018-05-29 16:11:15 -07:00
Hampton Maxwell
fefbe801ef
Merge branch 'master' into master 2018-05-29 15:08:24 -07:00
Hampton Maxwell
2b934f9e4c
Merge branch 'master' into patch-1 2018-05-28 20:02:23 -07:00
Hampton Maxwell
2d1c0023d0 Clear the progress timer at video end, restore on seek 2018-05-15 22:19:12 -07:00
Hampton Maxwell
77b927157a
Merge pull request #871 from habovh/master
Add requiresMainQueueSetup method
2018-05-15 18:17:58 -07:00
seansy
28bae40c6c Fixes #963
Bug happens when uri is changed for a video.

The fix:
Remove player layer before addPlayerItemObservers so _playerItemObserversSet is still set to NO if observers have already been removed.
2018-03-26 09:07:25 -07:00
Laurin Quast
5281796d9d Fix error handling 2018-03-05 17:37:15 +01:00
Laurin Quast
4021996e90 Schedule cache garbage collector 2018-03-04 23:57:08 +01:00
Laurin Quast
d05b57521e Install dependendencies via cocoapods 2018-03-04 23:40:59 +01:00
Laurin Quast
4bf56cd8f1 Remove debug info 2018-03-02 10:13:12 +01:00
Laurin Quast
e71b89dccb Fix header search paths 2018-03-02 00:43:18 +01:00
Laurin Quast
c926d8ba6c First iteration implementing video caching 2018-03-01 23:38:38 +01:00
Laurin Quast
d5e012b749 Add DVAssetLoaderDelegate to project 2018-03-01 23:37:45 +01:00
Laurin Quast
e65a0b3081 Add DVAssetLoaderDelegate as a submodule 2018-03-01 23:32:52 +01:00
Laurin Quast
a2de5908ae Add SPTPersistentCache as a dependency 2018-03-01 23:25:29 +01:00
Laurin Quast
05feefaa82 Change SPTPersistentCache version to 1.1.1 2018-03-01 23:19:43 +01:00
Laurin Quast
438aa79494 Add cache property; Make playerItemForSource in 'RCTVideoManager.m' async 2018-02-28 17:42:49 +01:00
Laurin Quast
434b2b0f2a Add submodule for SPTPersistentCache 2018-02-28 13:43:09 +01:00
masarusanjp
cfab35d484 fxied an issue that does not use passed argument 2018-02-28 11:15:42 +09:00
Austin Witherow
093ffccd9b fix(ios): crash due to persistent keyPath observer (#600) 2018-01-02 12:06:43 -05:00
Jordan Becker
ce7c732453
Add requiresMainQueueSetup method
Since RN 0.49, `requiresMainQueueSetup` needs to be defined if the module overrides `constantsToExport`.
2017-12-07 19:35:32 +01:00
Ahmed Hassan
6e43701092 added native progress notification (#734) 2017-11-18 14:10:58 -08:00
Jan Lievens
2ae99bd484 remove observers before adding thus preventing multiple observers for the same notification 2017-10-24 09:52:10 +02:00
Emrah Kaya
270fdfb657 added optional request headers for remote assests (android & ios) 2017-10-02 20:12:59 +02:00
Dan Hodos
10cba5ad5c Reset progress observer on update interval changes 2017-09-28 21:37:52 -04:00
Dan Hodos
435669a944 Extract method to add observer for progress update 2017-09-28 21:37:26 -04:00
Alex Fox
451f8d0919 Fixed rate not being respected after seeking
Referenced in issue => https://github.com/react-native-community/react-native-video/issues/763
2017-09-07 13:16:44 +01:00
Alexander Nazarov
f73b7a0484 Fixed seekableDuration for time ranges with non-numeric duration (#709) (#728) 2017-09-06 21:12:34 -04:00
Landon Sherwood
a4ada46b30 Show iOS controls if not fullscreen
Show controls without calling the present full screen method.
2017-08-29 16:39:18 -05:00
Julien K
b303f991ce Added tvOS paltform support (#682)
* [tvOS] Update podspec

* [tvOS] Add tvOS target

* Update README.md

* [docs] Folder that contains pictures and content for documentation

* tvOS Readme

* [JPEG] Update image to JPEG
2017-07-20 13:35:58 -04:00
Zach Nolan
ef2120b418 added removePlayerLayer to fix iOS crash (#650) 2017-06-09 17:31:46 -04:00
Dom DiCicco
98c51f114b issue 310 - Added a new property, ignoreSilentSwitch. (#403)
* issue 310 - Added a new property, ignoreSilentSwitch. When true, audio will play even when the silent switch on an iOS device is set to silent. When false, the audio will toggle with the silent switch. Sets the AVAudioSession to either playback or ambient.

* Added ignoreSilentSwitch usage to example app and to readme

* Changed ignoreSilentSwitch to accept two string values, ignore and obey.
This accounts for the case where the user does not want to modify the audio session from a particular video instance. The user would not use the ignoreSilentSwitch property at all in that case.
Also, the audio session will only be updated when the video is unpaused, instead of whenever the video component has updated props. This allows for multiple videos to be on the screen, with the most recent video unpaused (aka played) being the video that has control over the audio session.
2017-04-20 14:10:06 -04:00
Nawal "Deshi" Rahim
087adef1b9 Pausing progress if it was playing and the stating again (#526) 2017-03-21 16:25:58 -04:00
Shahen Hovhannisyan
3ef9555464 fix(RCTVideo.m): Fixed status bar disappearing issue 2017-03-15 15:21:12 +04:00
Andrea Cresta
d792427ce1 Added onTimedMetadata callback for iOS player and Exoplayer (#487)
* added listener for timedMetadata event.

* added callback in RCTVideo for the timed metadata

* exposing onTimedMetadata to JS

* added forgotten method declaration

* returning array of string values

* added metadata type to the array

* added onMetadata method

* overridden onMetadata method on exoplayer2

* added format of return value from onMetadata

* added function reference in README file
2017-02-13 21:38:02 -05:00
abrahambotros
201335f05c Fix src type=nil NSDictionary crash (#455)
- Use NSNull object in NSDictionary when type (or URI) missing from supplied
  src object.
- In addition, defensively supply valid strings for URI and type from JS.
2017-01-28 20:46:30 -05:00
Olof Dahlbom
2b709a5d54 Protect events (#444) 2017-01-16 11:27:08 -05:00
Andrew Jack
9a936c9e8f ExoPlayer (#426) 2017-01-11 07:51:45 -05:00
Olof Dahlbom
fe6bc4f3df Support react-native > 0.40 (#437)
* Support react-native > 0.40

* Bumping major version. Breaking change.

* Upgrade example project from 0.33 => 0.40.
2017-01-11 07:43:43 -05:00
James Hartt
9bcf70cbb5 Replace use of RCTBridge with RCTBubblingEventBlock (#381) 2016-12-12 19:16:11 -05:00
jimmymeego
18ad1cd580 add cookies (#345) 2016-10-06 17:34:01 -04:00
ndao
6b62119ce0 add ability to change progress update interval (#289)
* added progressUpdateInterval prop iOS

* add prop to Video.js

* added progressUpdateInterval prop iOS

* add prop to Video.js
2016-10-01 14:23:50 -04:00
Andrew Jack
0c746e8fe8 Clean project structure (#320) 2016-09-21 09:34:25 -04:00