Migration Guides
#
To version 1.0.xStarting from version 1.0.x and higher, we provide a new rendering engine. Effects from the previous version will not work. Please, contact Banuba to convert your effect for the new engine.
#
iOSBanubaSdkMnager.setRenderTarget
now acceptsEffectPlayerView
instead of rawCAEAGLLayer
.
#
To version 0.30.xOne of the goals of this release was to separate the logic of working with effects.
Methods of EffectPlayer
that were moved to the new EffectManager
and Effect
classes:
add_error_listener
was moved to theEffectManager
remove_error_listener
was moved to theEffectManager
add_hint_listener
was moved to theEffectManager
remove_hint_listener
was moved to theEffectManager
add_effect_event_listener
was moved to theEffectManager
remove_effect_event_listener
was moved to theEffectManager
set_effect_size
was moved to theEffectManager
load_effect
was moved to theEffectManager
unload_effect
was moved to theEffectManager
force_effect_reload
was removedget_effect_status
was removedcall_js_method
was moved to theEffect
#
AndroidBanubaSdkManager.setDrawSize
was removed
#
To version 0.29.x#
iOsA new manualAudio
parameter was added to BNBEffectPlayerConfiguration
.
Set it to true
if you wish to create the audio session manually. Otherwise use false
.
#
AndroidA new manualAudio
parameter was added to EffectPlayerConfiguration
.
Set it to true
if you wish to create the audio session manually. Otherwise use false
.
#
To version 0.27.x#
iOSWe've made BanubaSdk.framework (written in Swift) callable from Objective-C just adding @objc
attribute to each public function and making classes extend from NSObject
. In most cases you
need nothing to do with your code, but good to mention this change.
#
To version 0.21.xOne of the goals of this release was to get rid of singletons both
for BanubaSdkManager
and EffectPlayer
. Now you can create multiple
instances of the classes (however, resources aren't shared yet).
#
AndroidBanubaSdkManager.createInstance
,BanubaSdkManager.getInstance
andBanubaSdkManager.destroyInstance
were removed. Instead intialize SDK with call toBanubaSdkManager.initialize
and create an instanse ofBanubaSdkManager
.effectsResourcesPaths
argument was removed from BanubaSdkManager construction. Use second argument ofBanubaSdkManager.initialize
instead.Whenever you need
BanubaSdkManager
, just create a class field to access it.BanubaSdkTouchListener
requiresEffectPlayer
as an argument in constructor.Refer
MainActivity
as an example.
#
iOSThe
instance
property was removed inBanubaSdkManager
. Instead intialize SDK with call toBanubaSdkManager.initialize
, next create and hold a reference toBanubaSdkManager
in a view controller or an application.voiceChanger
,outputService
are optional now (to reflect the state ofBanubaSdkManager
whileBNBEffectPlayer
isn't created). Correct nullabity access to these properties.Pass a reference to
BNBEffectPlayer
inEffectPlayerView
.Refer
ViewController
as an example.