스트리밍 미디어 형식 및 패키징 방법을 읽을 때 WebM이 RTMP 및 HTTP Live Streaming 과 상호 배타적이라고 설명하는 방식에 혼란을 느낍니다 .
내 이해에서 WebM은 .webm
확장명을 가진 비디오 파일을 인코딩하는 방법과 같은 비디오 형식 이지만 RTMP와 HLS는 라이브 스트림으로 웹을 통해 비디오 형식을 보내는 방법입니다. HTTP TCP와 같은 일부 웹 프로토콜을 통해 전송).
WebM에는 웹을 통해 자체적으로 전송하는 고유 한 방법이 있습니까? RTMP 및 HLS가 WebM 형식의 비디오를 전송할 수없는 경우입니까?
답변
WebM은 본질적으로 VP8 또는 VP9 비디오와 Vorbis 또는 Opus 오디오를 운반하기위한 컨테이너 형식입니다. 스트리밍 방법을 지정하지 않으며 일반적으로 MPEG-2 TS 또는 MP4와 같은 다른 컨테이너 형식과 비교하여 스트리밍을 광범위하게 지원하지 않습니다. 그러나 여전히 스트리밍에 사용할 수 있습니다.
“스트리밍”이란 웹 사이트에서 단일 파일을 다운로드하거나 HTML5 <video>
태그 에 단일 (긴) 클립을 포함시키는 것을 의미하지는 않습니다 . 지난 몇 년 동안 몇 가지 고급 스트리밍 기술이 사용되었습니다.
-
RTMP 스트리밍 (실시간 메시징 프로토콜)을 사용하려면 Adobe Flash Media Server 와 같은 RTMP 서버가 필요합니다.이 서버는 Flash 지원 파일 형식 (MP4, FLV)을 클라이언트로 스트리밍합니다. 이것은 여전히 널리 퍼져 있지만 모든 플래시 기반 기술과 마찬가지로 느리고 확실하게 사라지고 있습니다.
WebM은 Flash에서 지원되지 않으므로 사용할 수 없습니다.
-
RTSP 스트리밍 (실시간 스트리밍 프로토콜)은 QuickTime 스트리밍 서버 또는 Helix 서버와 같은 스트리밍 서버를위한 제어 프로토콜입니다. 클라이언트와 서버는이 프로토콜을 통해 제어 메시지를 교환하고 데이터는 RTP (실시간 전송 프로토콜) 페이로드를통해 전송됩니다. 이것은 웹에서는 거의 발견되지 않지만 IPTV 에서는 발견되지 않습니다.
RTP에서 WebM 을 캡슐화 하는 방법에 대한 사양이 있습니다 .
-
HTTP 라이브 스트리밍 및 MPEG-DASH 는 클라이언트가 M3U8 재생 목록 파일 (HLS의 경우) 또는 MPD 매니페스트 (의 경우)를 기반으로 간단한 HTTP 요청을 통해 서버에서 비디오 청크를 요청하는 적응 형 스트리밍 기술입니다. 대시). 이 파일은 실제 오디오 및 비디오 데이터가 포함 된 파일 청크를 인덱싱합니다.
HLS에서 비디오는 MPEG-2 TS 또는 2017 년부터 단편화 된 MP4 (ISO 기본 미디어 형식) 파일로 저장해야합니다. MPEG-DASH는 더 광범위하게 지원됩니다. 여기에서 세그먼트 WebM을 사용할 수도 있습니다 .