본문으로 건너뛰기
Previous
Next
RTMP 뜻과 의미 | 기술 용어 사전 | pkglog
멀티미디어

RTMP

다른 이름: Real-Time Messaging Protocol , RTMPS , RTMPT

정의

Real-Time Messaging Protocol. Adobe가 개발한 TCP 기반 저지연 스트리밍 프로토콜. 1935번 포트 사용. 청크(Chunk) 단위 전송으로 멀티플렉싱 지원. 라이브 스트리밍 인제스트(Ingest) 사실상 표준. Flash 종료 후에도 OBS→서버 업로드 프로토콜로 현역

상세 설명

📋 기술 스펙

  • TCP 기반: 1935번 포트 (RTMPS는 443 SSL/TLS)
  • 청크(Chunk): 기본 128바이트 단위로 메시지 분할 전송
  • 메시지 타입: Audio(8), Video(9), AMF 메타데이터(18/15), 제어 메시지(1~6)
  • 핸드셰이크: C0/S0, C1/S1, C2/S2 3-way
  • AMF(Action Message Format): 바이너리 직렬화 포맷 (AMF0/AMF3)
  • 스트림 ID: 최대 65535개 동시 스트림 멀티플렉싱
  • Timestamp: 32bit 밀리초 단위 (최대 49.7일, Extended Timestamp로 확장)
  • NetConnection, NetStream: Flash Player API 프리미티브

💡 실무 활용

  • OBS Studio, XSplit: 트위치/유튜브 라이브 업로드 (인제스트)
  • Wowza, Nginx-RTMP, SRS: 미디어 서버 인제스트 엔드포인트
  • 중국 라이브 플랫폼: Douyin, Bilibili (RTMP 인제스트 주력)
  • IRL 스트리밍: 모바일 인코더 앱 (Larix, CameraFi)

장점

  • 저지연: 1~3초 (TCP 기반으로 안정적)
  • 인제스트 표준: 모든 라이브 스트리밍 플랫폼 지원
  • 멀티플렉싱: 단일 연결로 오디오/비디오/메타데이터 동시 전송
  • 성숙한 생태계: FFmpeg, OBS, librtmp 등 오픈소스 풍부

⚠️ 단점 및 제약

  • Flash 종속: 브라우저 재생 불가 (Flash Player 2020 종료)
  • HTTP 미사용: 방화벽/NAT 통과 어려움, CDN 캐싱 불가
  • ABR 미지원: 적응형 비트레이트 없음 (HLS/DASH로 트랜스코딩 필요)
  • 표준화 부재: Adobe 독점 스펙, IETF/W3C 표준 아님

🔧 호환성

OBS Studio, FFmpeg, Wowza, Nginx-RTMP, SRS, Red5, Adobe Media Server. 브라우저 재생 불가 (HLS/DASH 변환 필수)

📚 표준 정보

표준화 기구: Adobe (독점 스펙, 공식 문서 2012년 이후 미업데이트)

출시 연도: 2002년