프로젝트를 상담하세요
MicrocosmWorks디지털 코스모스 혁신 및 설계
소개연락처
MicrocosmWorks디지털 코스모스를 혁신하고 설계합니다

중요한 IT 솔루션을 제공합니다. 기술, 보안에 열정적이며 신뢰할 수 있는 혁신적인 IT 인프라를 통해 비즈니스 성장을 돕습니다.

hello@microcosmworks.com
+91 7011868196
New Delhi, India

솔루션

구축AI 제품 엔지니어링SaaS 제품 엔지니어링맞춤형 소프트웨어 개발
현대화소프트웨어 현대화AI 현대화클라우드 앱 현대화
확장백엔드 및 분산 시스템클라우드 성능 엔지니어링신뢰성 및 성능 엔지니어링AI 인프라
확대제품 엔지니어링 팀
모든 솔루션AI 에이전트 개발AI 비디오 플랫폼웰니스 및 피트니스 앱

서비스

디지털 컨설팅클라우드 인프라SaaS 개발AI 개발비디오 기술
ERP 개발Zoho 맞춤화Odoo 개발Salesforce 통합맞춤형 CRM 개발
QuickBooks 통합IoT 솔루션블록체인 개발
사이버 보안 컨설팅IT 지원 - L3

AI 성장 허브

AI 허브스타트업 혁신기업 가속기

자원

통찰력산업 가이드사용 사례 청사진아키텍처 패턴사례 연구

회사

회사 소개연락처프로젝트를 상담하세요우리의 작업

© 2026 MicrocosmWorks. 모든 권리 보유.

개인정보 처리방침서비스 약관
통찰로 돌아가기
AI Development

사용자 비디오 처리 방법: FFprobe, AssemblyAI, 그리고 맞춤형 렌더링

우리의 엔드투엔드 비디오 Pipeline: FFprobe로 유효성 검사, AssemblyAI로 전사(transcribing), 그리고 출력 Rendering.

Anup Kumar.webpAnup
•
September 1, 2026
•
수정일 September 23, 2026
•
5 min read
ChatGPT Image Aug 26, 2026, 01_39_08 PM (1).webp
5 min read

사용자가 Adstacker에 비디오를 업로드할 때 기대하는 것은 단 하나입니다. 바로 혼란스러운 기다림, 깨진 내보내기, 또는 싱크가 맞지 않는 자막 없이 깔끔하게 다듬어진 광고 영상으로 변환되는 것입니다. 이 간단한 워크플로 뒤에는 의도적으로 단계화된 AI 기반 비디오 Pipeline이 있습니다. 우리는 모든 에셋이 프로젝트에 들어가기 전에 유효성을 검사하고, 음성을 프레임 단위로 정확한 자막 데이터로 변환한 다음, 최종 영상들을 조합하기 전에 재사용 가능한 크리에이티브 구성 요소를 렌더링합니다.

이것이 Adstacker가 사용자 비디오를 업로드부터 내보내기까지 처리하는 방식이며, 아키텍처가 안정적인 크리에이티브 볼륨을 위해 설계된 이유입니다.

과제: 비디오 입력은 기본적으로 프로덕션 준비가 거의 되어 있지 않습니다.

비디오 파일은 파일 선택기에서 비슷하게 보일 수 있지만, 렌더 Pipeline에서는 매우 다르게 작동할 수 있습니다. 클립은 예상치 못한 길이, 낮은 해상도, 휴대폰 카메라의 회전 플래그, 또는 아예 사용 가능한 비디오 스트림이 없을 수 있습니다. 프로젝트 렌더링이 시작된 후에 이러한 문제를 발견하면, 사용자들은 시간을 낭비하고 컴퓨팅 자원이 낭비됩니다.

자막은 두 번째 과제를 추가합니다. 단순한 스크립트만으로는 소셜 광고에 충분하지 않습니다. 텍스트는 화자와 함께 나타나고, 읽기 쉬우며, 다음 줄과 겹치지 않도록 단어 단위의 타이밍이 필요합니다.

마지막으로, Adstacker는 소수의 에셋으로 다양한 조합을 생성하도록 구축되었습니다. 모든 Hook, Body, CTA, 그리고 자막 스타일 조합마다 동일한 캡션이 달린 클립을 다시 렌더링하는 것은 불필요하게 느리고 비용이 많이 들 것입니다.

우리의 솔루션: 명확한 책임 분담이 있는 단계별 Pipeline

우리는 유효성 검사, 전사(transcription), 오버레이 Rendering 및 최종 조립을 분리합니다. 각 단계는 다음 단계가 사용할 수 있는 영구적인 결과를 생성하여, 전체 프로젝트를 다시 시작하지 않고도 실패한 단계를 재시도할 수 있도록 합니다.

아키텍처

mermaid-diagram-2026-09-01-121049.webp

1. FFprobe는 프로젝트 시작 전에 잘못된 입력을 걸러냅니다.

Adstacker가 업로드된 클립을 프로젝트에 커밋하기 전에, 각 파일에 대해 경량 미디어 검사 도구인 FFprobe를 실행합니다. 우리는 안정적인 출력을 위해 중요한 다음 세부 정보를 읽습니다:

  • 실제 비디오 스트림이 존재합니다.
  • 길이가 프로젝트의 허용 범위 내에 있습니다.
  • 유효 해상도가 최소 품질 기준을 충족하고 설정된 최대값을 초과하지 않습니다.
  • 프레임 속도가 타이밍 계산에 사용 가능합니다.
  • 디스플레이 방향이 올바릅니다. 여기에는 픽셀 치수보다 메타데이터에 회전 정보가 있는 휴대폰 비디오도 포함됩니다.

이것은 조기 실패(fail-fast) 게이트입니다. 에셋이 신뢰할 수 있는 광고를 생성하지 못할 경우, Rendering이 시작되기 전에 제작자에게 유용한 메시지가 전달됩니다. 또한 프로젝트에 대해 제한된 기본 해상도를 선택할 수 있게 하여, 다운스트림 작업자들이 모든 원본 소스 크기를 개별적으로 처리하는 대신 예측 가능한 캔버스에서 작업하도록 합니다.

2. AssemblyAI는 음성을 사용 가능한 자막 타이밍으로 변환합니다.

자막을 사용하는 프로젝트의 경우, 우리는 원본 오디오를 AssemblyAI를 통해 보내고 단순한 텍스트 블록 이상의 것을 받습니다. 즉, 시작 및 종료 타임스탬프가 있는 개별 단어를 받습니다. 이러한 타임스탬프는 음성 언어와 시각적 타이밍 사이의 다리 역할을 합니다.

우리는 타이밍을 초 단위로 정규화하고, 프로젝트의 목표 프레임 속도로 프레임으로 변환하며, 단어들을 짧은 자막 청크(chunks)로 그룹화합니다. 이 그룹화는 의도적인데, 의미 있는 일시 정지 후 또는 현재 줄이 읽기 쉬운 길이에 도달하면 새로운 캡션이 시작됩니다. 또한 인접한 청크들을 클램프(clamp)하여, 원본 단어 타이밍이 겹치더라도 어떤 프레임에서도 하나의 청크만 보이도록 합니다.

그 결과는 비디오에 붙여넣은 일반적인 스크립트가 아니라 간결하고 프레임 인지(frame-aware)적이며 선택된 시각적 스타일에 맞는 자막 데이터입니다.

3. 공유 오버레이를 한 번 렌더링한 다음 재사용합니다.

크리에이티브 확장의 핵심은 중복 작업을 피하는 것입니다. Adstacker 프로젝트는 동일한 Hook 클립을 여러 Body 클립, CTA, 텍스트 레이어 및 자막 스타일과 결합할 수 있습니다. 우리는 캡션이 추가되거나 텍스트 레이어가 있는 세그먼트를 해당 세그먼트를 사용하는 모든 최종 조합마다 한 번씩 렌더링하는 대신, 각 고유한 '레시피'마다 한 번씩 렌더링합니다. 이는 저희 포트폴리오에 있는 단편 비디오 제작 플랫폼인 Ssemble을 위해 구축한 자동 캡션 생성 방식과 유사합니다.

오버레이 작업자는 준비된 원본 비디오, 목표 화면 비율, 사용자 지정 텍스트 레이어 및 자막 청크를 받습니다. 일관된 캔버스에 시각적 처리를 렌더링하고 완성된 오버레이를 재사용 가능한 에셋으로 저장합니다. 최종 Merge 단계는 올바른 Hook, Body 및 CTA 오버레이를 선택하고 완성된 영상을 조립합니다.

이러한 분할은 두 가지 실질적인 이점을 제공합니다:

  • 재사용은 렌더링 작업을 줄입니다. 많은 조합이 동일한 구성 요소를 공유할 때.
  • 독립적인 재시도를 통해 하나의 오버레이 또는 하나의 최종 Merge에서 발생한 실패를 완료된 작업을 폐기하지 않고 수정할 수 있습니다.

실제 사례: 한 번의 제품 촬영으로 수십 개의 테스트 가능한 광고를 제작

한 스킨케어 브랜드가 Hook 세 개, 제품 시연 두 개, 그리고 CTA 두 개를 업로드한다고 상상해 보십시오. 또한 두 가지 자막 스타일을 선택합니다. 크리에이티브 가능성은 빠르게 증가하지만, 여러 최종 비디오는 동일한 원본 세그먼트와 캡션 처리를 재사용합니다.

Adstacker는 처음에 7개의 모든 클립을 유효성 검사하고, 세로 방향 메타데이터를 고려하며, 각 음성 세그먼트로부터 시간 기반 자막 청크를 생성합니다. 그 다음 필요한 각 오버레이를 한 번만 생성합니다. 최종 조합이 조립될 때, 시스템은 준비된 이 조각들을 반복적으로 다시 생성하는 대신 재사용합니다.

브랜드는 일관된 테스트 준비 완료 광고 세트를 얻는 반면, Pipeline은 이를 생성하는 데 필요한 최소한의 작업만 수행합니다.

안정적인 크리에이티브 볼륨을 위해 구축되었습니다.

Adstacker에서 비디오 처리는 하나의 불투명한 '렌더링' 버튼이 아닙니다. 이는 소스 유효성 검사, 음성 이해, 재사용 가능한 레이어 Rendering, 그리고 최종 크리에이티브 조립이라는 일련의 집중적인 단계입니다. 이러한 구조는 업로드 시 품질을 보호하고, 캡션 동기화를 유지하며, 낭비 없이 다양한 변형을 확장할 수 있도록 돕습니다. 이는 탄력적이고 컨테이너화된 워크로드를 위해 구축된 Cloud Infrastructure에서 실행됩니다.

비디오 에셋을 업로드하고, 테스트하고 싶은 크리에이티브 구성 요소를 선택한 다음, Adstacker가 백그라운드에서 프로덕션 Pipeline을 처리하도록 하세요.

Technology stack: NestJS · FFprobe · AssemblyAI · AWS S3 · AWS ECS Fargate · Remotion · FFmpeg · MongoDB

저희 팀의 다른 글 읽기

1. Export Service vs. Video Editor Pipeline

2. 일반적인 Video Editor 구축하기

3. 다양한 비디오 해상도를 위한 채널 로고 최적화

FFprobeAssemblyAIRenderingPipeline
Anup Kumar.webp

저자 소개

Anup

AI & Cloud Solutions Expert at MicrocosmWorks

Building innovative AI-powered solutions and helping businesses transform through cutting-edge technology.

더 자세히 알고 싶으신가요?

비즈니스를 위한 이러한 솔루션 구현 방법에 대해 문의하세요.

연락하기

자주 묻는 질문

Adstacker uses FFprobe to inspect each uploaded video before processing begins. It checks for a valid video stream, acceptable duration and resolution, available frame rate, and correct display orientation, including rotation metadata from mobile-recorded videos.

Adstacker uses AssemblyAI to generate transcripts with word-level start and end timestamps. The timing data is normalized, converted into frames based on the target frame rate, and grouped into readable subtitle chunks so captions appear at the correct moment without overlapping.

Instead of rendering the same captioned or text-layered segment repeatedly, Adstacker creates reusable overlay assets for each unique combination of source video, text layers, subtitle chunks, and visual treatment. Final ad variations then reuse these prepared assets during assembly, reducing duplicate rendering work.

The pipeline separates validation, transcription, overlay rendering, and final assembly into independent stages with recorded processing states. This allows individual failed steps to be retried without restarting the entire project or discarding successfully completed processing work.

Adstacker's video processing pipeline uses NestJS, FFprobe, AssemblyAI, AWS S3, AWS ECS Fargate, Remotion, FFmpeg, and MongoDB. Together, these technologies support video validation, transcription, reusable overlay rendering, media processing, storage, and scalable background workloads.

Comments (0)

Share your thoughts and join the conversation

Leave a Comment

Your email will not be published

No comments yet

Be the first to share your thoughts!