音视频开发者的福音,快速集成AI配音能力

博客 动态
0 167
优雅殿下
优雅殿下 2022-02-28 16:55:56
悬赏:0 积分 收藏

音视频开发者的福音,快速集成AI配音能力

音视频内容创作者对剪辑应用中的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 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/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 最新技术资讯~

posted @ 2022-02-28 16:20 HMSCore技术团队 阅读(39) 评论(0) 编辑 收藏 举报
回帖
    优雅殿下

    优雅殿下 (王者 段位)

    2018 积分 (2)粉丝 (47)源码

    小小码农,大大世界

     

    温馨提示

    亦奇源码

    最新会员