更新时间:2024-07-29 GMT+08:00
创建转封装任务
您可以通过创建MpcClient实例并设置相关参数新建转封装任务,转封装任务用于视频转封装处理。
核心代码
- 创建转封装任务。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
//设置转封装输入视频地址和输出路径 ObsObjInfo input = new ObsObjInfo().withBucket("mpc-east-2").withLocation("region01").withObject("ok.flv"); ObsObjInfo output = new ObsObjInfo().withBucket("mpc-east-2").withLocation("region01").withObject("output"); //创建转封装请求 CreateRemuxTaskRequest req = new CreateRemuxTaskRequest() .withBody(new CreateRemuxTaskReq().withInput(input).withOutput(output) // 设置转封装参数 .withOutputParam(new RemuxOutputParam() //设置转封装格式 .withFormat("HLS") //转成hls切片间隔 .withSegmentDuration(5))); //发送转封装请求 CreateRemuxTaskResponse rsp = initMpcClient().createRemuxTask(req); System.out.println(rsp.toString())
完整代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ClientRequestException; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.http.HttpConfig; import com.huaweicloud.sdk.mpc.v1.MpcClient; import com.huaweicloud.sdk.mpc.v1.model.CreateRemuxTaskReq; import com.huaweicloud.sdk.mpc.v1.model.CreateRemuxTaskRequest; import com.huaweicloud.sdk.mpc.v1.model.CreateRemuxTaskResponse; import com.huaweicloud.sdk.mpc.v1.model.ObsObjInfo; import com.huaweicloud.sdk.mpc.v1.model.RemuxOutputParam; import com.obs.services.internal.ServiceException; public class TestRemux { /** * 初始化 MpcClient * @return */ public static MpcClient initMpcClient() { HttpConfig httpConfig = HttpConfig.getDefaultHttpConfig().withIgnoreSSLVerification(true).withTimeout(3); //http代理设置,请根据实际情况设置 //httpConfig.withProxyHost("xxxxxx").withProxyPort(xxxxxx).withProxyUsername("xxxxxx"). // withProxyPassword("xxxxxx"); //根据实际填写ak,sk,在控制台账号名下“我的凭证 > 访问密钥”上创建和查看您的AK/SK String ak = System.getenv("SDK_AK"); String sk = System.getenv("SDK_SK"); //根据实际填写项目ID,在控制台账号名下“我的凭证 > API凭证”下查看您的项目ID String projectId = System.getenv("PROJECT_ID"); //根据实际填写所需endpoint,这里以“region01”为例 String endpoint = "https://mpc.region01.myhuaweicloud.com"; BasicCredentials auth = new BasicCredentials().withAk(ak).withSk(sk).withProjectId(projectId); return MpcClient.newBuilder() .withHttpConfig(httpConfig) .withCredential(auth) .withEndpoint(endpoint) .build(); } /** * 创建转封装任务 * @param args */ public static void main(String[] args) { //设置转封装输入视频地址和输出图片路径 ObsObjInfo input = new ObsObjInfo().withBucket("mpc-east-2").withLocation("region01").withObject("ok.flv"); ObsObjInfo output = new ObsObjInfo().withBucket("mpc-east-2").withLocation("region01").withObject("output"); //创建转封装请求 CreateRemuxTaskRequest req = new CreateRemuxTaskRequest() .withBody(new CreateRemuxTaskReq().withInput(input).withOutput(output) // 设置转封装参数 .withOutputParam(new RemuxOutputParam() //设置转封装格式 .withFormat("HLS") //转成hls切片间隔 .withSegmentDuration(5))); //发送转封装请求 try { CreateRemuxTaskResponse rsp = initMpcClient().createRemuxTask(req); System.out.println(rsp.toString()); } catch (ClientRequestException | ConnectionException | RequestTimeoutException | ServiceException e) { System.out.println(e); } } } |
父主题: 转封装管理