Please enable JavaScript.
Coggle requires JavaScript to display documents.
AWS MediaConvert를 이용한 영상 스트리밍 - Coggle Diagram
AWS MediaConvert를 이용한 영상 스트리밍
스트리밍
미디어 콘텐츠(비디오, 오디오 등)를 다운로드 완료 전에 재생할 수 있도록 전송하는 방식으로, 사용자는 전체 파일을 기다릴 필요 없이 데이터가 도착하는 즉시 실시간에 가깝게 콘텐츠를 시청하거나 청취할 수 있다
AWS MediaConvert
장점
클라우드 기반 트랜스코딩 서비스
서버리스 인프라
별도의 인프라 관리 없이
AWS에서 제공하는 트랜스코딩 파워 사용 가능
종량제 과금
실제 인코딩에서 사용된 분량에 대해 과금되므로
초기 투자 비용이 적고, 사용량에 따라 비용이 최적화 됨
고가용성 및 자동 확장
클라우드 인프라를 활용해 일시적 트래픽 폭증에도
안정적으로 서비스 제공 가능
다양한 출력 포맷 및 적응형 스트리밍 지원
다양한 포맷
HLS, DASH, Smooth Streaming, 그리고 CMAF 등 최신 스트리밍 포맷 지원
적응형 스트리밍 생성
하나의 입력 소스(MP4 등)를 여러 비트레이트와 해상도로 트랜스코딩해,
네트워크 상황에 따라 자동 화질 전환이 가능한 출력 파일 세트 생성 가능
DRM 및 캡션 지원
콘텐츠 보호를 위한 DRM 처리와 자막 혹은 캡션 파일의 병합도 가능한 점으로 인해 SNS 앱에서 해외 사용자나 다양한 콘텐츠 유형 지원에 유리
자동화 및 통합 기능
AWS 생태계와의 통합
S3, CloudFront, MediaPackage, Lambda 등 다른 AWS 서비스들과
손쉽게 연동할 수 있어 전체 미디어 파이프라인을 원활하게 구축 가능
API 기반 제어
RESTful API를 토앻 트랜스코딩 작업을 자동화할 수 있으며,
파이프라인의 상태 모니터링과 오류 처리를 효율적으로 할 수 있음
프리셋 및 커스터마이즈 가능
여러 상황에 맞춰 미리 정의된 템플릿(프리셋)을 활용하거나,
특정 요구사항에 맞춰 세밀하게 파라미터를 조정할 수 있는 유연성을 제공
단점 및 고려사항
실시간/저지연 스트리밍에는 부적합
"업로드 후 인코딩해서 올리는 콘텐츠"에는 적합하지만, 라이브 스트리밍에는 적합하지 않다
MediaConvert는 VOD(요청 기반 인코딩)이므로, 라이브 스트리밍이나 저지연 요구(Low Latency HLS 등)에는 최적화 되어 있지 않아, 실시간 방송을 하려면 AWS MediaLive, MediaPackage 등과 조합이 필요하며, 이에 따라 복잡도와 비용이 증가할 수 있다.
단순한 과금 구조, but 저렴하진 않음
자동화/유지보수는 저렴하지만, 트래픽/콘텐츠 양이 많아지면 단가 측면에서 부담 발생 가능
기본적으로 분 단위 과금이기 때문에, 콘텐츠 양이 많거나 해상도/코덱이 고급일수록 가격이 상승한다. FFmpeg를 EC2에서 직접 돌리면 더 저렴할 수 있지만, 그만큼 관리 비용과 개발자 시간이 든다. 무료 인코딩 티어는 제한적이고, 프리뷰 생성 등 부가 기능은 별도 구현이 필요하다.
유연성 제약
커스텀 인코딩이 중요한 서비스에는 부족할 수 있다
인코딩 파이프라인은 AWS가 정해준 옵션 안에서 조절해야 하며, FFmpeg나 Bitmovin처럼 프레임 단위 최적화, 커스텀 필터, 인공 지능 기반 품질 조정 등은 제한된다.
예: 영상 프레임 하나하나를 분석해서 장면마다 화질/비트레이트를 조절하는 Per-Title Encoding은 Bitmovin은 지원하지만 MediaConvert는 미지원
기능 확장성과 플레이어 통합은 개발자의 책임
영상 인코딩 이후의 작업은 개발자가 직접 구성해야 한다
MediaConvert는 영상 인코딩은 해주지만, 플레이어(재생 UI)는 AWS에서 제공하는 기본 플레이어가 없어 프론트단에서 HLS 플레이어를 직접 구현해야 하며, DRM 연동, 분석 콘텐츠 메타 관리 등은 추가 서비스 또는 개발이 필요하다.
동영상을 스트리밍용으로 바꿔주는 AWS의 클라우드 기반의 트랜스코더.
다양한 스트리밍 포맷(HLS, DASH 등)을 지원하며, 서버 없이도 인코딩 작업을 수행하고 스트리밍용 콘텐츠를 쉽게 만들 수 있도록 지원한다.
AWS 생태계에 최적화된 미디어 처리 서비스로 다양한 이점을 제공한다.
등장 이유
:
복잡한 인프라 없이도
방송급 트랜스코딩과 적응형 스트리밍을 손쉽게 구현하려는 클라우드 시대의 수요에 대응해 탄생했으며, AWS 생테계에 최적화된 미디어 처리 서비스로 다양한 이점 제공
📼 과거: 온프레미스 중심의 복잡한 인코딩 인프라
방송사나 OTT 업체에서 자체 인프라(
서버 + 인코딩 소프트웨어 + 저장소
)를 운영
=> FFmpeg, Telestream, Elemental Server 등을 로컬 장비에 구축
단점
설치와 유지보수 복잡
트래픽 급증시 확장 어려움
초기 장비 투자비 부담
인프라 관리 전문 인력 필요
☁️ 클라우드 시대 도래: 유연한 확장성과 자동화 요구 증가
넷플릭스, 유튜브 등 영상 스트리밍 중심의 인터넷 서비스의 급속한 성장으로, 보다 유연한 확장성과 자동화 기능에 대한 수요가 증가
증가된 요구사항
전 세계 사용자 대상
다양한 디바이스 호환성
적응형 스트리밍
빠른 배포
클라우드엣 미디이 워크플로우 자동화 수요
⚠️ 기존 AWS 미디어 서비스 한계
AWS는 이미 S3, CloudFront 등 콘텐츠 전송 인프라를 제공하고 있었지만, 영상 파일을 스트리밍용 포맷으로 자동 변환해주는 인프라는 부족
기존 사용자들이 FFmpeg를 EC2에 올려 직접 구현해야 했고,
배포/스케일/에러 처리/보안 등 관리 비용이 많이 발생
출시 의의
"누구나 서버를 직접 구상하지 않고, 방송급 인코딩을 클라우드에서 쉽게 실행할 수 있게 하자"
서버리스 구조 → 자동 확장
다양한 포맷 지원 → HLS, DASH, Smooth Streaming, MPEG-TS 등
REST API 기반 → CI/CD 파이프라인 통합 가능
Pay-as-you-go → 스타트업부터 대기업까지 유연하게 사용 가능
주요 비디오 스트리밍 도구 및 플랫폼
Bitmovin
고속 인코딩: 분산 처리 및 콘텐츠 인식 인코딩을 통해 빠른 처리 속도 제공
다양한 코덱 지원: AV1, VP9, HEVC/H.265, H.264 등
고급 기능: Per-Title, Per-Shot, Multi-Pass 인코딩 지원
DRM 통합: 다양한 DRM 시스템과의 통합 가능
장점
고품질 인코딩과 빠른 처리 속도
다양한 기기 및 플랫폼에 최적화된 스트리밍 제공
단점
비용이 비교적 높을 수 있음
구현 복잡성이 있을 수 있음
api.video
올인원 솔루션: 인코딩, 저장, 전달, 플레이어, 분석 등을 하나의 API로 제공
적응형 비트레이트 스트리밍 지원
AES 암호화를 통한 보안 제공
장점
간단한 통합과 빠른 구현
명확한 가격 정책과 무료 인코딩 옵션
단점
특정 고급 기능이나 맞춤화에는 제한이 있을 수 있음
FFmpeg
오픈 소스 비디오 처리 도구로, 다양한 포맷과 코덱 지원
명령줄 기반으로 강력한 기능 제공
장점
무료로 사용 가능
높은 유연성과 커스터마이징 가능
단점
사용 및 구현이 복잡할 수 있음
실시간 스트리밍이나 대규모 서비스에는 추가적인 인프라 필요
Snapster 적합성 비교
AWS 기반 앱이며, 릴스 기반의 짧은 VOD 영상, 비용 효율성, 자동화된 운영, 빠른 개발/배포가 중요 ➡
MediaConvert
최적
AWS 연동성
개발 효율성
비용 효율성
운영 편의성
✅
MediaConvert
: 모니터링, 보안, 자동화 모두 AWS에서 처리
⚠️ Bitmovin: 고급 기능은 많지만 관리 부담 큼
✅
api.video
: SaaS 형태로 운영 편함
❌ FFmpeg: 모든 관리를 수동으로 처리해야 함
커스터마이징
1 more item...
✅
MediaConvert
: 사용량 기반 과금, 무료 티어 있음
❌ Bitmovin: 고비용, 고품질 위주
✅
api.video
: 합리적 요금제, 소규모 앱에 유리
✅
FFmpeg
: 자체 실행 가능하지만 인프라/관리 부담
✅
MediaConvert
: 서버리스 인코딩, 자동 트리거, 낮은 복잡도
❌ Bitmovin: 설정 복잡도 높음
✅
api.video
: 간편 API 제공
❌ FFmpeg: 개발자가 모든 파이프라인을 구현해야 함
✅
MediaConvert
: S3, CloudFront, IAM 등 완전 자동화
❌ Bitmovin: 별도 연동 필요
❌ api.video: 외부 SaaS, AWS와의 통합 어려움
⚠️ FFmpeg: 직접 연동 구현 필요
MediaConvert
적용 배경 및 근거
AWS 생태계 통합으로 인한 운영 효율성
Snapster는 이미 AWS 생태계에 올라 있으므로 가장 자연스럽고 효율적인 선택
자연스러운 연동성
S3 -> MediaConvert -> CloudFront의 흐름으로 파일을 저장하고, 인코딩 및 배포까지 전부 AWS 내에서 이루어져 API 인증/연동 부담 없음
IAM 권한 기반으로 자동 연결이 지원되므로 보안 구성 일관성 향상
CloudWatch, EventBridge, Lambda 등을 통해 자동화 및 모니터링도 쉽게 구현 가능
서버리스/자동화 환경 최적
별도의 서버 없이
완전 관리형
인코딩 서비스
인코딩 Job만 정의하면 되고,
트리거 자동화(S3 업로드 시 인코딩 등)
도 가능
확장성 및 안정성
클라우드 기반 서비스 특성 덕분에 자동 확장이 가능해, 사용자 수가 기하급수적으로 늘어나더라도 안정적인 콘텐츠 전달이 가능
비용 효율성
사용량이 변동적인 앱(릴스 스타일)이라면 사용량 기반 과금 모델은 유리하며,
운영 서버 없이 비용 최적화가 가능하다
초기 투자 절감
온프레미스 인프라를 구축 할 필요 없이 AWS의 클라우드 서비스만으로 트랜스코딩 파이프라인 구성 가능
운영 비용 최적화
트랜스코딩 분량 기준으로 요금이 청구되므로 트래픽 및 인코딩 작업량에 맞춰 비용이 자연스럽게 조절됨
비용 구조 예측: AWS 공식 요금표에 따라 비용을 명확하게 측정 가능
비용 시뮬레이션: 다른 SaaS 대비 비용 통제가 용이
인프라 관리 비용 제거
서버 관리, 스케일링, 유지보수에 소요되는 인건비와 시간 비용이 줄어듦
EC2에 FFmpeg를 돌리는 방식보다 유지보수 부담/비용이 훨씬 낮다
개발 생산성 향상
스스로 스트리밍 플랫폼을 구축하는 대신 "AWS가 제공하는 완성형 스트리밍 백엔드"를 빌려쓰는 형식으로, 구현과 유지보수에서 큰 차이점이 발생
간편한 구현과 배포
API를 통한 자동화 및 AWS 서비스 간의 긴밀한 연계로, 개발자가 인코딩 로직을 일일이 작성할 필요 없이 바로 서비스를 구현하는 것이 가능
AWS SDK(Java, Python 등)로 MediaConvert Job을 쉽게 실행 가능
S3 업로드 -> 자동 인코딩 -> CloudFront 전달까지 한번에 처리 가능
복잡한 기능 내장
DRM, HLS/DASH 세팅 등 복잡한 인코딩 옵션들도 콘솔이나 JSON으로 한번 설정해두면 이후 재설정 불필요
필요한 경우 DRM도 MediaPackage와 조합해 쉽게 구축 가능
DRM, 캡션, 오디오 정규화, 다중 출력 포맷 지원 등 고급 기능을 자체 개발 없이 바로 활용할 수 있음
등장 이유
기존에는 미디어를 보기 위해 전체 파일 다운로드 필요
파일 크기가 커서 대기 시간이 길고 저장 공간 부담 증가
원하는 부분만 보기 어려움
다운로드 중단 시 전체 실패
네트워크 속도가 향상되고 실시간으로 시청/청취의 요구 증가
콘텐츠를 조각단위로 보내서 바로 보여주는 기술 필요
HTTP 기반 스트리밍(HLS, DASH 등)이 보급되며 표준화됨
대표적 스트리밍 포맷
HLS (HTTP Live Streaming)
Apple이 만든 스트리밍 방식으로, iPhone/iPad에서 기본적으로 지원.
.m3u8라는 재생 리스트 파일과 .ts 또는 .m4s 조각 파일을 사용.
DASH (Dynamic Adaptive Streaming over HTTP)
국제 표준으로 만들어진 포맷으로, 안드로이드나 웹 환경에서 많이 사용됨.
.mpd라는 메타파일 + 조각 파일(.m4s 등)을 사용.
LL-HLS (Low Latency HLS)
HLS의 단점인 느린 시작 시간(지연)을 줄인 버전.
라이브 방송이나 실시간에 가까운 스트리밍에서 유용.
원본 재생 vs. 스트리밍
MP4 원본 직접 재생
단순한 구현
:
단일 MP4 파일을 서버에 저장하고 클라이언트가 다운로드 후 재생하는 구조로 매우 단순하게 구현 가능
제한 사항
고정 화질 제공: 네트워크 상황과 관계 없이 동일한 화질을 제공하여, 느린 네트원크 환경에서는 끊김이나 버퍼링이 발생할 수 있음
부하 집중 문제: 모든 사용자에게 동일한 딘일 파일을 제공하면 동시에 많은 사용자가 접근할 때, 서버 부하가 증가할 위험이 있음
HLS/DASH 스트리밍
(MediaConvert 사용 시)
적응형 스트리밍
네트워크 상태에 따라 다양한 화질 버전을 자동으로 제공하므로, 사용자 경험이 크게 향상됨
세그먼트 기반 전송
동영상을 여러 작은 세그먼트로 나눠서 전송하기 때문에, 네트워크 환경이 좋지 않아도 중단 없이 재생 가능
CDN 최적화
세그먼트를 전 세계에 분산시킨 CDN을 활용함으로써, 전송 지연을 최소화하고 확장성을 극대화
부가 기능
DRM, 자막 처리 등 콘텐츠 보호 및 부가 기능을 손쉽게 적용할 수 있어 다양한 사용자 요구에 대응 가능