本示例介绍使用Alibaba Cloud SDK for Java调用AddCustomLiveStreamTranscode接口添加自定义转码配置。

前提条件

请在pom.xml文件中增加以下依赖,准确的SDK版本号,请参见 阿里云开发工具包(SDK)

阿里云2000元代金券免费领,最新优惠1折抢购,2核4G云服务器仅799元/3年,新老用户同享,立即抢购>>>

<dependency>     <groupId&gt;com.aliyun</groupId>     <artifactId>aliyun-java-sdk-live</artifactId>     <version>3.7.5</version>  </dependency>

示例代码

import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ServerException; import com.aliyuncs.live.model.v20161101.AddCustomLiveStreamTranscodeRequest; import com.aliyuncs.live.model.v20161101.AddCustomLiveStreamTranscodeResponse; import com.aliyuncs.profile.DefaultProfile; import com.google.gson.Gson;  public class TestAddCustomLiveStreamTranscode {      @SuppressWarnings("deprecation")     public static void main(String[] args) {         DefaultProfile profile = DefaultProfile.getProfile(                 "<your-region-id>",  // 地域ID,可以通过接口 DescribeRegions 查看可用的地域ID。                 "<your-access-key-id>",             // 您的AccessKey ID                 "<your-access-key-secret>");        // 您的AccessKey Secret         IAcsClient client = new DefaultAcsClient(profile);          AddCustomLiveStreamTranscodeRequest request = new AddCustomLiveStreamTranscodeRequest();         /**          * 自定义转码模版类型。          * 目前支持:          *     h264(自定义H264标准模版)          *     h264-nbhd(自定义H264窄带高清™模版)          */         request.setTemplateType("h264");         // 视频GOP, 1表示baseline, 2表示main, 3表示high, 取值要求: 1 <= Profile <= 3         request.setProfile(2);         // 视频GOP, 单位: 帧, 取值要求: 1 <= Gop <= 3000         request.setGop("300");         // 转码音频比特率, 单位: kbps, 取值要求: 1 <= AudioBitrate <= 512         request.setAudioBitrate(400);         /**          * 转码视频比特率。          * 单位:kbps。          *  取值范围:[1,6000] 转码视频会尽量接近您所设定的比特率,          *  但转码视频的实际比特率不能保证和您所设定的完全一致,          *  尤其是当您设定的比特率过大或过小时。          */         request.setVideoBitrate(3000);         // 您的加速域名。         request.setDomain("www.yourDomainName.com");         // 转码视频高度。取值范围:Width≥ 100max(Height,Width) ≤ 1920min(Height,Width) ≤ 1080         request.setHeight(720);         // 转码视频宽度。取值要求:Width ≥ 100max(Height,Width) ≤ 1920min(Height,Width) ≤ 1080         request.setWidth(576);         // 转码视频帧率。单位:fps。取值范围:[1, 30]         request.setFPS(30);         // 转码模板自定义名称。 取值要求:数字、大小写字母或短横线("-")。 不能与标准的转码模板命名重复。         request.setTemplate("LDtest");         // 直播流所属应用名称。取值要求: 数字、大小写字母、下划线("_")或短横线("-")。         request.setApp("testApp");          try {             AddCustomLiveStreamTranscodeResponse response = client.getAcsResponse(request);             System.out.println(new Gson().toJson(response));         } catch (ServerException e) {             e.printStackTrace();         } catch (ClientException e) {             System.out.println("ErrCode:" + e.getErrCode());             System.out.println("ErrMsg:" + e.getErrMsg());             System.out.println("RequestId:" + e.getRequestId());         }      }  }