Matroska 媒体容器 (MKV) 支持

本部分介绍媒体基础对 Matroska 媒体容器的支持 (MKV) 文件。

MKV 格式可以支持多个视频和音频编解码器,例如 H.264 和 AAC 音频。 一般情况下,容器描述如何排列视频和音频数据,以及使用哪些补充信息来描述这些 A/V 流。 容器还可以包含补充 A/V 流的数据,例如标题、音频流的语言、副标题或描述文字曲目、这些字幕的字体、图像、章节信息和菜单。 MKV 是一种高度灵活的格式,支持其中许多容器功能。 有关 MKV 格式的详细信息,请参阅 https://matroska.org

MKV 容器功能支持

媒体基础通过以下方式支持 MKV 容器功能:

  • 如果存在一个或多个视频曲目,将播放第一首曲目。
  • 如果存在一个或多个音轨,将播放第一首曲目。
  • 支持字幕曲目,但默认) 播放 (不选中。
  • 如果存在一个或多个字体或图像,则不会呈现标题和图像,尽管文件将加载和播放。
  • 菜单信息不受支持且不会显示,但文件将加载和播放。
  • 如果包含章节的文件引用补充文件,则补充文件将不会播放。
  • 使用文件浏览器浏览 USB 驱动器上的文件时,可以使用缩略图。

如果大多数 MKV 文件包含受支持的编解码器,则这组功能应允许播放这些文件。 支持包含使用下一部分中列出的编解码器编码的视频和音频轨道的 MKV 文件。

支持的 MKV 编解码器

MKV 的视频编解码器支持

Matroska ID:V_MPEG4/ISO/AVC

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_H264
  • 说明:H.264 视频
  • 四CC 或 WAV 标识符:H264

Matroska ID:V_MPEG2

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_MPEG2
  • 说明:MPEG-2 视频

Matroska ID: V_MPEG1

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_MPG1
  • 说明:MPEG-1 视频
  • 四CC 或 WAV 标识符:MPG1

Matroska ID:V_MPEG4/MS/V3

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_MP43
  • 说明:Microsoft MPEG 4 编解码器版本 3
  • 四CC 或 WAV 标识符:MP43

Matroska ID:V_MPEG4/ISO/ASP

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_MP4V
  • 说明:MPEG-4 第 2 部分视频
  • 四CC 或 WAV 标识符:MP4V

Matroska ID:V_MS/VFW/FOURCC

  • 说明:映射到主机上提供的 AVI 格式通常支持的多个编解码器。

Matroska ID:V_THEORA

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_Theora
  • 说明:Theora
  • 四CC 或 WAV 标识符:theo

Matroska ID:V_MPEG4/ISO/SP

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_MP4V
  • 说明:DivX4) (MPEG4 ISO 简单配置文件
  • 四CC 或 WAV 标识符:MP4V

Matroska ID:V_MPEG4/ISO/AP

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_MP4V
  • 说明:MPEG4 ISO 高级简单配置文件 (DivX5、XviD、FFMPEG)
  • 四CC 或 WAV 标识符:MP4V

Matroska ID:V_MPEGH/ISO/HEVC

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_HEVC
  • 说明:HEVC/H.265
  • 四CC 或 WAV 标识符:

Matroska ID:V_VP8

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_VP80
  • 说明:VP8 编解码器格式
  • 四CC 或 WAV 标识符:VP80

Matroska ID:V_VP9

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_VP90
  • 说明:VP9 编解码器格式
  • 四CC 或 WAV 标识符:VP90

Matroska ID:V_MJPEG

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_MJPG
  • 说明:动作 JPEG
  • 四CC 或 WAV 标识符:MJPG

Matroska ID:V_AV1

  • MSFT 媒体基础MF_MT_SUBTYPE:MFVideoFormat_AV1
  • 说明:AOMedia 视频 1
  • 四CC 或 WAV 标识符:AV01

MKV 的音频编解码器支持

Matroska ID:A_AAC

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_AAC
  • 说明:高级音频编码 (AAC)
  • 四CC 或 WAV 标识符:WAVE_FORMAT_MPEG_HEAAC

Matroska ID:A_AC3

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_Dolby_AC3
  • 说明:Dolby AC3
  • 四CC 或 WAV 标识符:WAVE_FORMAT_DOLBY_AC3_SPDIF

Matroska ID:A_MPEG/L3

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_MP3
  • 说明:MPEG 音频第 3 层 (MP3)
  • 四CC 或 WAV 标识符:WAVE_FORMAT_MPEGLAYER3

Matroska ID:A_MPEG/L1

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_MPEG
  • 说明:MPEG-1 音频有效负载
  • 四CC 或 WAV 标识符:WAVE_FORMAT_MPEG

Matroska ID: A_PCM/INT/BIG

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_PCM
  • 说明:未压缩的 PCM 音频
  • 四CC 或 WAV 标识符:WAVE_FORMAT_PCM

Matroska ID: A_PCM/INT/LIT

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_PCM
  • 说明:未压缩的 PCM 音频
  • 四CC 或 WAV 标识符:WAVE_FORMAT_PCM

Matroska ID:A_PCM/FLOAT/IEEE

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_Float
  • 说明:未压缩的 IEEE 浮点音频
  • 四CC 或 WAV 标识符:WAVE_FORMAT_IEEE_FLOAT

Matroska ID: A_ALAC

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_ALAC
  • 说明:Apple 无损音频编解码器
  • 四CC 或 WAV 标识符:

Matroska ID: A_MPEG/L2

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_MPEG
  • 说明:MPEG Audio 1,第 2 层 II
  • 四CC 或 WAV 标识符:WAVE_FORMAT_MPEG

Matroska ID: A_DTS

  • MSFT 媒体基础MF_MT_SUBTYPE:MEDIASUBTYPE_DTS_HD
  • 说明:数字剧院系统
  • 四CC 或 WAV 标识符:WAVE_FORMAT_DTS

Matroska ID: A_OPUS

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_Opus
  • 说明:Opus
  • 四CC 或 WAV 标识符:WAVE_FORMAT_OPUS

Matroska ID: A_VORBIS

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_Vorbis
  • 说明:Vorbis
  • 四CC 或 WAV 标识符:

Matroska ID: A_FLAC

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_FLAC
  • 说明:免费无损音频编解码器
  • 四CC 或 WAV 标识符:WAVE_FORMAT_FLAC

Matroska ID: A_AAC/MAIN

  • MSFT Media Foundation MF_MT_SUBTYPE:MFAudioFormat_AAC
  • 说明:高级音频编码 (AAC)
  • 四CC 或 WAV 标识符:WAVE_FORMAT_MPEG_HEAAC

Matroska ID: A_EAC3

  • MSFT 媒体基础MF_MT_SUBTYPE:MFAudioFormat_Dolby_DDPlus
  • 说明:增强型 AC-3
  • 四CC 或 WAV 标识符:

Matroska ID: A_TRUEHD

  • MSFT 媒体基础MF_MT_SUBTYPE:MEDIASUBTYPE_DOLBY_TRUEHD
  • 说明:Dolby TrueHD
  • 四CC 或 WAV 标识符:

Matroska ID:A_MS/ACM

  • MSFT Media Foundation MF_MT_SUBTYPE:映射到 mmreg.h 中定义的多个WAVE_FORMAT音频类型

MKV 的字幕编解码器支持

Matroska ID: S_TEXT/ASCII

  • MSFT 媒体基础MF_MT_SUBTYPE:MFSubtitleFormat_SRT
  • 说明:ASCII 文本

Matroska ID:S_TEXT/UTF8

  • MSFT 媒体基础MF_MT_SUBTYPE:MFSubtitleFormat_SRT
  • 说明:UTF-8 纯文本

Matroska ID:S_TEXT/SSA

  • MSFT Media Foundation MF_MT_SUBTYPE:MFSubtitleFormat_SSA
  • 说明:字幕格式

Matroska ID:S_TEXT/ASS

  • MSFT Media Foundation MF_MT_SUBTYPE:MFSubtitleFormat_SSA
  • 说明:高级字幕格式

Matroska ID: S_VOBSUB

  • MSFT 媒体基础MF_MT_SUBTYPE:MFSubtitleFormat_VobSub
  • 说明:VobSub 字幕

Matroska ID: S_HDMV/PGS

  • MSFT 媒体基础MF_MT_SUBTYPE:MFSubtitleFormat_PGS
  • 说明:HDMV 演示文稿图形字幕 (PGS)

有关编解码器的技术详细信息

有关编解码器的技术详细信息,请参阅以下内容。

Media Foundation 中支持的媒体格式

媒体基础编程指南