音視頻內容創作者對剪輯應用中的AI配音需求與日俱增,它的優點很多,不光可以解決雇傭人力配音的成本以及創作者本身的口音、語言等限制,還可以大幅提升生產效率,比如,短視頻的播放時間短的幾十秒,長的vlog型別視頻有4-5分鐘,使用AI配音功能可以在短時間內實作多個剪輯需求,
HMS Core音頻編輯服務(Audio Editor Kit)提供AI配音服務,幫助開發者在應用中輕松構建語音合成功能,一鍵輸出文字即可轉換語音,它支持乖萌童聲,親切女聲,陽光男聲,英文男聲、女聲等多種風格音色,還可以定制自己想要的音色,音色自然流暢,情感豐富,滿足有聲閱讀、音頻內容制作、剪輯等多種開發者關注的熱門場景,
開發實戰
1.開發準備
詳細準備步驟可參考華為開發者聯盟官網:
https://developer.huawei.com/consumer/cn/doc/development/Media-Guides/config-agc-0000001154009063?ha_source=hms1
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初始化環境
初始化音頻編輯管理類、創建時間線以及需要的泳道,
// 創建音頻編輯管理類
HuaweiAudioEditor mEditor = HuaweiAudioEditor.create(mContext);
// 初始化Editor的運行環境
mEditor.initEnvironment();
// 創建時間線
HAETimeLine mTimeLine = mEditor.getTimeLine();
// 創建泳道
HAEAudioLane audioLane = mTimeLine.appendAudioLane();
匯入音樂,
// 泳道末尾添加音瞥澩
HAEAudioAsset audioAsset = audioLane.appendAudioAsset("/sdcard/download/test.mp3", mTimeLine.getCurrentTime());
3. AI配音功能集成
呼叫HAEAiDubbingEngine實作AI配音功能,
// 通過此配置類來對AI配音引擎進行配置
HAEAiDubbingConfig haeAiDubbingConfig = new HAEAiDubbingConfig()
// 設定音量
.setVolume(volumeVal)
// 設定音速
.setSpeed(speedVal)
// 設定發音人
.setType(defaultSpeakerType);
// 單個AI配音任務回呼
HAEAiDubbingCallback callback = new HAEAiDubbingCallback() {
@Override
public void one rror(String taskId, HAEAiDubbingError err) {
// error處理
}
@Override
public void onWarn(String taskId, HAEAiDubbingWarn warn) {}
@Override
public void onRangeStart(String taskId, int start, int end) {}
@Override
public void onAudioAvailable(String taskId, HAEAiDubbingAudioInfo haeAiDubbingAudioFragment, int i, Pair<Integer, Integer> pair, Bundle bundle) {
// 開始接收檔案,保存成檔案
}
@Override
public void onEvent(String taskId, int eventID, Bundle bundle) {
// The synthesis is complete.
if (eventID == HAEAiDubbingConstants.EVENT_SYNTHESIS_COMPLETE) {
// AI配音任務處理結束,即合成的音頻資料全部處理完畢
}
}
@Override
public void onSpeakerUpdate(List<HAEAiDubbingSpeaker> speakerList, List<String> lanList,
List<String> lanDescList) { }
};
// AI配音引擎
HAEAiDubbingEngine mHAEAiDubbingEngine = new HAEAiDubbingEngine(haeAiDubbingConfig);
// 設定AI配音任務播放程序偵聽
mHAEAiDubbingEngine.setAiDubbingCallback(callback);
// 實時AI配音并播放API,text傳入待轉語音的文本,modeAI配音任務播放模式
String taskId = mHAEAiDubbingEngine.speak(text, mode);
// 暫停播放
mHAEAiDubbingEngine.pause();
// 恢復播放
mHAEAiDubbingEngine.resume();
// 關閉合成
mHAEAiDubbingEngine.stop();
Demo演示

<很高興見到你>
更多華為音頻編輯服務詳情,請參考:
服務官網:https://developer.huawei.com/consumer/cn/hms/huawei-audio-editor/?ha_source=hms1
獲取指導檔案:https://developer.huawei.com/consumer/cn/doc/development/Media-Guides/client-dev-0000001107465102?ha_source=hms1
了解更多詳情>>
訪問華為開發者聯盟官網
獲取開發指導檔案
華為移動服務開源倉庫地址:GitHub、Gitee
關注我們,第一時間了解 HMS Core 最新技術資訊~
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/434490.html
標籤:其他
上一篇:Version 28 (intended for Android Pie and below) is the last version of the legacy support library
