미디어 파일 기본사항

Derek Herman
Derek Herman
Joe Medley
Joe Medley

이 도움말에서는 컨테이너의 개념과 같은 미디어 파일 기본사항과 스트림에서 사용할 수 있는 여러 코덱 형식 중 일부에 대해 알아봅니다. 또한 적응형 스트리밍, 비트 전송률, 해상도와 같은 주제를 간단히 살펴봅니다. 하지만 이러한 주제는 후반 섹션에서 자세히 다룹니다.

동영상 파일 제공

동영상 카메라에서 원시 파일을 가져와 그대로 웹에 업로드할 수 있다고 생각할 수 있습니다. 실제로 YouTube 또는 Vimeo와 같은 동영상 스트리밍 사이트에서는 바로 이 작업을 할 수 있으며, 일반적으로 카메라의 HDMI 포트에 연결한 후 캡처 카드를 통해 처리하는 방식으로 라이브 스트리밍 기능도 제공합니다. 이러한 서비스는 동영상 처리 및 업로드를 크게 간소화합니다. 여기에는 적응형 스트리밍 및 다양한 해상도에 필요한 여러 파일과 매니페스트를 생성하는 작업이 포함됩니다. 또한 셀프 호스팅을 약간 번거롭게 만드는 다른 여러 복잡하고 미묘한 요구사항이 있습니다. 사용자가 사이트를 사용하는 방식에 관심이 있다면 자체 사이트 또는 별도의 미디어 서버에서 동영상을 준비하고 제공하는 것이 원시 카메라 파일을 업로드하는 것보다 약간 더 복잡합니다.

동영상 파일은 다양한 형식으로 제공됩니다. 카메라에서 나오는 형식은 일반적으로 .mov 파일이지만 최신 미러리스 카메라를 사용하는 경우 .mp4입니다. 하지만 .mov는 녹음, 편집, 기타 초기 후반 제작 과정에서는 유용하지만 파일 크기가 크기 때문에 웹을 통한 스트리밍에는 적합하지 않습니다. 또한 4K의 원시 .mp4 파일 크기는 모바일에서 해당 파일을 재생하기에 매우 부담스럽습니다. 브라우저는 다양한 파일 형식을 지원하므로 적응형 스트리밍을 지원하려는 경우 최적화된 파일과 매니페스트를 여러 개 만들어야 할 수 있습니다. 파일을 변환하기 전에 파일과 그 특성에 관한 몇 가지 기본사항을 이해해야 합니다.

컨테이너, 코덱, 스트림

운영체제 셸에 표시되는 파일은 파일 확장자 (.mp4, .webm, .ogg 등)로 식별되는 컨테이너입니다. 컨테이너는 하나 이상의 스트림을 보관합니다. 미디어 파일에는 여기에서 다루는 것보다 훨씬 더 많은 형식의 스트림이 있을 수 있습니다.

이 섹션 뒷부분에서 사용되는 샘플 파일에는 오디오 스트림과 동영상 스트림이라는 두 가지 스트림이 최대 2개 포함됩니다. 자막과 데이터도 다른 유형에 속하지만 이 두 가지 유형은 이 도움말의 범위를 벗어납니다. 오디오 스트림과 동영상 스트림이 별도로 처리되는 경우가 있습니다. 대부분의 파일에는 오디오 스트림 1개와 동영상 스트림 1개만 포함되어 있습니다.

오디오 및 동영상 스트림 내에서 실제 데이터는 코덱을 사용하여 압축됩니다. 코덱 또는 코더/디코더는 동영상 또는 오디오 데이터의 압축 형식입니다. 동일한 컨테이너가 있는 파일의 콘텐츠가 서로 다른 코덱으로 인코딩될 수 있으므로 컨테이너와 코덱을 구분하는 것이 중요합니다.

아래 이미지는 이러한 구조를 보여줍니다. 왼쪽은 두 개의 스트림이 있는 기본 컨테이너 구조입니다. 오른쪽에는 단일 WebM 파일의 구조에 관한 세부정보가 나와 있습니다.

미디어 파일 구조를 가상의 미디어 파일과 비교합니다.
미디어 파일의 일부입니다.

WebM 컨테이너의 파일은 다른 형식보다 훨씬 작을 수 있으므로 모바일 사이트에서 스트리밍하는 데 적합합니다. 안타깝게도 일부 브라우저에서는 최신 컨테이너와 코덱을 지원하지 않습니다. 예를 들어 WebM은 고품질 오픈소스 옵션으로 웹용으로 특별히 제작되었지만 아직 지원 범위가 보편적이지 않습니다. 특히 Safari는 이 글을 작성할 당시 사용 가능 여부에 따라 삽입된 동영상에 WebM을 지원하지 않습니다. 하지만 WebM은 WebRTC에서 사용되는 VP8 및 VP9 코덱을 부분적으로 지원합니다. 따라서 대체 동영상을 제공하는 것이 가장 좋습니다.

코덱 형식

많은 파일 형식은 동일한 컨테이너 내에서 여러 코덱을 지원합니다. 사용 가능한 동영상 코덱오디오 코덱의 전체 목록은 그 자체로 하나의 웹사이트가 될 것입니다. 방금 제공된 링크는 웹에서 사용할 수 있는 항목에 관한 MDN의 실용적인 목록입니다. 다음은 현재 선호되는 파일 형식과 이러한 파일 형식에서 사용할 수 있는 코덱입니다. 파일 형식 링크를 따라 해당 파일 형식을 지원하는 브라우저를 확인하세요.

파일 형식 동영상 코덱 오디오 코덱
MP4 AV1, AVC (H.264)*, VP9 AAC
WebM AV1, VP9* Vorbis, Opus

* 기본 동영상 코덱을 나타냅니다.

비트 전송률 및 해상도

비트 전송률은 스트림 1초를 인코딩하는 데 사용되는 최대 비트 수입니다. 스트림 1초를 인코딩하는 데 사용되는 비트가 많을수록 잠재적인 세부정보와 충실도가 높아집니다. 이 개념에 관한 자세한 내용은 비트 전송률을 참고하세요.

해상도는 동영상의 단일 프레임에 포함된 정보의 양으로, 각 측정기준의 논리적 픽셀 수로 표시됩니다. 이 개념에 관한 자세한 내용은 해결 방법을 참고하세요.

다음으로 미디어 애플리케이션 기본사항에서는 두 가지 명령줄 도구인 Shaka Packager와 FFmpeg를 사용하여 이러한 특성을 검사하는 방법을 설명합니다.