Banuba SDK for iOS can be devided into three main entities: Player, Input, Output. The plenty of input options multiplied by the plenty of output options covers lots of use cases.
The Player allows to consume different data inputs like webcam or image, to apply an effect on top of it and to produce several outputs like rendering to view and video file simultaneously.
The Effect component makes up an essential part of the SDK usage. The effect is represented as a folder with scripts and resources. Please, refer to the iOS demo app section for more details about effects.
The Input can be one of:
- Camera - realtime CameraDevice feed
- Photo - image from gallery or photo taken from CameraDevice
- Stream - frames sequence from the WebRTC stream or any other provider
- 3rd-party - your own implementation for the Input protocol
The Output can be one of:
- View - on screen presentation
- Frame, PixelBuffer, PixelBufferYUV - in memory presentation
- Video - in file presentation
- 3rd-party - your own implementation for the Output protocol