본문 바로가기

Media Services/MediaConvert

AWS MediaConvert(S3 event lambda)

AWS MediaConvert를 이용하여 VOD mp4 파일에서 블랙화면과 함께 Audio 파일만 추출한다.

 

아래 AWS Github의 샘플 코드를 이용한다.

 

aws-samples/aws-media-services-vod-automation

Sample code and CloudFormation scripts for automating Video on Demand workflows on AWS - aws-samples/aws-media-services-vod-automation

github.com

샘플코드는 S3에 mp4 파일이 업로드 되었을 시에 미리 생성해놓은 미디어컨버트에서 미디어 프로파일을 구성하고 청크 파일을 만들어 HLS 서비스가 가능하도록 컨버팅 하는 예제이다.

 

링크를 그대로 따라서 하면 적용된다.

 

그럼 우리는 음성만 추출하기 위한 프로파일(JSON)이 필요하다. 프로파일을 바로 만들기에는 파라미터가 너무 복잡하기 때문에 먼저 웹 콘솔에서 Audio 만 뽑기 위한 프로파일을 생성하고 테스트 해보도록 한다.

 

output 파일을 mp4로 만들기 위해서 output group을 File group으로 지정한다.

File group

 

그리고 기존 Video 항목을 Remove하고 음성만 추출 가능하도록 구성한다.

Ouput에서 파일명을 Audio로 지정
Audio 프리셋

오디오에 대한 프리셋은 원본과 같게하거나 알아서 구성하고 Create를 한다.

그럼 S3에 블랙화면의 Audio 만 남아있는 mp4 파일이 생성된다.

 

그럼 방금 수행한 결과내역에서 Show job JSON을 확인하면 프로파일에 관한 JSON 파일을 볼 수 있다.

job JSON

처음부터 이 JSON 파일을 만드는 것은 매~우 힘들기 때문에 위와 같이 웹 콘솔상에서 진행 후에 프로파일을 확인하는 것을 권장한다.

 

그럼 필요한 부분은 JSON에서 OuputGroups 항목만 빼서 샘플코드에 job.json 항목만 변경시켜주면 VOD에서 음성만 변환하여 가져올 수 있다. S3 output 경로라든지 기타 필요한 기능은 샘플코드를 조금 수정해주면 된다.

 

블랙화면에 음성만 추출

실제 12MB의 영상 파일이 음성만 추출되어 126.7KB로 S3에 저장된다.

 

 

[트랜스코딩 소요시간]

# MediaConvert 파일 트랜스코딩 작업 시간 - 테스트 결과 요약

[1] 베이직 티어 (가속옵션 비활성화) : 원본 1080p - 1시간 영상 (작업 시간 : 24분 50초)

[2] 베이직 티어 (가속옵션 비활성화) : 원본 1080p - 30분 영상 (작업 시간 : 12분 45초)

[3] 프로 티어 (가속옵션 활성화) : 원본 1080p - 1시간 영상 (작업 시간 : 7분 4초)

[4] 프로 티어 (가속옵션 활성화) : 원본 1080p - 30분 영상 (작업 시간 : 5분 9초)

 

 

# MediaConvert 파일 트랜스코딩 작업 시간 - 테스트 결과 상세

 

[1] 베이직 티어 (가속옵션 비활성화)

    • 원본 :  MP4 (1시간  - 3.2GB)
    • 아웃풋 설정 : Output (4개 - 세부 설정 임의)

결과

출력 이름

비디오 설정

오디오 설정

Output 1

_1080p

H264, 1920 × 1080, 5 Mbps

AAC, 128 Kbps, 48000

Output 2

_720p

H264, 1280 × 720, 3 Mbps

AAC, 128 Kbps, 48000

Output 3

_480p

H264, 858 × 480, 1 Mbps

AAC, 128 Kbps, 48000

Output 4

_240p

H264, 352 × 240, 500 Kbps

AAC, 128 Kbps, 48000

  • 트랜스코딩 시간 : 24분 50초

[2] 베이직 티어 (가속옵션 비활성화)

    • 원본 :  MP4 (30분  - 1GB)
    • 아웃풋 설정 : Output (4개 - 세부 설정 임의)

결과

출력 이름

비디오 설정

오디오 설정

Output 1

_1080p

H264, 1920 × 1080, 5 Mbps

AAC, 128 Kbps, 48000

Output 2

_720p

H264, 1280 × 720, 3 Mbps

AAC, 128 Kbps, 48000

Output 3

_480p

H264, 858 × 480, 1 Mbps

AAC, 128 Kbps, 48000

Output 4

_240p

H264, 352 × 240, 500 Kbps

AAC, 128 Kbps, 48000

  • 트랜스코딩 시간 : 12분 45초

 

 

[3] 프로 티어 (가속옵션 활성화)

  • 원본 :  MP4 (1시간  - 3.2GB)
  • 아웃풋 설정 : Output (4개 - 세부 설정 임의)

결과

출력 이름

비디오 설정

오디오 설정

Output 1

_1080p

H264, 1920 × 1080, 5 Mbps

AAC, 128 Kbps, 48000

Output 2

_720p

H264, 1280 × 720, 3 Mbps

AAC, 128 Kbps, 48000

Output 3

_480p

H264, 858 × 480, 1 Mbps

AAC, 128 Kbps, 48000

Output 4

_240p

H264, 352 × 240, 500 Kbps

AAC, 128 Kbps, 48000

  • 트랜스코딩 시간 : 7분 4초

 

 

[4] 프로 티어 (가속옵션 활성화)

  • 원본 :  MP4 (30분  - 1GB)
  • 아웃풋 설정 : Output (4개 - 세부 설정 임의)

결과

출력 이름

비디오 설정

오디오 설정

Output 1

_1080p

H264, 1920 × 1080, 5 Mbps

AAC, 128 Kbps, 48000

Output 2

_720p

H264, 1280 × 720, 3 Mbps

AAC, 128 Kbps, 48000

Output 3

_480p

H264, 858 × 480, 1 Mbps

AAC, 128 Kbps, 48000

Output 4

_240p

H264, 352 × 240, 500 Kbps

AAC, 128 Kbps, 48000

  • 트랜스코딩 시간 : 5분 9초

 

이상 Lambda를 활용한 MediaConvert에 대한 간단한 팁을 알아봤다.

 

 

'Media Services > MediaConvert' 카테고리의 다른 글

AWS Elemental MediaConevert  (2) 2018.05.14