Fix RNV-3005 errors when exiting the player and loading a new video immediately. In most cases this error was just happening internally and the user would not experience it, but it skewed the error rate reporting.
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
When moving init logic to a different thread we missed one function that was not captured if an error occurred. This PR wraps the source init function that happens on a different thread in a try/catch to capture any errors that occur.
This PR handles autoplay after disconnection
Jira: VEX-6625
There was an error in react-native-video not being properly handled, in addition, the state of the player when reconnecting using a free user was not the expected one, requesting the player to keep playing when ready, made the behavior consistent in all scenarios
Velocity PR: crunchyroll/velocity#2430
Reviews
Major reviewer (domain expert): @jctorresM
Minor reviewer: @jacob-livingston
This PR will fix the crash from the experiment on react-native-video
Jira: VEX-7093
velocity PR: crunchyroll/velocity#2443
The crash was caused by using the player object before it was set by another thread, the change simply waits for the player to be available before executing any player interaction after DRM initialization.
Reviews
Major reviewer (domain expert): @jctorresM
Minor reviewer: @jacob-livingston