華為音訊編輯服務實時變聲,大叔音怪獸音隨意變換

HMSCore 發表於 2022-05-13

變聲是直播類、聊天類應用中使用者經常使用的功能。例如:很多主播選擇使用變聲器來實現帶動直播間氣氛;和朋友語音聊天時選擇變成蘿莉音讓聊天更有趣。HMS Core音訊編輯服務提供變聲能力,幫助開發者在應用中構建變聲功能。使用者可以通過預置的變聲風格進行變聲,提升音訊可玩性的同時有效保護使用者隱私,讓你隨心所欲、想變就變。

華為音訊編輯服務實時變聲,大叔音怪獸音隨意變換

HMS Core音訊編輯服務目前可提供7種變聲效果,包括大叔、蘿莉、男生、女聲、怪獸、卡通、機器人。不限語種,且實時處理,可簡單便捷的應用在音視訊通訊或互娛直播場景,為主播提供實時變聲特效,讓直播音色更動聽、更有趣。

變聲效果
華為音訊編輯服務實時變聲,大叔音怪獸音隨意變換

下面我們就一起來實操一下如何接入華為音訊編輯服務,實現變聲效果吧。

1開發準備

詳細準備步驟可參考華為開發者聯盟官網

2編輯工程整合

2.1設定應用的鑑權資訊

開發者需要通過api_key或者Access Token來設定應用鑑權資訊。

通過setAccessToken方法設定Access Token,在應用啟動時初始化設定

HAEApplication.getInstance().setAccessToken("your access token");

通過setApiKey方法設定api_key,在應用啟動時初始化設定一次即可,無需多次設定。

HAEApplication.getInstance().setApiKey("your ApiKey");

2.2檔案介面

呼叫檔案介面實現具體功能,必要條件:建立檔案介面回撥。

private ChangeSoundCallback callBack = new ChangeSoundCallback() {
    @Override
    public void onSuccess(String outAudioPath) {
        // 處理成功
    }
    @Override
    public void onProgress(int progress) {
        // 進度回撥處理
    }
    @Override
    public void onFail(int errorCode) {
        // 處理失敗
    }
    @Override
    public void onCancel() {
        // 取消處理
    }
};

2.3實現變聲功能

呼叫applyAudioFile介面進行變聲。

// 變聲
HAEChangeVoiceFile haeChangeVoiceFile = new HAEChangeVoiceFile();
ChangeVoiceOption changeVoiceOption = new ChangeVoiceOption();
changeVoiceOption.setSpeakerSex(ChangeVoiceOption.SpeakerSex.MALE);
changeVoiceOption.setVoiceType(ChangeVoiceOption.VoiceType.CUTE);
haeChangeVoiceFile.changeVoiceOption(changeVoiceOption);
// 呼叫介面
haeChangeVoiceFile.applyAudioFile(inAudioPath, outAudioDir, outAudioName, callBack);
// 取消變聲任務
haeChangeVoiceFile.cancel();

除了變聲,華為音訊編輯服務還為開發者提供了一站式音訊編輯服務,涵蓋了音訊/音樂處理所需的幾十項專業能力,開發者只需要通過簡單的整合方式即可讓應用獲取強大的音訊處理能力,可極大幫助客戶提升音訊/音樂方面的處理效率。

瞭解更多詳情>>

訪問華為開發者聯盟官網
獲取開發指導文件
華為移動服務開源倉庫地址:GitHubGitee

關注我們,第一時間瞭解 HMS Core 最新技術資訊~