Help Center/
Media Processing Center/
SDK Reference/
Java SDK/
Transcoding Templates/
Creating a Transcoding Template
Updated on 2024-05-09 GMT+08:00
Creating a Transcoding Template
You can use the SDK to create a transcoding template. For details about template parameters, see the API for creating a transcoding template.
Core Code
- Set template parameters.
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
// Set a request for creating a transcoding template. CreateTransTemplateRequest req = new CreateTransTemplateRequest() .withBody(new TransTemplate().withTemplateName("test_123") // Set video parameters. .withVideo(new Video() // Video encoding format. The value 1 indicates H.264, and the value 2 indicates H.265. .withCodec(1) // Video bitrate (kbit/s) .withBitrate(6000) // Encoding level. The recommended value is 3. .withProfile(3) .withLevel(15) // Encoding quality. A larger value indicates higher quality and longer duration. .withPreset(3) .withRefFramesCount(4) .withMaxIframesInterval(5) .withBframesCount(4) .withHeight(1080) .withWidth(1920)) // Set audio parameters. .withAudio(new Audio() // Audio encoding format. The value can be 1 (AAC), 2 (HEAAC1), 3 (HEAAC2), or 4 (MP3). .withCodec(1) // Sampling rate. The value can be 1 (AUDIO_SAMPLE_AUTO), 2 (22,050 Hz), 3 (32,000 Hz), 4 (44,100 Hz), 5 (48,000 Hz), or 6 (96,000 Hz). .withSampleRate(4) // Audio bitrate (kbit/s) .withBitrate(128) // Number of audio channels. .withChannels(2)) // Set common parameters. .withCommon(new Common() .withDashInterval(5) .withHlsInterval(5) // Whether to enable low bitrate HD. .withPvc(false) // Pack type. The value can be 1 (HLS), 2 (DASH), 3 (HLS+DASH), 4 (MP4), 5 (MP3), or 6 (ADTS). .withPackType(1)));
- Send the request for creating a transcoding template and return a message.
1 2 3 4
// Send the request. CreateTransTemplateResponse rsp = initMpcClient().createTransTemplate(req); // Print the response message. System.out.println("CreateTransTemplateResponse=" + JsonUtils.toJSON(rsp));
Full Code
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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
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.core.utils.JsonUtils; import com.huaweicloud.sdk.mpc.v1.MpcClient; import com.huaweicloud.sdk.mpc.v1.model.Audio; import com.huaweicloud.sdk.mpc.v1.model.Common; import com.huaweicloud.sdk.mpc.v1.model.CreateTransTemplateRequest; import com.huaweicloud.sdk.mpc.v1.model.CreateTransTemplateResponse; import com.huaweicloud.sdk.mpc.v1.model.TransTemplate; import com.huaweicloud.sdk.mpc.v1.model.Video; import com.obs.services.internal.ServiceException; public class TestTranscodeTemplate { /** * Initialize the MPC client. * @return */ public static MpcClient initMpcClient() { HttpConfig httpConfig = HttpConfig.getDefaultHttpConfig().withIgnoreSSLVerification(true).withTimeout(3); // Configure the HTTP proxy. //httpConfig.withProxyHost("xxxxxx").withProxyPort(xxxxxx).withProxyUsername("xxxxxx"). // withProxyPassword("xxxxxx"); // Enter the AK and SK. To view your AK and SK, choose My CredentialsAccess Keys under your account on the console. String ak = "xxxxxx"; String sk = "xxxxxx"; // Enter the project ID. To view your project ID, choose My CredentialsAPI Credentials under your account on the console. String projectId = "xxxxxx"; // Enter the endpoint. The following uses region01 as an example. 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(); } /** * Create a transcoding template. * @param args */ public static void main(String[] args) { // Create a transcoding template request. CreateTransTemplateRequest req = new CreateTransTemplateRequest() .withBody(new TransTemplate().withTemplateName("test_123") // Set video parameters. .withVideo(new Video() // Video encoding format. The value 1 indicates H.264, and the value 2 indicates H.265. .withCodec(1) // Video bitrate (kbit/s) .withBitrate(6000) // Encoding level. The recommended value is 3. .withProfile(3) .withLevel(15) // Encoding quality. A larger value indicates higher quality and longer duration. .withPreset(3) .withRefFramesCount(4) .withMaxIframesInterval(5) .withBframesCount(4) .withHeight(1080) .withWidth(1920)) // Set audio parameters. .withAudio(new Audio() // Audio encoding format. The value can be 1 (AAC), 2 (HEAAC1), 3 (HEAAC2), or 4 (MP3). .withCodec(1) // Sampling rate. The value can be 1 (AUDIO_SAMPLE_AUTO), 2 (22,050 Hz), 3 (32,000 Hz), 4 (44,100 Hz), 5 (48,000 Hz), or 6 (96,000 Hz). .withSampleRate(4) // Audio bitrate (kbit/s) .withBitrate(128) // Number of audio channels. .withChannels(2)) // Set common parameters. .withCommon(new Common() .withDashInterval(5) .withHlsInterval(5) // Whether to enable low bitrate HD. .withPvc(false) // Pack type. The value can be 1 (HLS), 2 (DASH), 3 (HLS+DASH), 4 (MP4), 5 (MP3), or 6 (ADTS). .withPackType(1))); // Send a transcoding template request. try { CreateTransTemplateResponse rsp = initMpcClient().createTransTemplate(req); System.out.println("CreateTransTemplateResponse=" + JsonUtils.toJSON(rsp)); } catch (ClientRequestException | ConnectionException | RequestTimeoutException | ServiceException e) { System.out.println(e); } } } |
Parent topic: Transcoding Templates
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
The system is busy. Please try again later.
For any further questions, feel free to contact us through the chatbot.
Chatbot