DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Newsletter
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Five Nonprofit & Charity APIs That Make Due Diligence Way Less Painful for Developers
  • 4 Email Validation and Verification Techniques for App Developers
  • What Are Microservices Architecture and How Do They Work?
  • How to Secure Your APIs

Trending

  • Building a Windows App for a Resilient SSH SOCKS Proxy and Selective Browser Routing
  • How to Evaluate Coding Agents With Harbor Framework, Python, Docker
  • Build Production-Ready AI Phone Agents: Infrastructure, Models, and Telephony
  • AI-Assisted Refinement Preparation

Draft This article hasn't been published, so readers can't see it.

In moderation This article is waiting for review, so readers can't see it yet.

Deleted This article has been deleted, so readers can't see it.

  1. DZone
  2. Data Engineering
  3. Databases
  4. How to Implement a Voice Changer Capability

How to Implement a Voice Changer Capability

This article explains how to implement a voice changing function into an app.

By 
Jackson Jiang
·
Apr. 22, 22 · Tutorial
Post on X (opens in a new tab) Share on LinkedIn (opens in a new tab)
6.0K Views

Join the DZone community Save articles, join the discussion, and download Refcards and Trend Reports with a free account.

Join for free Already a member? Log in

Research has shown that our voice is often an indicator of our personalities, and this is why we're so fascinated with changing our voice to make it sound more fun and uplifting in, for example, videos and live streams.

As a mobile developer, I have implemented a voice changing function into my own app, which you can try out in my demo. This function allows users to mask their voice using seven preset voices: seasoned, cute, male, female, monster, cartoon, and robots.

Voice Changer Demo


I don't want to brag, but I myself still find this function amazing. Let's move on to how it's developed.

Making Preparations

Ensure you have completed these steps first.

Configuring the Project

Set the app authentication information.

This can be set via an API key or access token.

  • Call setAccessToken during app initialization to set an access token. This only needs to be set once.
Java
 
HAEApplication.getInstance().setAccessToken("your access token");
  • Or, use setApiKey to set an API key during app initialization. This only needs to be set once.
Java
 
HAEApplication.getInstance().setApiKey("your ApiKey");

Calling the File API

Call the file API for the voice changer function, which is necessary for calling back the file API.

Java
 
private ChangeSoundCallback callBack = new ChangeSoundCallback() {
    @Override
    public void onSuccess(String outAudioPath) {
        // Callback when the processing is successful.
    }
    @Override
    public void onProgress(int progress) {
        // Callback when the processing progress is received.
    }
    @Override
    public void onFail(int errorCode) {
        // Callback when the processing fails.
    }
    @Override
    public void onCancel() {
        // Callback when the processing is canceled.
    }
};

Implementing the Voice Changer Capability

Call applyAudioFile to change the voice.

Java
 
// Change the voice.
HAEChangeVoiceFile haeChangeVoiceFile = new HAEChangeVoiceFile();
ChangeVoiceOption changeVoiceOption = new ChangeVoiceOption();
changeVoiceOption.setSpeakerSex(ChangeVoiceOption.SpeakerSex.MALE);
changeVoiceOption.setVoiceType(ChangeVoiceOption.VoiceType.CUTE);
haeChangeVoiceFile.changeVoiceOption(changeVoiceOption);
// Call the API.
haeChangeVoiceFile.applyAudioFile(inAudioPath, outAudioDir, outAudioName, callBack);
// Cancel the task of changing the voice.
haeChangeVoiceFile.cancel();

And now it's implemented. Easy, right? I hope this article can help you develop your own voice changer, and feel free to leave a comment if you want to learn more about my development journey.

API IT app authentication dev Indicator (metadata) mobile

Opinions expressed by DZone contributors are their own.

Related

  • Five Nonprofit & Charity APIs That Make Due Diligence Way Less Painful for Developers
  • 4 Email Validation and Verification Techniques for App Developers
  • What Are Microservices Architecture and How Do They Work?
  • How to Secure Your APIs

Partner Resources

×

Comments

Loading comments

The comments didn't load

Please try again in a moment.

Likes

Loading

The next likes didn't load. Please try again.

The likes didn't load

Please try again in a moment.

See who liked this

Log in or join DZone for free to see who liked this article.

Log in Join for free
  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook