简介
本文档提供关于提交人声分离任务相关的 API 概览以及 SDK 示例代码。
API | 操作描述 |
提交人声分离任务 | 提交人声分离任务 |
SDK API 参考
SDK 所有接口的具体参数与方法说明,请参考 SDK API。
提交人声分离任务
功能说明
提交人声分离任务。注意 COS Android SDK 版本需要大于等于 v5.9.14。
示例代码
// 存储桶名称,格式为 BucketName-APPIDString bucket = "examplebucket-1250000000";// 对象键,是对象在 COS 上的完整路径,如果带目录的话,格式为 "dir1/object1"String object = "dir1/exampleobject.mp4";// 输出路径文件夹String outputResultPath = "media/job_result/";SubmitVoiceSeparateJobRequest request = new SubmitVoiceSeparateJobRequest(bucket);SubmitVoiceSeparateJob submitVoiceSeparateJob = new SubmitVoiceSeparateJob();SubmitVoiceSeparateJob.SubmitVoiceSeparateJobInput input = new SubmitVoiceSeparateJob.SubmitVoiceSeparateJobInput();// 文件路径input.object = object;submitVoiceSeparateJob.input = input;SubmitVoiceSeparateJob.SubmitVoiceSeparateJobOutput output = new SubmitVoiceSeparateJob.SubmitVoiceSeparateJobOutput();// 输出存储桶地域output.region = "ap-guangzhou";// 输出存储桶output.bucket = bucket;// 背景音结果文件名,不能与 AuObject 同时为空;是否必传:否;output.object = outputResultPath+"video_backgroud.${ext}";// 人声结果文件名,不能与 Object 同时为空;是否必传:否;output.auObject = outputResultPath+"video_audio.${ext}";SubmitVoiceSeparateJob.SubmitVoiceSeparateJobOperation operation = new SubmitVoiceSeparateJob.SubmitVoiceSeparateJobOperation();operation.output = output;SubmitVoiceSeparateJob.VoiceSeparate voiceSeparate = new SubmitVoiceSeparateJob.VoiceSeparate();// 同创建人声分离模板接口中的 Request.AudioMode;是否必传:否;voiceSeparate.audioMode = "IsAudio";TemplateVoiceSeparate.AudioConfig audioConfig = new TemplateVoiceSeparate.AudioConfig();// 编解码格式;是否必传:否;默认值:aac;限制:取值 aac、mp3、flac、amr;audioConfig.codec = "aac";// 采样率;是否必传:否;默认值:44100;限制:1. 单位:Hz2. 可选 8000、11025、22050、32000、44100、48000、960003. 当 Codec 设置为 aac/flac 时,不支持80004当 Codec 设置为 mp3 时,不支持8000和960005. 5. 当 Codec 设置为 amr 时,只支持8000;audioConfig.samplerate = "44100";// 原始音频码率;是否必传:否;默认值:无;限制:1. 单位:Kbps2. 值范围:[8,1000];audioConfig.bitrate = "128";// 声道数;是否必传:否;默认值:无;限制:1. 当 Codec 设置为 aac/flac,支持1、2、4、5、6、82. 当 Codec 设置为 mp3,支持1、2 3. 当 Codec 设置为 amr,只支持1;audioConfig.channels = "4";voiceSeparate.audioConfig = audioConfig;operation.voiceSeparate = voiceSeparate;// 任务优先级,级别限制:0 、1 、2 。级别越大任务优先级越高,默认为0;是否必传:否;operation.jobLevel = "0";submitVoiceSeparateJob.operation = operation;// 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式;是否必传:否;submitVoiceSeparateJob.callBackFormat = "XML";// 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型;是否必传:否;submitVoiceSeparateJob.callBackType = "Url";// 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调;是否必传:否;submitVoiceSeparateJob.callBack = "http://callback.demo.com";request.setSubmitVoiceSeparateJob(submitVoiceSeparateJob);// 更多配置请查看api文档或者SDK源码ciService.submitVoiceSeparateJobAsync(request, new CosXmlResultListener() { @Override public void onSuccess(CosXmlRequest request, CosXmlResult cosResult) { // result 提交人声分离任务的结果 // 详细字段请查看api文档或者SDK源码 SubmitVoiceSeparateJobResult result = (SubmitVoiceSeparateJobResult) cosResult; } @Override public void onFail(CosXmlRequest request, CosXmlClientException clientException, CosXmlServiceException serviceException) { if (clientException != null) { clientException.printStackTrace(); } else { serviceException.printStackTrace(); } }});
说明更多完整示例,请前往 GitHub 查看。
对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠
转转请注明出处:https://www.yunxiaoer.com/145399.html