Commit Graph

13 Commits

Author SHA1 Message Date
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
Frieder Bluemle
95d1454630
Update repo org references to react-native-video 2022-04-20 11:33:19 -07:00
Radek Czemerys
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
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
Learnyst
0df667692b Audio Poster issue fix (#1779) 2019-11-26 14:40:03 -05:00
Laurin Quast
4f386d2c93 make video cache feature optional 2018-07-19 02:06:09 +02:00
Laurin Quast
d05b57521e Install dependendencies via cocoapods 2018-03-04 23:40:59 +01: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
Gil Birman
595bc19c87 Update react-native-video.podspec (#408)
When directory structure was refactored, source files were moved to `ios/` dir, but the podspec wasn't updated to reflect this.
2016-12-06 13:41:07 -05:00
Mark Miyashita
d5bdd0bc35 react-native-video works on iOS 7.0 2016-04-07 16:55:42 -07:00
Mark Miyashita
ef884acec7 [Podspec] Read version from the package.json, add author, add tag to the git source, add .git extension 2016-04-07 16:53:44 -07:00
Mark Miyashita
cc731c41bd [Podspec] Fix the git source link in the podspec 2016-04-07 16:47:10 -07:00
Keith Grennan
48b7f5b5b3 add podspec 2016-02-17 09:56:09 -08:00