본문 바로가기
소프트웨어개발

WebRTC와 HLS 차이: CCTV·라이브 서비스에 맞는 영상 전송 방식 고르기

by 아빠띠띠뽀 2026. 9. 6.

웹에서 같은 영상을 보여주더라도 “지금 일어나는 일을 빨리 확인해야 하는 화면”과 “여러 사람이 안정적으로 시청해야 하는 화면”은 선택 기준이 다릅니다. WebRTC와 HLS를 비교할 때도 기술 이름보다 서비스의 요구사항을 먼저 정하는 편이 좋습니다.

이 글은 CCTV 관제와 일반적인 라이브 시청을 예로 들어 지연 시간, 접속 환경, 시청 규모를 어떻게 비교할지 정리합니다. 특정 서비스의 속도를 측정한 후기가 아니라 공식 자료를 바탕으로 만든 선택 가이드입니다.

1. 전달 흐름부터 살펴보기

WebRTC는 브라우저 등이 상대와 실시간 미디어를 주고받는 기술입니다. 연결 경로를 찾는 과정에 ICE가 사용되고, 환경에 따라 STUN이나 TURN이 관여합니다. STUN은 외부에서 보이는 주소를 파악하는 데, TURN은 미디어를 중계하는 데 사용됩니다. 두 서버의 역할은 같지 않습니다. MDN의 WebRTC 프로토콜 안내에서 이 연결 관계를 확인할 수 있습니다.

HLS는 재생 목록과 미디어 조각을 HTTP로 전달하는 방식입니다. 일반 웹 서버와 CDN을 활용하는 배포 구조를 검토할 수 있습니다. 여러 품질의 스트림을 준비하면 네트워크 상태에 따라 품질을 선택하는 구성을 만들 수 있지만, 원본 한 개를 HLS로 내보내는 것만으로 여러 화질이 자동 생성되지는 않습니다. Apple의 HLS 안내는 웹 기반 배포와 적응형 재생의 특징을 설명합니다.

직접 구성한 비교 개념도. 대표적인 전달 흐름을 단순화했으며, 실제 서버 수나 연결 방식은 서비스 구성에 따라 달라집니다.

2. 비교표에서 먼저 볼 네 가지

기준 WebRTC HLS
반응 속도 낮은 지연이 중요한 화면의 우선 검토 대상 일반적인 구성에서는 지연이 더 생기기 쉬움. 저지연 HLS는 별도 검토
접속 경로 미디어 연결과 NAT·방화벽 조건 확인 HTTP 전달 경로와 플레이어 동작 확인
시청 규모 동시 미디어 연결과 서버·중계 자원 산정 CDN 배포, 원본 서버 부하, 캐시 정책 검토
재생 호환성 브라우저별 코덱·미디어 연결 확인 브라우저·플레이어·코덱 조합 확인

이 표는 검토 순서를 정하기 위한 정리입니다. MediaMTX 문서는 HLS가 WebRTC보다 지연이 높은 대신 서버와 클라이언트 사이 연결 문제가 상대적으로 적다고 설명합니다. 실제 결과는 원본 인코딩, 서버 설정과 플레이어 버퍼에 따라 달라집니다. MediaMTX 브라우저 재생 안내를 함께 참고하세요.

또한 저지연 HLS라는 선택지도 있습니다. “HLS는 언제나 몇 초, WebRTC는 언제나 몇 밀리초”처럼 고정된 숫자로 정하기보다, 사용할 서버와 플레이어 조합에서 목표를 확인해야 합니다.

3. 세 가지 가상 서비스에 적용해보기

출입구 상황을 보고 즉시 대응하는 관리 화면: 화면이 과거 상황을 보여주면 대응이 늦어질 수 있습니다. 따라서 허용 지연을 먼저 정하고 WebRTC를 우선 시험하는 접근이 합리적입니다. 다만 관리자가 접속하는 회사망이나 이동통신망에서 미디어 연결이 되는지도 함께 확인해야 합니다.

행사 영상을 많은 사람에게 보여주는 시청 페이지: 관객이 현장을 직접 제어하지 않고 시청하는 것이 목적이라면, 허용 가능한 지연과 배포 규모를 함께 놓고 HLS·CDN 구성을 검토할 수 있습니다. 지연 요구가 엄격하다면 저지연 HLS나 다른 전달 구조도 시험 대상에 넣습니다.

관리자 관제와 일반 시청이 함께 있는 서비스: 관리자는 빠른 반응이 필요하고 일반 시청자는 접속 편의가 우선일 수 있습니다. 이 경우 같은 입력에 서로 다른 출력 방식을 제공하는 구성도 검토할 수 있습니다. 사용자 역할별로 요구사항을 나누면 한 가지 방식에 모든 조건을 맞추려는 부담을 줄일 수 있습니다.

위 사례는 기술의 우열을 정한 결론이 아니라 비교 기준을 적용한 예입니다. 최종 선택에는 서비스가 실제로 사용하는 환경에서의 확인이 필요합니다.

4. “영상이 나온다” 다음에 확인할 것

시제품에서는 재생 성공에 먼저 눈이 가지만, 운영 판단에는 다른 기록도 필요합니다. 다음 항목을 같은 장비·입력·시험 시간 조건에서 비교하면 결과를 설명하기 쉬워집니다.

  • 첫 화면까지 걸린 시간: 재생을 요청한 뒤 첫 영상이 나타날 때까지의 시간입니다.
  • 현재 상황과 화면의 시간 차: 촬영 대상의 시계와 재생 화면을 함께 관찰하는 방식으로 확인할 수 있습니다. 측정 방법도 기록합니다.
  • 재생 유지와 복구: 시청 중 멈춤, 네트워크 변경 뒤 재연결, 화면 복귀 동작을 기록합니다.
  • 동시 시청 조건: 이용자 수뿐 아니라 사용자 한 명이 여는 영상 수와 화질도 적습니다.
  • 단말기 조건: PC·휴대전화의 운영체제와 브라우저 버전을 기록합니다.

예를 들어 사용자 한 명이 카메라 여섯 개를 동시에 여는 관제 화면은 영상 한 개만 보는 페이지와 부하 조건이 다릅니다. 이 차이를 기록해야 “몇 명이 볼 수 있나”라는 질문에 비교 가능한 답을 만들 수 있습니다.

5. 프로토콜을 바꿔도 남는 문제

H.265 원본을 WebRTC로 내보낸다고 해서 모든 브라우저에서 재생되는 것은 아닙니다. MediaMTX 문서는 브라우저 코덱 지원 제한과 H.264의 B-프레임 등 호환성 문제를 따로 설명합니다. 미디어 경로와 압축 형식은 함께 확인해야 합니다. WebRTC 호환성·연결 안내를 참고하세요.

음성도 영상과 별도의 확인 항목입니다. 무음 CCTV 화면에는 필요하지 않더라도 행사 중계에서는 영상만 정상이라는 결과로 검증을 마칠 수 없습니다. 서비스의 필수 기능을 먼저 표시해 두면 시험에서 빠뜨리는 항목을 줄일 수 있습니다.

6. 선택 결정을 한 문장으로 적어보기

“관리자가 출입구 상황에 바로 대응해야 하므로, 지정한 PC와 휴대전화에서 목표 지연과 외부망 연결을 확인한 뒤 WebRTC 사용 여부를 정한다.” 이처럼 목적·시험 조건·판단 기준을 함께 적어보세요.

반대로 일반 시청 페이지라면 “허용 지연 안에서 여러 지역의 이용자가 시청할 수 있도록 HLS 배포 구조와 플레이어 호환성을 확인한다”가 출발점이 될 수 있습니다. 기술 이름보다 먼저 정할 것은 누가, 어디서, 어떤 반응 속도로 영상을 봐야 하는지입니다.

관련 구현의 큰 구조는 MediaMTX 기반 스트리밍 제어 서버 소개에서 볼 수 있습니다.

자료 확인일: 2026년 9월 6일. 사례와 점검표는 설명을 위해 구성했으며, 특정 환경의 성능 보장이나 실제 벤치마크 결과가 아닙니다.