2017年4月11日火曜日

mp4とmkvの違いと無劣化相互変換について

さて現在恐らくもっとも動画で主流なのはmp4形式ですが今回はそれとmkvについて少し説明します。簡単な構造を理解する為の記事です。

mp4とmkvてそもそも何?

mp4とmkvはデータコンテナです。
コンテナ??なんだそれと思うかもしれません。
要は動画や静止画や音声を格納出来る箱をイメージしてもらえば良いです。
エクスプローラーに画像と音楽データが入ってるイメージでも良いです。

つまり通常時は動画部分と音声部分が同時に流れる事でひとつの映像(動画+音声)として成り立っています。
何を当たり前の事を言っているんだ?と思うかもしれませんがこの要点は動画と音声は個別に存在しているという事です。

動画の生データはコーデックによって成り立っています。
そして音声データはmp3だったりaacだったりflacだったりします。
つまり基本的な考え方は映像は「コーデック+音データ」の作りです。

データの無劣化相互変換

mp4とmkvはただのただのコンテナなので「動画と音」を入れ替えても全く問題がありません。
────────────────────
mp4コンテナ[Aコーデック(動画)+A音声]
 ↓中身をコピー
mkv[空]
 ↓
mkv[Aコーデック(動画)+A音声]
────────────────────
こういう事です。
基本的に外装の箱が変わるだけで中身は無劣化のまま変換する事が出来ます。
そうです「基本的に」が問題になります。
それぞれのコンテナには対応形式があります。

mp4とmkvの違い

タイトルに話が追いつきましたね。
つまり、mp4とmkvの違いって言うのは「格納できる動画と音の種類に違いがあるだけ」という事です。
詳細は以下通り。

mp4コンテナ

動画:MPEG-1、MPEG-2、MPEG-4 Visual (MPEG-4 Part 2)、H.264/MPEG-4 AVC (MPEG-4 Part 10)、H.265 (H.265/HEVC) など
音声:AAC、HE-AAC、MP3、MP2、MP1、MPEG-4 ALS、TwinVQ、CELP(QCELPとは異なるので注意)など

mkv(Matroska)コンテナ

動画:VFW Codec, QuickTime Codec, Motion JPEG, MPEG-1/-2/-4, H.264, WMV, RealVideo, Snow, Theora, VC-1, VP8
音声:AAC, AC-3, DTS, MP3, MP2, WMA, Vorbis, PCM, RealAudio, FLAC, TTA, WavPack

と、このように格納できる音源に差があります。
たとえばどちらの対応形式にもある組み合わせの場合無劣化の相互変換が可能です
逆に組み合わせが合わない場合、劣化する事前提で個別に抜出対応するコーデックの形式に変換する必要がある。

一番頭に説明した通りmkvよりmp4の方が主流の為、手持ちの携帯デバイスの為にmkvをmp4に変換しようと思う事は多いのですがmkvは可逆圧縮であるflacの高音質音源を使っていたりするのにmp4はそれに対応していません。
そういった場合に無劣化の変換は不可能です。

そういう場合はコンテナからflacを抜出aacやmp3に変換してからコンテナにコピーする事で取り敢えず映像としては再生できます。





1 件のコメント:

  1. あ~~~大変参考になりました!!前ずっと詳しい操作が分からなくて、この方法を使いましたが.
    https://www.videosolo.jp/tutorials/convert-mkv-to-mp4.html
    今度自分でやってみたい!

    返信削除