package org.example.PutVideoConvertTemplate;
import com.volcengine.tos.TOSV2;
import com.volcengine.tos.TOSV2ClientBuilder;
import com.volcengine.tos.TosClientException;
import com.volcengine.tos.TosServerException;
import com.volcengine.tos.comm.common.*;
import com.volcengine.tos.model.bucket.*;
import com.volcengine.tos.model.object.*;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
public class PutVideoConvertTemplateExample {
private static String base64String(String originalStr){
byte[] originalBytes = originalStr.getBytes(StandardCharsets.UTF_8);
byte[] encodedBytes = Base64.getEncoder().encode(originalBytes);
String encodedStr = new String(encodedBytes, StandardCharsets.UTF_8);
public static void main(String[] args) {
String endpoint = System.getenv("TOS_ENDPOINT");
String region = System.getenv("TOS_REGION");
String accessKey = System.getenv("TOS_ACCESS_KEY");
String secretKey = System.getenv("TOS_SECRET_KEY");
String bucketName = System.getenv("TOS_BUCKET");
TOSV2 tos = new TOSV2ClientBuilder().build(region, endpoint, accessKey, secretKey);
TimeInterval timeInterval = TimeInterval.builder()
Container container = Container.builder()
.format(ContainerFormatType.MP4)
Video video = Video.builder()
Audio audio = Audio.builder()
AIGCMetadata aigcMetadata = AIGCMetadata.builder()
.contentProducer("demo-producer")
.produceID("demo-produce-id")
.contentPropagator("demo-propagator")
.propagateID("demo-propagate-id")
.reservedCode1(base64String("123abc"))
.reservedCode2(base64String("456def"))
TranscodeConfigOptions options = TranscodeConfigOptions.builder()
.aigcMetadata(aigcMetadata)
Transcode transcodeConfig = Transcode.builder()
.timeInterval(timeInterval)
PutVideoConvertTemplateInput input = PutVideoConvertTemplateInput.builder()
.name("example-video-template")
.transcodeConfig(transcodeConfig)
PutVideoConvertTemplateOutput output = tos.putVideoConvertTemplate(input);
System.out.println("创建视频转码模板成功");
System.out.println("RequestID: " + output.getRequestInfo().getRequestId());
System.out.println("StatusCode: " + output.getRequestInfo().getStatusCode());
System.out.println("模板ID: " + output.getId());
} catch (TosClientException e) {
System.out.println("操作失败");
System.out.println("Message: " + e.getMessage());
if (e.getCause() != null) {
e.getCause().printStackTrace();
} catch (TosServerException e) {
System.out.println("操作失败");
System.out.println("StatusCode: " + e.getStatusCode());
System.out.println("Code: " + e.getCode());
System.out.println("Message: " + e.getMessage());
System.out.println("RequestID: " + e.getRequestID());
System.out.println("操作失败");
System.out.println("unexpected exception, message: " + t.getMessage());