Dubbing AI Voice Changer
Dubbing AI Voice Changer extension enables you to change the audio timbre.
This page shows you how to integrate the Dubbing AI Voice Changer extension in your app.
Understand the tech
Using the setExtensionProperty method provided in Agora SDK v4.x and passing in the specified key
and value
parameters, you can quickly integrate real-time AI voice conversion ability into your app.
The key
parameter you specify in the setExtensionProperty
method corresponds to the name of the API, and the value
parameter wraps some or all of the parameters of the API in JSON format. By passing in the specified key
and value
parameters, you can call the corresponding API to realize the functions related to real-time AI sound conversion.
Prerequisites
Ensure that your development environment meets the following requirements:
- Android Studio 4.1 or later.
- A physical device (not an emulator) running Android 5.0 or later.
-
Dubbing AI Voice Changer is used with Agora Voice SDK v4.x.
Refer to the SDK quickstart to integrate Voice SDK v4.x and implement basic voice calling.
Integrate the extension
This section shows you how to integrate the Dubbing AI Voice Changer extension, and call the core API to implement the voice changing function.
-
Integrate the Dubbing AI Voice Changer extension
To integrate the extension in your project:
-
Enter the Extensions Marketplace and download the Android Dubbing AI Voice Changer extension package. After unzipping, save all
.aar
files to the project folder/app/libs
. -
Get the following resource files and save them in the same directory of the project folder. For example, a new
vc_model
directory:- License file and tone files: Contact Agora to obtain these files. The suffix of the tone file is
.dat
, and the tone file is issued according to the license. - Model file: Download the required resources.
- License file and tone files: Contact Agora to obtain these files. The suffix of the tone file is
-
Open the
app/build.gradle
file and add the following lines underdependencies
:
-
-
Enable the plugin
After creating and initializing
RtcEngine
, callenableExtension
to enable the plug-in, before you call other APIs such asenableVideo
andjoinChannel
. -
Set the resource file path
When you download and integrate the plug-in, the license, sound, and model files are saved to the specified directory. In this step, you specify the path where these resource files are located.
-
Get the tone list
After receiving the
onExtensionStarted
callback from Agora SDK, callgetExtensionProperty
passing in thegetSpeakersInfo
key to get the timbre list:The timbre list is returned as JSON data that you parse yourself.
-
Start changing
Call
setExtensionProperty
and pass in the correspondingkey
andvalue
: -
Select timbre
Pass in the timbre ID from the obtained timbre list to set the corresponding timbre:
-
Stop changing
Call the API to stop the voice changer:
-
Release resources
Close the plug-in and release the resources used by the plug-in:
Reference
This section contains content that completes the information on this page, or points you to documentation that explains other aspects to this product.
Sample project
The Dubbing AI Voice Changer extension provides a GitHub sample project for testing. To clone and run the project:
-
Clone the repository
-
Refer to the
README.md
file in the repository to run the demo.
API reference
- addExtension in the
RtcEngineConfig
class - enableExtension in the
RtcEngine
class - setExtensionProperty in the
RtcEngine
class