web-dev-qa-db-ja.com

mp4vコーデックとH.264フォーマットの関係は何ですか?

この質問は私の前の質問のフォローアップです: mp4vとmp4aとは何ですか?

Mp4vはMPEG-4コンテナ内で使用されるコーデックです。H264はMPEG-4コンテナ内で使用できるコーデックでもあります。

私のテストでは、H.264とmpv4の両方が同様の品質を生成できます(GStreamerのx264encおよびffmpeg_mpeg4コンポーネントでテストしました)。

したがって、使用されるアルゴリズム間に重要な違いはありますか。それとも、mp4vはH.264の単なる別名ですか?

13
StackedCrooked

物事を少し片付けるためだけに。 mp4vは実際には何でもありません。これはVLCでMPEG-4パート2ビデオを表すために使用されますが、技術的な意味では何もありません。

MPEG-4は、 ISO/IEC 14496 で定義されている一連の仕様の一般名です。この仕様にはいくつかの部分があります。これらは関連する部分です:

  • パート2 -一般にMPEG-4 Videoとして知られている、ビデオ圧縮形式です。
  • パート -一般にMPEG-4 Audioとして知られ、オーディオ圧縮形式です。
  • パート1 -一般にH264またはMPEG-4 AVC、これもビデオ圧縮形式です。
  • パート14 -一般にMP4として知られている、コンテナ形式です。

H.264は通常、ビデオ圧縮のより良いと見なされます。 MPEG-4ビデオにはそれらが含まれていない ここにリストされています )いくつかの機能が含まれています。

通常表示される最大の違いはファイルサイズです。 H.264は通常、標準のMPEG-4コーデックよりもはるかに低いビットレートでビデオを圧縮できます。はるかに小さいファイルサイズで同等の品質のビデオを取得できるはずです。

15
heavyd

MPEG-4は、いくつかの異なるビデオ(およびオーディオ)コーデックを指定します。説明されているビデオコーデックの1つはH.264ですが、それだけではありません。

したがって、VLCがmp4vと呼ぶものは、おそらくMPEG-4の他のビデオコーデックの1つです。私はVLCのドキュメントでそれについて何も見つけられなかったので、おそらくどれを見つけるためにソースを掘り下げる必要があるでしょう。

MPEG-4仕様のパート2で説明されているコーデックである可能性があります。

1
sleske