New Feature: video playback support for iOS and Android



Starting with commit 3153264 on develop, you can play videos on iOS and Android (API 21+), alongside with already existing macOS and Windows implementations. Same as for desktop platforms, you can play both local files (such as a video previously recorded with Camera API) or you can stream videos from the Web. We’ve added a VideoComponent::loadAsync() function to load a video on a mobile platform, which can also be used on desktop platforms (on Windows, it will simply call VideoComponent::load()). VideoComponent has now a new constructor argument to select, whether to use a viewer with native transport controls, or a bare one (it is used on iOS and macOS, both Android and Windows always provide bare surfaces without native controls). Using a bare viewer will allow you to craft your own customised UIs and we’ve added a few lambdas to VideoComponent API to make it possible. The DemoRunner video demo has been updated for mobile needs and it shows a simple custom UI. On a side note, bear in mind that some webpages like YouTube, require to use their dedicated SDKs for video playback, and they will not allow you to stream content on a mobile device directly (you will get an error if you try).


Is there a straightforward way to process the audio using VideoComponent?


This change adds video playback for mobile, to complement already existing playback for desktop platforms. Underlying audio tracks are not exposed.