关于android:音视频开发者的福音快速集成AI配音能力

54次阅读

共计 2456 个字符,预计需要花费 7 分钟才能阅读完成。

音视频内容创作者对剪辑利用中的 AI 配音需要一劳永逸。它的长处很多,不光能够解决雇佣人力配音的老本以及创作者自身的口音、语言等限度,还能够大幅晋升生产效率。比方,短视频的播放工夫短的几十秒,长的 vlog 类型视频有 4 - 5 分钟,应用 AI 配音性能能够在短时间内实现多个剪辑需要。

HMS Core 音频编辑服务(Audio Editor Kit)提供 AI 配音服务,帮忙开发者在利用中轻松构建语音合成性能,一键输入文字即可转换语音。它反对乖萌童声,亲切女声,阳光男声,英文男声、女声等多种格调音色,还能够定制本人想要的音色。音色天然晦涩,情感丰盛,满足有声浏览、音频内容制作、剪辑等多种开发者关注的热门场景。

开发实战

1. 开发筹备

具体筹备步骤可参考华为开发者联盟官网:

https://developer.huawei.com/…

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 onError(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/…
获取领导文档:https://developer.huawei.com/…

理解更多详情 >>

拜访华为开发者联盟官网
获取开发领导文档
华为挪动服务开源仓库地址:GitHub、Gitee

关注咱们,第一工夫理解 HMS Core 最新技术资讯~

正文完
 0