알림
|

AmazonQ 가 생성한 자바코드

페이지 정보

작성자 불의정령 121.♡.122.206
작성일 2024.06.10 15:36
918 조회
3 댓글
1 추천
글쓰기

본문

제가 AWS Media서비스에 관계되어 있다보니 코드적으로 MediaService를 제어하는데 흥미가 있습니다.

그래서 AmazonQ에 "make mediaconvert create job for HD resolution video to SD resolution with H264 Codec" 라고 프롬프트를 준 결과입니다.


import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.mediaconvert.MediaConvertClient;
import software.amazon.awssdk.services.mediaconvert.model.*;
publicclass TranscodeHDtoSD {
    publicstaticvoid main(String[] args) {
        // Create a MediaConvert client
        MediaConvertClient mediaConvertClient = MediaConvertClient.builder()
                .region(Region.US_EAST_1)
                .build();
        try {
            // Set up the job input
            JobInput input = JobInput.builder()
                    .fileInput("s3://input-bucket/input-video.mp4")
                    .build();
            // Set up the video output
            VideoDescription videoDescription = VideoDescription.builder()
                    .codecSettings(VideoCodecSettings.builder()
                            .codec(VideoCodecSettings.codecCodecAvc())
                            .build())
                    .height(480) // SD resolution height
                    .width(640) // SD resolution width
                    .build();
            ContainerSettings containerSettings = ContainerSettings.builder()
                    .container(ContainerType.MP4)
                    .build();
            Output output = Output.builder()
                    .videoDescription(videoDescription)
                    .containerSettings(containerSettings)
                    .build();
            OutputGroup outputGroup = OutputGroup.builder()
                    .outputGroupSettings(OutputGroupSettings.builder()
                            .type(OutputGroupType.FILE_GROUP)
                            .fileGroupSettings(FileGroupSettings.builder()
                                    .destination("s3://output-bucket/output-video.mp4")
                                    .build())
                            .build())
                    .outputs(output)
                    .build();
            // Create the job settings
            JobSettings jobSettings = JobSettings.builder()
                    .inputs(input)
                    .outputGroups(outputGroup)
                    .build();
            // Create the job request
            CreateJobRequest createJobRequest = CreateJobRequest.builder()
                    .jobSettings(jobSettings)
                    .build();
            // Submit the job
            CreateJobResponse createJobResponse = mediaConvertClient.createJob(createJobRequest);
            System.out.println("Job created: " + createJobResponse.job().id());
        } catch (MediaConvertException e) {
            System.err.println(e.getMessage());
            System.exit(1);
        }
    }
}

깔끔하게 그냥 빌드해서 쓸 수 있는 코드를 만들어버리네요..
다시금 놀랍다는 생각이 듭니다..대충 질문던져도 찰떡같이 알아듣고 코드를 만들어냅니다.

댓글 3 / 1 페이지

와싸다님의 댓글

작성자 no_profile 와싸다 (110.♡.98.240)
작성일 06.10 15:42
저건 클로드 기반인가요? 아님 아마존 자체 모델인가요?

불의정령님의 댓글의 댓글

대댓글 작성자 불의정령 (121.♡.122.206)
작성일 06.10 15:52
@와싸다님에게 답글 따로 명시되어 있는 모델은 없습니다.

Life2Buff님의 댓글의 댓글

대댓글 작성자 Life2Buff (59.♡.207.48)
작성일 06.10 16:24
@와싸다님에게 답글 작년 발표 때 밝힌 걸로는 Amazon의 Titan, Anthropic의 Claude, Meta의 Llama를 통합해서 사용한다고 했는데, 이게 지금도 그런지는 확실하진 않네요.
글쓰기
전체 검색