소개 미디어, 광고, 교육 산업에서 비디오 콘텐츠는 폭발적으로 증가하고 있습니다. Cisco의 예측에 따르면 2022년 기준으로만 전체 인터넷 트래픽의 82%가 비디오가 될 것이라고 전망하였습니다.[1] 하지만 이 방대한 영상 자산에서 원하는 장면을 찾고, 콘텐츠를 분류하고, 인사이트를 추출하는 것은 여전히 어려운 과제입니다. 기존의 비디오 검색은 수동으로 입력한 메타데이터나 파일명에 의존했습니다. “2024년 마케팅 캠페인 영상”이라는 제목만으로는 그 안에 어떤 […] || 소개
미디어, 광고, 교육 산업에서 비디오 콘텐츠는 폭발적으로 증가하고 있습니다. Cisco의 예측에 따르면 2022년 기준으로만 전체 인터넷 트래픽의 82%가 비디오가 될 것이라고 전망하였습니다.[1] 하지만 이 방대한 영상 자산에서 원하는 장면을 찾고, 콘텐츠를 분류하고, 인사이트를 추출하는 것은 여전히 어려운 과제입니다.
기존의 비디오 검색은 수동으로 입력한 메타데이터나 파일명에 의존했습니다. “2024년 마케팅 캠페인 영상”이라는 제목만으로는 그 안에 어떤 장면이 있는지, 누가 등장하는지, 어떤 대화가 오가는지 알 수 없습니다.
TwelveLabs Marengo는 이 문제를 해결하기 위해 설계된 멀티모달 비디오 임베딩 모델입니다. Amazon Bedrock을 통해 제공되는 이 모델은 영상의 시각, 오디오, 텍스트 요소를 각각 이해하고, 자연어로 영상을 검색할 수 있게 해줍니다.
해당 블로그에서는 VoD(Video on Demand) 환경에서 TwelveLabs Marengo를 활용한 비디오 분석 파이프라인을 구축할 때, 상황에 맞는 아키텍처 조합을 살펴봅니다.
Option 1: 입고 영상에 대한 즉시 처리
영상이 Amazon S3와 같은 클라우드 환경에 업로드되는 즉시 분석을 시작해야 하는 경우가 있습니다. 사용자가 별도의 작업을 트리거하지 않아도, 신규 영상을 시스템이 자동으로 감지하고 새 영상에 대해 비디오 임베딩 및 분석 작업을 시작합니다. 여러 방법 중 대표적인 2가지 방법을 설명합니다.
적합한 사례
UGC(User Generated Content) 플랫폼: 사용자가 영상을 업로드하면 즉시 영상을 요약하고 검색
미디어 서비스(예.CMS): 영상이 올라오면 바로 중요 구간을 찾아 편집하거나 메타데이터 추출
콘텐츠 모더레이션: 업로드 즉시 부적절한 콘텐츠를 감지
방법 A: S3 Event Notification + Lambda
Amazon S3 Event Notifications를 활용하는 방식은 저장된 영상에 대해 후처리를 진행할 수 있는 가장 단순한 구성입니다. Amazon S3 버킷에 영상이 업로드되면 Event Notification이 AWS Lambda 함수를 직접 호출하고, Lambda가 Bedrock의 Marengo API를 호출하여 임베딩을 생성합니다.
다음 예시에서는 아래와 같은 트리거 조건을 사용하였습니다.
이벤트: s3:ObjectCreated:*
input Prefix: videos/
output Prefix: embeddings/
Suffix: .mp4
[그림 1. S3 Event Notification + Lambda를 활용한 단일 호출]
방법 B: Amazon EventBridge Event Buses + Rules
Amazon EventBridge Event Buses + Rules 방식을 사용하면 다음과 같은 이점이 있습니다.
단일 이벤트, 다중 타겟 하나의 영상 업로드 이벤트에 대해 여러 Rule을 정의하여 동시에 다른 작업을 트리거할 수 있습니다. 예를 들어, 영상이 업로드되면 임베딩 생성, 썸네일 추출, 메타데이터 저장을 병렬로 실행하여 전체 처리 시간을 단축할 수 있습니다.
이벤트 기반 느슨한 결합 S3 이벤트를 EventBridge로 라우팅하면 이벤트 생산자(S3)와 소비자(Lambda, Step Functions 등)가 완전히 분리됩니다. 새로운 처리 로직을 추가할 때 기존 설정을 수정할 필요 없이 Rule만 추가하면 되며, 시스템 확장이 용이