Matroska 비디오 (.mkv)
Matroska 표준마트로스카 비디오(MKV)는 단일 파일 내에 무제한의 비디오, 오디오, 사진 및 자막 트랙을 담을 수 있는 무료이며 확장 가능한 개방형 표준 멀티미디어 컨테이너 형식입니다.
검사 및 메타데이터
운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 MKV 파일을 식별합니다:
바이트 단위 헤더 시그니처 (매직 바이트)
운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 MKV 파일을 식별합니다:
16진수 시그니처 (오프셋 0):
1A 45 DF A3ASCII 표현: Eߣ
표준화: Matroska Open Standard / IETF Working Group Draft
기술 사양
| 컨테이너 아키텍처 | 확장 가능한 바이너리 메타 언어(EBML) 계층형 컨테이너 |
| 압축 | 코덱에 독립적이며 AV1, HEVC, H.264, VP9, DTS-HD, TrueHD, FLAC 및 비압축 비디오를 담을 수 있음 |
| 바이트 엔디안 | 가변 길이 크기 설명자를 사용하는 빅 엔디안 정수 표현 |
| 색 공간 | HDR10, Dolby Vision, HLG 및 모든 색 공간 |
| 채널 및 구조 | 거의 무제한의 오디오 트랙, 자막 스트림 및 카메라 앵글 |
| 최대 크기 | 제한 없음; 8K, 16K 및 고프레임레이트 비디오 지원 |
| 투명도 | VP9 또는 ProRes 스트림을 담을 때 완전한 알파 채널 지원 |
| 스트리밍 및 프로그레시브 | 클러스터 기반 청크 프레이밍으로 안정적인 라이브 스트리밍과 손상 복원력 제공 |
기술 비교 매트릭스: MKV 대 경쟁사
| 기술적 속성 | MKV (현재) | MP4 | WEBM | AVI |
|---|---|---|---|---|
| 코덱 자유도 | 범용: 모든 비디오, 오디오 또는 자막 코덱 허용 | 주로 H.264/HEVC/AV1 및 AAC로 제한됨 | VP8/VP9/AV1 및 Vorbis/Opus로 제한됨 | 구형 코덱만 지원 |
| 자막 충실도 | 첨부된 글꼴은 플레이어가 지원하는 경우 렌더링에 도움이 될 수 있으며, 표시 결과는 소프트웨어에 따라 다릅니다. | 기본 텍스트 스타일링만 지원 | 기본 WebVTT 스타일링만 지원 | 외부 자막 파일 필요 |
| Apple 기본 지원 | 서드파티 플레이어 필요 (VLC, IINA, Infuse) | 모든 Apple 기기에서 100% 기본 지원 | 최신 프레임워크를 통해 Safari에서 지원됨 | 구형 QuickTime 플러그인 |
| 컨테이너 아키텍처 | 확장 가능한 바이너리 메타 언어 (EBML) | ISO 베이스 미디어 파일 형식 (아톰/박스) | EBML (마트로스카 하위 집합) | RIFF 청크 아키텍처 |
일반적인 손상 모드 및 헥스 복구 가이드
파일이 재생되지만 타임라인 탐색이 고장 났거나 재생 시간이 잘못 계산됨.
근본 원인: 불완전한 다운로드로 인해 'Cues' 요소(마트로스카 탐색 테이블)가 손상되었거나 누락됨.
복구: “mkvmerge -o fixed.mkv broken.mkv”를 사용하여 탐색 인덱스 테이블을 즉시 재구축하십시오.
보안 분석 및 파서 공격 벡터
EBML 파싱은 가변 길이 정수 디코딩과 중첩된 요소 트리를 요구합니다. 잘못된 형식의 요소 길이는 메모리 관리 결함을 유발할 수 있습니다.
알려진 공격 벡터
- 미디어 플레이어의 EBML 요소 크기 파싱에서의 힙 버퍼 오버플로
- 자막 렌더러에서 잘못된 형식의 임베디드 글꼴 첨부 파일 처리를 통한 임의 코드 실행
- 마트로스카 챕터 요소의 순환 참조 루프를 통한 서비스 거부(DoS)
방어적 모범 사례: 내장 첨부 파일 형식을 정제하고 샌드박스화된 메모리 안전 파서 라이브러리를 사용하여 EBML 구조를 파싱하십시오.
역사적 배경 및 주요 이력
주요 장점
- 존재하는 가장 다재다능한 컨테이너: 거의 모든 비디오, 오디오 및 자막 코덱 지원
- 고급 스타일 자막(ASS/SSA), 다국어 오디오 트랙 및 챕터 메뉴에 대한 완전한 지원
- 손상에 대한 높은 복원력: 손상된 클러스터가 주변 비디오의 재생을 막지 않음
기술적 제한 사항 및 단점
- 기본 Apple QuickTime 플레이어 및 iOS 기기에서의 별도 설정 없이 바로 재생하는 기능 부족
- 모든 상업용 텔레비전 스마트 허브 및 하드웨어 플레이어에서 기본적으로 지원되지 않음
- 트랜스코딩 없이는 HTML5 <video>를 통해 표준 웹 브라우저에 직접 삽입할 수 없음
흥미로운 기술적 상식
- '마트로스카(Matroska)'라는 이름은 중첩된 나무 인형을 가리키는 러시아어 '마트료시카(Matryoshka)'에서 유래되었습니다.
- 매직 바이트 '1A 45 DF A3'은 MKV와 WebM 모두에서 사용되는 범용 EBML 헤더 ID를 나타냅니다.
- MKV 파일은 애니메이션 자막을 렌더링하기 위해 전체 TrueType 및 OpenType 글꼴 파일을 컨테이너 내부에 직접 임베드할 수 있습니다.
자주 묻는 기술 질문
TV나 휴대폰에서 MKV 파일을 재생할 수 없는 이유는 무엇입니까?
MKV는 PC에서 인기가 많지만, 일부 TV나 iOS 기기에서는 해당 컨테이너 또는 내부에 포함된 특정 고성능 오디오 코덱(DTS 등)에 대한 라이선스가 없습니다. MKV를 MP4로 변환하면 호환성 문제가 즉시 해결됩니다.
영상 화질 손실 없이 MKV를 MP4로 변환할 수 있습니까?
네! MKV 내부의 비디오가 H.264 또는 HEVC인 경우, File2File.app은 재인코딩 없이 단 몇 초 만에 비디오 스트림을 MP4 컨테이너로 다시 패키징하여 원본 화질을 100% 보존합니다.
MKV와 WebM은 어떤 관계입니까?
WebM은 Matroska/EBML 컨테이너 모델을 기반으로 하며 지정된 코덱으로 제한된 프로필을 사용합니다.