MKV

MKVファイルとは

何でも収まる開かれたコンテナ。音声を何本も、字幕も、チャプターも持てます。リビングのプレーヤーは苦手にしています。

MKV とは何か

MKV はコンテナです。誰か別のものが符号化した流れを、中に収めておく外殻です。 長期保存と完成したファイルの受け渡しのために使われます。

拡張子は .mkv、正式名称は Matroska Video です。ただしどちらも、そのファイルが中に何を持てるかほどには多くを語りません。このページの残りは、その中身についての話です。

MKV はどこから来たのか

2002 年までさかのぼります。 仕様は Matroska です。

古さが役に立つのは、ごく実務的な理由からです。形式が古いほど、それを覚える時間が多くのプログラムに与えられてきたということだからです。

仕様は公開されています

仕様書がそのまま公開されているので、中身を推し量るのではなく文書を読んで実装できます。この形式が数多くのプログラムに載っているのはそのためであり、20 年前に書かれたファイルが今も開けるのもそのためです。ただし「仕様が公開されている」ことと「使用料が要らない」ことは別の話です。中でコーデックを包んでいる形式では、特許のライセンスは仕様書が答えていない別の問題として残ります。

MKV は箱で、コーデックが中身です

中に入っているのはたいていH.264、HEVC、AV1、VP9、FLACです。「なぜ再生できないのか」という質問のほとんどは、この区別に行き着きます。同じ拡張子の 2 つのファイルの中に、まったく違う符号化が入っていることがあり、片方を拒むプレーヤーがもう片方は問題なく再生します。

箱を入れ替えるのが速くて劣化もないのに、コーデックを変えるとそのどちらでもなくなる理由も、これで説明がつきます。同じ流れを別の箱に入れるのは箱を書き直すこと、再エンコードするのは画そのものを書き直すことだからです。

ほかに何を運べるか

MKV ファイルは複数の音声トラックと字幕トラックを持てます。

これは変換のときにとくに効いてきます。変換先が持てないものは落とされ、たいてい警告もありません。

MKV を開けるのは何か

VLC、MKVToolNix、HandBrakeが読めますし、同じ種類のプログラムならたいてい読めます。

ファイルが開かないとき、形式が悪いことはめったにありません。たいていはプログラムのほうが形式より古いのです。もっと古い形式に変換してしまうのが確実な逃げ道で、このサイトの残りの部分はそのためにあります。

ブラウザーで開く

これを読めるブラウザーは一部にとどまります。

対応がそろっていない場合のよくある答えは、もうひとつの形式を並べて提供することです。ブラウザーは自分に分かるほうを選び、誰も取り残されません。

渡すための形式です

MKV は渡すために作られたもので、中で作業するためのものではありません。編集は可能ですが、快適だったためしはありません。賢い道は、元のファイルへ戻ってもう一度書き出すほうを通ります。

この形式でよく起きること

繰り返し挙がる不満はこれです。本来の分野の外では対応がまばら。

どれも、この形式を避ける理由にはなりません。どれかに不意を突かれる前に知っておくべきことがら、というだけです。これは別の主張であり、そして役に立つほうの主張です。

すべてを収める、という発想そのもののコンテナ

Matroska は 2002 年に、中に入れるものに制限を設けないという明確な目標のもとで設計されました。どんな映像コーデックでも、どんな音声コーデックでも、それぞれ何トラックでも、字幕、チャプター、添付ファイル、カバーアートまで持てます。MP4 が許可するものの一覧を定めているのに対し、MKV は何でも保存できる方法を定め、扱いはプレーヤー側に任せています。

MKV の映画が、元の音声に加えて吹き替え二つ、副音声解説、字幕八言語、チャプターマーク、そして字幕に必要なフォントまで、すべてを一つのファイルに収められるのはこのためです。他のよく使われる形式ではどれもできないことで、コンテナを意識して選ぶ人がこれを選ぶ理由になっています。

他とは違う意味でオープン

Matroska は自由でオープンな仕様で、管理団体もコンテナ自体に紐付いた特許もありません。誰でも実装でき、オープンソースのツールで既定になっているのはこのためです。ブラウザーが VP9 や AV1 に使う WebM も、これを意図的に制限したサブセットです。

中に入るコーデックは、それぞれ独自のライセンスを持つことが普通にあります。この区別は重要です。箱は自由でも、その中の H.265 は自由ではありません。これは、形式自体が独自ライセンスで中身がただのファイルにすぎない RAR とは逆の関係です。

なぜテレビが拒否するのか

ハードウェアプレーヤーは対応するコンテナの短い一覧しか持っておらず、MKV がそこに含まれないことがよくあるためです。これは中の映像とは無関係の話です。同じ H.264 のストリームが MP4 に入っていればすぐに再生されます。機器はコンテナを見て、認識できずにそこで止まります。

スマートテレビ、ゲーム機、古いストリーミング機器、多くのカーナビシステムがこの振る舞いをします。パソコン、まともなメディアプレーヤーを持つスマートフォン、メディアサーバー用ソフトウェアはそうなりません。これが人々が MKV を変換する一番よくある理由であり、実は変換が思ったよりずっと安上がりに済む理由でもあります。

リマックスは、そもそも変換ではない

これは知っておく価値がありますが、このサイトで行われているのはこの方法ではありません。MKV の中の映像と音声がすでに行き先の受け入れる形式 — たいてい H.264 と AAC — であれば、MKVToolNix や ffmpeg は何もデコードせずに MP4 へ持ち上げることができ、二時間の映画でも数秒で終わります。このサイトの変換ツールは常に再符号化します。符号化器にビットレートを渡すのですが、ビットレートを指定した時点でパケットのコピーという選択肢は失われます。

行き先が対応していないものが中にある場合 — 古い機器向けの H.265 や、対象が対応していない音声形式など — は再符号化が本当に避けられません。避けられる場合は、デスクトップでのリマックスのほうが速く、しかも無損失です。ストリームがすでに条件を満たしている大きな映画には、こちらを勧めるのが誠実です。

MP4 への道で置き去りになるもの

たいていはトラックで、これがこの変換の皮肉なところです。MP4 は複数の音声トラックを持て、それぞれに言語をタグ付けできます。iTunes の映画がまさにそうしています。しかし変換ツールは一つだけを書き出すことが多く、別の言語や副音声解説は失われ、ツールは選ばせるのではなく最初のものを選びます。分からない言語の映画になってしまう理由の一つです。

字幕はさらに厳しくなります。MKV は選択可能な本物のトラックとして字幕を持ちますが、MP4 のタイムドテキストは対応がまちまちで、まさに変換の目的だったテレビ側で無視されることがよくあります。誠実な選択肢は二つで、動画の隣に SRT ファイルを別に置くか、字幕を映像に永久に焼き込むかです。

字幕とフォント、書体を持つファイルがある理由

MKV は二種類の字幕に対応しています。SRT はシンプルで誰にでも理解される、タイミング付きのプレーンテキストです。ASS は配置、色、タイポグラフィーを持つスタイル付きの形式で、字幕付きアニメーションや、画面上の文字の周りにキャプションを配置する必要がある場面で多用されます。

ASS の字幕はフォントを名前で参照するため、MKV はフォント自体をファイルの中に添付できます。一部の MKV が映像の分量から想像するよりずっと大きいことがあるのはこのためで、字幕だけを取り出すと、間違った書体で表示されるものができてしまうこともあります。他のよく使われるコンテナには、これに相当する仕組みがありません。

チャプターは、実際には何のためにあるのか

MKV はチャプターマークを標準で保持していて、プレーヤーはシーンやエピソード、区切りごとに移動できます。メディアサーバーのソフトウェアはこれを読み込んでいて、ストリーミングサービスでおなじみの「イントロをスキップ」機能もこれが基盤になっています。

MP4 にもチャプターの仕組みはありますが、対応がまちまちで、しばしば移動の途中で失われます。映画一本であればこれは些細な損失ですが、講義やカンファレンス、一つのファイルに収まった一連のエピソードのような長時間の録画では、これこそが MKV のまま残し、対応するプレーヤーを使う理由になります。

MKV ファイルはどこから来るのか

ディスクからハードディスクに吸い出したもの。Blu-ray が持つすべてを保持できる、よく使われる唯一のコンテナが MKV だからです。トラックそのものが目的のメディアサーバーのライブラリー。放送チューナーからの録画。既定でこれを選ぶオープンソースのツールで作られたもの。そして、字幕付き動画配信の長い伝統も、ASS とフォント添付という組み合わせが生まれた背景です。

共通しているのは、そのファイルが送るためではなく保管するために作られたという点です。これは MKV をどう扱うべきかを考える上で役立つ見方です。MKV はたいてい誰かのライブラリーの手元コピーであり、変換するのはそれを良くするためではなく、特定の画面で見られるようにするためです。

MKV は残し、コピーを変換する

行き先がテレビやゲーム機なら、H.264 の MP4 が答えで、MKV はそのまま残しておくべきです。変換したファイルは一台の機器のための配信用コピーで、元のファイルには別の音声、字幕トラック、チャプターがまだ残っていて、一度捨てればそれらは戻ってきません。

行き先がパソコンやスマートフォン、メディアサーバーなら、そもそも変換しないでください。VLC、MPV、Plex、Jellyfin はどれも MKV をそのまま扱え、中のすべてを活用できます。もともとそのファイルを見ることのない機器のために変換するのは、機能を失うだけの余計な手間です。

基本情報

MKVフォーマットの識別子と出自。
拡張子.mkv
メディアタイプvideo/x-matroska
初版2002
仕様Matroska