Eran Hammer
553e51c639
Port of #2329
2022-06-21 23:30:55 -07:00
Igor Tironi
c2d60a7371
Merge branch 'master' of github.com:react-native-video/react-native-video into type-event-dispatcher-with-protocol
2022-06-15 11:01:24 -07:00
Igor Tironi
e1574675b5
flipped playerLayer nil check to start observer
2022-06-14 16:58:47 -07:00
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
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
Niklas Saers
c37507768c
Instead of crashing, show a warning and return
2018-09-19 12:02:55 +02:00
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
Hampton Maxwell
86d655c3d1
Refactor to move caching code into a single block
2018-08-08 15:37:18 -07: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
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
2260ae5b8c
Merge remote-tracking branch 'upstream/master' into implement-ios-caching
2018-07-30 21:20:34 +02: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