MPEG-1

動画専門家グループフェーズ1(MPEG-1)
ファイル名拡張子
.mpeg、.mpg、.mpe、.mp1、.mp2、.mp3、.m1v、.m1a、.m2a、.m2v、.mpa、.mpv
インターネットメディアの種類
オーディオ/mpeg、ビデオ/mpeg
開発者MPEG ( ISO/IEC JTC 1の一部)
初回リリース1991年12月6日[ 1 ] (1991年12月6日
最新リリース
ISO/IEC TR 11172-5:1998 1998年10月 (1998-10
フォーマットの種類オーディオ、ビデオ、コンテナ
延長JPEGH.261
延長MPEG-2
標準ISO / IEC 11172
オープンフォーマット?はい
フリーフォーマット?はい

MPEG-1は、ビデオオーディオ可逆圧縮規格です。VHS品質の生のデジタルビデオとCDオーディオを、過度の品質低下なしに約1.5 Mbit/s(それぞれ26:1と6:1の圧縮率)[ 2 ]まで圧縮するように設計されており、ビデオCD、デジタルケーブル/衛星テレビ、デジタルオーディオ放送(DAB)の実用化に貢献しています。[ 3 ] [ 4 ]

今日、MPEG-1は世界で最も広く互換性のある非可逆オーディオ/ビデオフォーマットとなり、多くの製品やテクノロジーで使用されています。MPEG-1規格の中で最もよく知られているのは、おそらく、MPEG-1が導入したMP3オーディオフォーマットの最初のバージョンでしょう。

MPEG-1 規格は、「情報技術 - 最大約 1.5 Mbit/s のデジタル ストレージ メディアの動画および関連オーディオの符号化」というタイトルのISO / IEC 11172として公開されています。

この規格は次の5つのパートから構成されています: [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

  1. システム (ビデオ、オーディオ、およびその他のデータを1 つのファイルにまとめて保存および同期するための形式を定義します。後に、 MPEG-2の代替として導入されたMPEG トランスポート ストリーム形式と区別するために、MPEG プログラム ストリームと呼ばれるようになりました)。
  2. ビデオ(圧縮されたビデオコンテンツ)
  3. オーディオ(圧縮オーディオコンテンツ)、MP3およびMP2を含む
  4. 適合性テスト(標準の実装の正確さをテストする)
  5. リファレンスソフトウェア(標準に従ってエンコードおよびデコードする方法を示すサンプルソフトウェア)

歴史

ビデオ符号化における MPEG-1 の前身は、CCITT (現在のITU-T )が策定したH.261規格でした。H.261 で確立された基本アーキテクチャは、動き補償DCTハイブリッド ビデオ符号化構造でした。[ 10 ] [ 11 ]この規格では、エンコーダでのブロックベースの動き推定とデコーダでのエンコーダ選択動きベクトルを使用した動き補償を伴う 16×16 サイズのマクロブロックが使用され、残差符号化にはサイズ 8×8 の離散コサイン変換(DCT)、スカラー量子化、エントロピー符号化用の可変長コード (ハフマン コードなど)が使用されます。[ 12 ] H.261 は最初の実用的なビデオ符号化規格であり、そこで説明されている設計要素はすべて MPEG-1 でも使用されました。[ 13 ]

Joint Photographic Experts GroupCCITTのExperts Group on Telephony(それぞれJPEG画像圧縮規格とビデオ会議用H.261規格の考案者)によって開発された圧縮技術と共同研究の成功例をモデルに、 Moving Picture Experts Group (MPEG)ワーキンググループは、日本電信電話の安田博司氏とCSELTのレオナルド・キアリグリオーネ氏CSELT)の主導により1988年1月に設立されました。 [ 14 ] MPEGは、標準的なビデオおよびオーディオフォーマットの必要性に応え、H.261をベースにして、より複雑なエンコード方式(例えば、より高い精度の動きベクトルのサポート)を使用することで、より良い品質を実現するために設立されました。[ 3 ] [ 15 ] [ 16 ]

MPEG-1規格の開発は1988年5月に開始されました。各企業および機関から、14件のビデオコーデックと14件のオーディオコーデックの提案が評価のために提出されました。これらのコーデックは、1.5Mbit/sのデータレートにおいて、計算量主観的(人間が知覚する)品質について徹底的にテストされました。この特定のビットレートは、T-1 / E-1回線での伝送およびオーディオCDのおおよそのデータレートとして選択されました。[ 17 ]このテストで優れた成績を収めたコーデックは、規格のベースとして活用され、その後、追加機能やその他の改良が組み込まれながら、さらに改良されました。[ 18 ]

世界各地の様々な都市でグループ全体による20回の会議と、4年半の開発とテストを経て、最終規格(パート1~3)は1992年11月初旬に承認され、数か月後に発行されました。[ 19 ] MPEG-1規格の完成日は報告によって大きく異なり、ほぼ完成した規格案は1990年9月に作成され、その時点からわずかな変更のみが導入されました。[ 3 ]規格案は一般に購入可能でした。[ 20 ]規格は1992年11月6日の会議で完成しました。[ 21 ]バークレー・プラトー・マルチメディア研究グループは、1992年11月にMPEG-1デコーダーを開発しました。[ 22 ] 1990年7月、MPEG-1標準の最初の草案が書かれる前でさえ、2番目の標準であるMPEG-2の作業が開始されました。 [ 23 ] MPEG-1技術を拡張して、高ビットレート(3〜15 Mbit / s)で完全な放送品質のビデオ(CCIR 601に準拠)を提供しインターレースビデオをサポートすることを目的としていました。[ 24 ] 2つのコーデックの類似性により、MPEG-2標準にはMPEG-1ビデオとの完全な下位互換性が含まれており、どのMPEG-2デコーダでもMPEG-1ビデオを再生できます。[ 25 ]

特に、MPEG-1規格はビットストリームとデコーダ機能を非常に厳密に定義していますが、MPEG-1エンコードの実行方法については定義していません。ただし、ISO/IEC-11172-5には参照実装が提供されています。[ 2 ]これは、MPEG-1エンコードの効率が使用するエンコーダによって大きく異なることを意味し、一般的に新しいエンコーダは以前のものよりも大幅に優れたパフォーマンスを発揮することを意味します。[ 26 ] ISO/IEC 11172の最初の3つのパート(システム、ビデオ、オーディオ)は1993年8月に発行されました。[ 27 ]

MPEG-1パーツ[ 9 ] [ 28 ]
一部 番号 初版発売日(初版) 最新の訂正 タイトル 説明
パート1 ISO/IEC 11172-1 2017年8月30日アーカイブ- Wayback Machine1993 1999年[ 29 ]システム
パート2 ISO/IEC 11172-2 2017年8月30日アーカイブ- Wayback Machine1993 2006年[ 30 ]ビデオ
パート3 ISO/IEC 11172-3 2017年5月15日アーカイブ- Wayback Machine1993 1996年[ 31 ]オーディオ
パート4 ISO/IEC 11172-4 2017年8月30日アーカイブ- Wayback Machine1995 2007年[ 32 ]コンプライアンステスト
パート5 ISO/IEC TR 11172-5 2017年8月30日アーカイブ- Wayback Machine1998 2007年[ 33 ]ソフトウェアシミュレーション

特許

MPEG-1 は古いため、必須特許の対象ではなくなり、ライセンスを取得したり料金を支払ったりすることなく使用できます。[ 34 ] [ 35 ] [ 36 ] [ 37 ] [ 38 ] ISO特許データベースには、2003年に期限切れとなったISO 11172の特許1件(US 4,472,747)が記載されている。[ 39 ] MPEG-1規格のほぼ完成した草案は、1991年12月6日までにISO CD 11172 [ 20 ]として公開された。 [ 1 ] 2008年7月のKuro5hinの記事「MPEG-1、H.261、MPEG-2の特許状況」[ 40 ]や2008年8月のgstreamer-develメーリングリストのスレッド[ 41 ]のどちらにも、期限切れでないMPEG-1ビデオおよびMPEG-1オーディオレイヤーI / IIの特許は1件も記載されていなかった。 2009年5月のwhatwgメーリングリストでの議論では、US 5,214,678特許がMPEG-1 Audio Layer IIをカバーする可能性があると言及されました。[ 42 ]この特許は1990年に出願され、1993年に公開されましたが、現在は失効しています。[ 43 ]

「レイヤーIIIオーディオ」に対応した完全なMPEG-1デコーダーとエンコーダーは、MP3の記事で述べたように、MPEG-1オーディオレイヤーIIIの実装に特許料を要求する企業があったため、ロイヤリティフリーで実装することができませんでした。MP3に関連する世界中のすべての特許は2017年12月30日に失効したため、このフォーマットは完全に無料で使用できます。[ 44 ] 2017年4月23日、フラウンホーファーIISは、テクニカラーのMP3ライセンスプログラムにおける特定のMP3関連特許およびソフトウェアの課金を停止しました。[ 45 ]

元特許権者

以下の企業は、MPEG-1ビデオ(ISO/IEC-11172-2)形式の特許を保有しているという宣言をISOに提出しましたが、これらの特許はすべて失効しています。[ 46 ]

アプリケーション

パート1:システム

MPEG-1 標準のパート 1 はシステムをカバーしており、ISO/IEC-11172-1 で定義されています。

MPEG-1システムは、エンコードされた音声、動画、その他のデータを標準ビットストリームに格納し、異なるコンテンツ間の同期を維持するための論理レイアウトと方式を規定しています。このファイル形式は、比較的信頼性が高いとされるメディアへの保存と通信チャネルを介した伝送に特化して設計されています。この規格では限定的なエラー保護のみが規定されており、ビットストリーム内の小さなエラーが目立った欠陥を引き起こす可能性があります。

この構造は後にMPEGプログラムストリームと名付けられました。「MPEG-1システムの設計は、MPEG-2プログラムストリーム構造と本質的に同一です。」[ 48 ]この用語はより一般的で正確( MPEGトランスポートストリームと区別)であるため、ここでも使用します。

基本ストリーム、パケット、クロック参照

  • エレメンタリーストリーム(ES)は、MPEG-1オーディオおよびビデオエンコードデータ(エンコーダからの出力)の生のビットストリームです。これらのファイルは、MP3ファイルと同様に、単独で配布できます。
  • パケット化された基本ストリーム (PES) は、可変長のパケットにパケット化された基本ストリームです。つまり、ES は独立したチャンクに分割され、各パケットにはエラー検出のために巡回冗長検査(CRC)チェックサムが追加されます。
  • システムクロックリファレンス(SCR)は、各PESの33ビットヘッダーに格納されるタイミング値であり、周波数/精度は90kHzです。さらに9ビットの拡張ビットが付加され、27MHzの精度で追加のタイミングデータが格納されます。[ 49 ] [ 50 ]これらはエンコーダによって挿入され、システムタイムクロック(STC)から導出されます。ただし、バッファリング、エンコード、ジッター、その他の遅延により、同時にエンコードされたオーディオストリームとビデオストリームのSCR値は同一にはなりません。

プログラムストリーム

プログラムストリーム(PS)は、複数のパケット化されたエレメンタリストリーム(通常は1つのオーディオPESとビデオPES)を1つのストリームに結合し、同時配信と同期の維持を保証しながら、プログラムストリームを多重化します。PS構造は、マルチプレックスまたはコンテナフォーマットと呼ばれます。

プレゼンテーションタイムスタンプ(PTS)はPSに存在し、オーディオとビデオのSCR値間の避けられない不一致を修正します(タイムベース補正)。PSヘッダーの90kHz PTS値は、デコーダーにどのビデオSCR値がどのオーディオSCR値と一致するかを伝えます。[ 49 ] PTSはMPEGプログラムの一部をいつ表示するかを決定し、デコーダーがデータをバッファーからいつ破棄できるかを決定するためにも使用されます。[ 51 ]ビデオまたはオーディオのいずれかは、もう一方の対応するセグメントが到着してデコードされるまでデコーダーによって遅延されます。

PTSの処理には問題が生じる可能性があります。デコーダーは、連結(連続的に結合)された複数のプログラムストリームを受け入れる必要があります。これにより、ビデオの途中でPTS値がゼロにリセットされ、その後再び増加し始めます。このようなPTSのラップアラウンドの不一致はタイミングの問題を引き起こす可能性があり、デコーダーによる特別な処理が必要になります。

さらに、Bフレームが存在するため、デコードタイムスタンプ(DTS)も必要となります。ビデオストリームにBフレームが存在する場合、隣接するフレームは順序を逆にしてエンコードおよびデコードする必要があります(フレームの順序が入れ替わります)。DTSはPTSと非常に似ていますが、単に連続したフレームを処理するのではなく、デコーダーに次のBフレーム(フレームの種類については後述)をアンカーフレーム(PフレームまたはIフレーム)の前にデコードして表示するタイミングを指示するための適切なタイムスタンプを含んでいます。ビデオにBフレームが存在しない場合、PTSとDTSの値は同一です。[ 52 ]

多重化

PSを生成するために、マルチプレクサは(2つ以上の)パケット化されたエレメンタリストリームをインターリーブします。これは、同時ストリームのパケットが同じチャネルを介して転送され、両方のパケットがデコーダに正確に同時に到着することを保証するためです。これは時分割多重化の一例です。

各ストリームからの各インターリーブセグメントへのデータ量(インターリーブサイズ)の決定は複雑ですが、重要な要件です。不適切なインターリーブは、受信側が同時にもう一方のストリーム(ビデオなど)をデコードするのに十分なデータを取得する前に、一方のストリーム(オーディオなど)の保存可能量を超えるデータを取得するため、バッファのアンダーフローまたはオーバーフローを引き起こします。MPEGビデオバッファリング検証(VBV)は、指定されたデータスループットレートとバッファサイズを持つデバイスで多重化されたPSをデコードできるかどうかを判断するのに役立ちます。[ 53 ]これにより、マルチプレクサとエンコーダにフィードバックが提供され、準拠のために必要に応じて多重化サイズを変更したり、ビットレートを調整したりすることができます。

パート2:ビデオ

MPEG-1規格のパート2はビデオをカバーしており、ISO/IEC-11172-2で定義されています。その設計はH.261の影響を強く受けています。

MPEG-1ビデオは、知覚的な圧縮手法を用いることで、ビデオストリームに必要なデータレートを大幅に削減します。人間の目では十分に認識できない特定の周波数帯域や画像領域の情報を削減、あるいは完全に削除します。また、ビデオに共通する時間的(時間的)および空間的(画像全体)な冗長性を活用することで、他の方法よりも優れたデータ圧縮を実現します。(参照:ビデオ圧縮

色空間

4:2:0サブサンプリングの例。重なり合う2つの中央の円はクロマブルーとクロマレッド(色)のピクセルを表し、外側の4つの円はルマ(明るさ)を表します。

ビデオをMPEG-1にエンコードする前に、色空間はY′CbCr(Y′=輝度、Cb=クロマブルー、Cr=クロマレッド)に変換されます。輝度(明度、解像度)はクロマ(色、色相、位相)とは別に保存され、さらに赤と青の成分に分離されます。

彩度も4:2:0にサブサンプリングされます。つまり、垂直方向と水平方向の解像度が半分に削減され、ビデオの輝度コンポーネントに使用されるサンプル数が 4 分の 1 になります。[ 2 ]一部の色コンポーネントに高解像度を使用するこの方法は、デジタルカラーカメラの画像キャプチャセンサーで一般的に使用されるベイヤーパターンフィルターと概念が似ています。人間の目は、色 (Cr および Cb コンポーネント) の小さな変化よりも明るさ (Y コンポーネント) の小さな変化に非常に敏感であるため、彩度のサブサンプリングは、圧縮する必要があるビデオデータの量を削減する非常に効果的な方法です。ただし、細かいディテール (高い空間的複雑さ) のあるビデオでは、これが彩度のエイリアシングアーティファクトとして現れることがあります。他のデジタル圧縮アーティファクトと比較すると、この問題が迷惑になることはほとんどありません。サブサンプリングのため、Y′CbCr 4:2:0 ビデオは通常、偶数次元 (水平方向と垂直方向が 2 で割り切れる) を使用して保存されます。

Y′CbCrカラーは、表記を簡略化するために非公式にYUVと呼ばれることがよくありますが、この用語はより正確には、多少異なるカラーフォーマットに当てはまります。同様に、より正確な「luma(輝度)」と「chroma(彩度)」という用語の代わりに、 「luminance(輝度) 」と「chrominance(彩度)」という用語がよく使用されます。

解像度/ビットレート

MPEG-1は最大4095×4095(12ビット)の解像度と最大100Mbit/sのビットレートをサポートします。[ 16 ]

MPEG-1ビデオは、ソース入力フォーマット(SIF)解像度(352×240、352×288、または320×240)で最も一般的に使用されています。これらの比較的低い解像度と1.5Mbit/s未満のビットレートを組み合わせることで、制約パラメータビットストリーム(CPB)と呼ばれるものが形成されます。これは後にMPEG-2で「低レベル」(LL)プロファイルと改名されました。これは、 MPEG-1準拠と見なされるためにデコーダが処理できる最低限のビデオ仕様です。これは、品質とパフォーマンスのバランスを良好にし、当時の比較的安価なハードウェアの使用を可能にするために選択されました。[ 3 ] [ 16 ]

フレーム/画像/ブロックの種類

MPEG-1には、異なる目的で使用される複数のフレーム/ピクチャタイプがあります。最も重要でありながら最もシンプルなのはIフレームです。

Iフレーム

「Iフレーム」は「イントラフレーム」の略称で、他のフレームとは独立してデコードできることからこの名が付けられました。アニメーションで使用されるキーフレームに似た機能を持つことから、Iピクチャ、あるいはキーフレームと呼ばれることもあります。Iフレームは、ベースラインJPEG画像と実質的に同一とみなすことができます。[ 16 ]

MPEG-1ビデオの高速シークは、最も近いIフレームまでしか実行できません。ビデオをカットする場合、セグメントの最初のIフレームより前にビデオセグメントの再生を開始することはできません(少なくとも、計算負荷の高い再エンコードを行わない限り)。このため、編集アプリケーションではIフレームのみのMPEGビデオが使用されます。

Iフレームのみの圧縮は非常に高速ですが、ファイルサイズが非常に大きくなります。ビデオの時間的複雑さによっては、通常のMPEG-1ビデオの3倍(またはそれ以上)の大きさになります。[ 3 ] IフレームのみのMPEG-1ビデオはMJPEGビデオと非常によく似ています。そのため、ビットストリームの作成時にいくつかの制約(色空間と量子化マトリックス)を守れば、非常に高速かつ理論上ロスレス(実際には丸め誤差はありますが)で、あるフォーマットから別のフォーマットへの変換が可能です。[ 54 ]

Iフレーム間の長さは、ピクチャグループ(GOP)サイズと呼ばれます。MPEG-1では、一般的に15~18のGOPサイズが用いられます。つまり、14~17の非Iフレーム(PフレームとBフレームの組み合わせ)ごとに1つのIフレームが用いられます。よりインテリジェントなエンコーダでは、GOPサイズは事前に設定された上限まで動的に選択されます。[ 16 ]

デコードの複雑さ、デコーダーのバッファー サイズ、データ エラー後の回復時間、シーク能力、およびハードウェア デコーダーで最も一般的な低精度実装での IDCT エラーの蓄積により、I フレーム間のフレームの最大数には制限が設けられています ( IEEE -1180 を参照)。

Pフレーム

「Pフレーム」は「Predicted-frame(予測フレーム)」の略称です。前方予測フレームやインターフレームと呼ばれることもあります(Bフレームもインターフレームです)。

Pフレームは、ビデオの時間的冗長性を活用して圧縮率を向上させるために存在します。Pフレームは、直前のフレーム(IフレームまたはPフレーム)との画像の差分のみを保存します(この参照フレームはアンカーフレームとも呼ばれます)。

Pフレームとそのアンカーフレームの差分は、フレームの各マクロブロックの動きベクトルを用いて計算されます(下記参照)。この動きベクトルデータはPフレームに埋め込まれ、デコーダーで使用されます。

Pフレームには、任意の数のイントラ符号化ブロック(DCTおよび量子化)と任意の前方予測ブロック(動きベクトル)を含めることができます。[ 55 ]

ビデオが 1 つのフレームから次のフレームに大幅に変化する場合は (カットなど)、I フレームとしてエンコードする方が効率的です。

Bフレーム

「Bフレーム」は「双方向フレーム」または「双方向予測フレーム」の略です。後方予測フレーム、またはBピクチャーとも呼ばれます。BフレームはPフレームと非常によく似ていますが、前のフレームと次のフレーム(つまり2つのアンカーフレーム)の両方を使用して予測を行うことができます。

そのため、プレーヤーはBフレームをデコードして表示する前に、まずBフレームの直後に続くIアンカーフレームまたはPアンカーフレームを順番にデコードする必要があります。つまり、Bフレームのデコードにはより大きなデータバッファが必要となり、デコード時とエンコード時の両方で遅延が増加します。また、コンテナ/システムストリームにデコードタイムスタンプ(DTS)機能が必要になります(上記参照)。そのため、Bフレームは長年にわたり多くの議論の的となっており、動画では避けられることが多く、ハードウェアデコーダーでは完全にサポートされていない場合もあります。

Bフレームからは他のフレームは予測されません。そのため、必要に応じて非常に低ビットレートのBフレームを挿入することで、ビットレートを制御できます。これをPフレームで行った場合、将来のPフレームはPフレームから予測されるため、シーケンス全体の品質が低下します。しかし、同様に、将来のPフレームは、それと前のIフレームまたはPアンカーフレームとの間のすべての変更をエンコードする必要があります。Bフレームは、物体の背景が数フレームにわたって現れる動画や、シーンチェンジなどのフェードトランジションにも役立ちます。[ 3 ] [ 16 ]

Bフレームには、後方予測ブロックや双方向予測ブロックに加えて、任意の数のイントラ符号化ブロックと前方予測ブロックを含めることができます。[ 16 ] [ 55 ]

Dフレーム

MPEG-1には、後のビデオ規格には見られない独自のフレームタイプがあります。「Dフレーム」またはDCピクチャは、DC変換係数のみを用いて符号化された独立符号化画像(イントラフレーム)です(Dフレームの符号化ではAC係数は削除されます。詳細はDCTを参照してください)。そのため、画質は非常に低くなります。DフレームはIフレーム、Pフレーム、Bフレームから参照されることはありません。Dフレームは、例えば高速でビデオをシークする場合など、ビデオの高速プレビューにのみ使用されます。[ 3 ]

ある程度高性能なデコード機器があれば、Dフレームの代わりにIフレームをデコードすることで高速プレビューを実現できます。IフレームにはDC係数だけでなくAC係数も含まれるため、これにより高品質のプレビューが可能になります。エンコーダ側でデコーダ側がIフレームの高速デコード機能を備えていると想定できる場合、Dフレームを送信しないことでビット数を節約できます(これによりビデオコンテンツの圧縮率が向上します)。このため、MPEG-1ビデオエンコードではDフレームが実際に使用されることはほとんどなく、Dフレーム機能はそれ以降のビデオコーディング規格にも組み込まれていません。

マクロブロック

MPEG-1は、量子化のためにビデオを8×8ブロックの連続として処理します。しかし、動きベクトルに必要なビットレートを削減するため、また彩度(色)が4分の1にサブサンプリングされるため、各彩度ブロック(赤と青)のペアは4つの異なる輝度ブロックに対応します。つまり、8×8の輝度ブロック4つに対して、8×8のCbブロック1つと8×8のCrブロック1つが存在します。画像解像度が16×16であるこの6つのブロックのセットはまとめて処理され、マクロブロックと呼ばれます。

これらの 8x8 ブロックはすべて独立して DCT および量子化されます。

マクロブロックは、(カラー)ビデオの最小の独立単位です。動きベクトル(下記参照)は、マクロブロックレベルでのみ動作します。

ビデオの高さまたは幅が 16 の正確な倍数でない場合は、画像を埋めるためにマクロブロックの全行と全列をエンコードおよびデコードする必要があります (ただし、デコードされた余分なピクセルは表示されません)。

動きベクトル

動画内の時間的な冗長性を減らすため、変化したブロックのみ(GOPの最大サイズまで)を更新します。これは条件付き補充と呼ばれます。しかし、これだけでは効果はあまりありません。オブジェクトやカメラの動きによって、以前にエンコードされたオブジェクトの位置のみが変化したにもかかわらず、フレームの大部分を更新しなければならない場合があります。エンコーダは動き推定を行うことで、この動きを補正し、大量の冗長情報を削除することができます。

エンコーダは、現在のフレームを、アンカーフレーム(前のIフレームまたはPフレーム)から隣接するビデオ部分とダイヤモンドパターンで比較します。比較範囲は、現在のマクロブロックの領域からエンコーダ固有の定義済み半径までです。一致が見つかった場合、前のビデオ領域から現在のマクロブロックへの方向と距離(つまり、動きベクトル)のみをインターフレーム(PフレームまたはBフレーム)にエンコードする必要があります。デコーダが画像を再構成するために実行するこのプロセスの逆は、動き補償と呼ばれます。

しかし、予測されたマクロブロックが現在の画像と完全に一致することは稀です。予測された一致領域と実際のフレーム/マクロブロックとの差は予測誤差と呼ばれます。予測誤差が大きいほど、フレームに追加でエンコードする必要があるデータ量が増えます。効率的なビデオ圧縮を行うには、エンコーダが動き予測を効率的かつ正確に実行できることが非常に重要です。

動きベクトルは、画面上の 2 つの領域間の距離をピクセル数 (ペルとも呼ばれる) に基づいて記録します。MPEG-1 ビデオでは、1 ピクセルの半分、つまりハーフペルの精度の動きベクトル (MV) を使用します。MV の精度が高いほど、一致の精度が高くなり、圧縮効率も高くなります。ただし、精度を高めるとトレードオフがあります。MV の精度を高くすると、フレームに格納する MV ごとに大きな数値が必要になるため、MV を表すのに使用するデータ量が増えます。また、エンコーダとデコーダの両方でマクロブロックの補間レベルが高くなるため、コーディングの複雑さが増し、高精度の MV による収穫逓減(ゲインが最小) が発生します。ハーフペル精度は、その時点での理想的なトレードオフとして選択されました。( qpelを参照)

隣接するマクロブロックは動きベクトルが非常に似ている可能性が高いため、この冗長な情報はDPCM符号化して保存することで非常に効果的に圧縮できます。最終的なビットストリームには、各マクロブロックの動きベクトル間の(より小さな)差分のみを保存すれば済みます。

Pフレームは、マクロブロックごとに前のアンカーフレームを基準とした1つの動きベクトルを持ちます。一方、Bフレームは、前のアンカーフレームから1つ、そして次のアンカーフレームから1つ、合計2つの動きベクトルを使用できます。[ 55 ]

部分的なマクロブロック、およびマクロブロック境界に正確に重ならない黒枠/バーがビデオにエンコードされると、動き予測に大きな混乱が生じます。ブロックのパディング/境界情報により、マクロブロックがビデオの他の領域と厳密に一致することが妨げられ、画面境界に沿った数十個の部分的なマクロブロックそれぞれに対して、非常に大きな予測誤差情報をエンコードする必要があります。DCTエンコードと量子化(下記参照)も、ブロック内の画像コントラストが大きい/シャープな場合、それほど効果的ではありません。

さらに深刻な問題は、マクロブロックに顕著でランダムなエッジノイズ(画像が(典型的には)黒に遷移する)が含まれる場合に発生します。上記の問題はすべてエッジノイズにも当てはまります。さらに、追加されたランダム性を大幅に圧縮することは不可能です。これらの影響はすべて、ビデオの品質を大幅に低下させる(またはビットレートを増加させる)ことになります。

DCT

各8×8ブロックは、まず順方向離散コサイン変換(FDCT)を適用し、次に量子化処理を適用することでエンコードされます。FDCT処理自体は理論的にはロスレスであり、DCT(IDCT)を適用することで元の値を再現できます(量子化誤差と丸め誤差がない場合)。実際には、エンコーダでの量子化(次のセクションで説明)とデコーダでのIDCT近似誤差の両方によって、ある程度の(場合によっては大きな)丸め誤差が発生します。デコーダのIDCT近似の最小許容精度は、ISO/IEC 23002-1で定義されています(2006年より前は、IEEE 1180 -1990で規定されていました)。

FDCT処理は、圧縮されていない8×8ブロックのピクセル値(輝度値または色差値)を、8×8のインデックス付き周波数係数値配列に変換します。これらの係数の1つは(統計的に分散が大きい)「DC係数」で、8×8ブロック全体の平均値を表します。残りの63個の係数は統計的に小さい「AC係数」で、正または負の値を持ち、それぞれがDC係数で表される平坦なブロック値からの正弦波偏差を表します。

エンコードされた8×8 FDCTブロックの例:

[415306127562020422611013795477772529105649123415106221271342233832621421002134100141012]{\displaystyle {\begin{bmatrix}-415&-30&-61&27&56&-20&-2&0\\4&-22&-61&10&13&-7&-9&5\\-47&7&77&-25&-29&10&5&-6\\-49&12&34&-15&-10&6&2&2\\12&-7&-13&-4&-2&2&-3&3\\-8&3&2&-6&-2&1&4&2\\-1&0&0&-2&-1&-3&4&-1\\0&0&-1&-4&-1&0&1&2\end{bmatrix}}}

DC係数値はブロック間で統計的に相関しているため、DPCM符号化方式を用いて圧縮されます。最終的なビットストリームでは、各DC係数値とその左隣のブロックのDC係数値との差(小さい方)のみを表現すれば済みます。

さらに、DCT を適用して実行される周波数変換では、統計的な相関除去機能が提供されるため、量子化を適用する前に、信号をより少ない高振幅値に効率的に集中させることができます (以下を参照)。

量子化

量子化とは、本質的には、信号をより大きなステップ サイズで分割し、整数値に丸める (つまり、最も近い倍数を見つけて、余りを破棄する) ことによって、信号の精度を下げるプロセスです。

フレームレベルの量子化器は0から31までの数値(ただし、エンコーダーは通常、極端な値の一部を省略または無効化します)で、特定のフレームからどの程度の情報を削除するかを決定します。フレームレベルの量子化器は通常、ユーザーが指定した特定のビットレートを維持するためにエンコーダーによって動的に選択されるか、(あまり一般的ではありませんが)ユーザーが直接指定します。

「量子化マトリックス」とは、0から255までの64個の数値からなる文字列で、エンコーダーに各視覚情報の相対的な重要度(重要でないかどうか)を伝えます。マトリックス内の各数値は、ビデオ画像の特定の周波数成分に対応します。

量子化行列の例:

[1611101624405161121214192658605514131624405769561417222951878062182237566810910377243555648110411392496478871031211201017292959811210010399]{\displaystyle {\begin{bmatrix}16&11&10&16&24&40&51&61\\12&12&14&19&26&58&60&55\\14&13&16&24&40&57&69&56\\14&17&22&29&51&87&80&62\\18&22&37&56&68&109&103&77\\24&35&55&64&81&104&113&92\\49&64&78&87&103&121&120&101\\72&92&95&98&112&100&103&99\end{bmatrix}}}

量子化は、DCTブロックの64個の周波数値をそれぞれフレームレベルの量子化器で割り、さらに量子化マトリックス内の対応する値で割ることによって行われます。最終的に、結果は切り捨てられます。これにより、画像の一部の周波数成分の情報が大幅に削減されるか、完全に除去されます。通常、高周波情報は視覚的にそれほど重要ではないため、高周波情報はより強力に量子化(大幅に削減)されます。MPEG-1では、実際には2つの別々の量子化マトリックスが使用されています。1つはイントラブロック(Iブロック)用、もう1つはインターブロック(PブロックとBブロック)用です。これにより、異なるブロックタイプの量子化を独立して実行でき、より効率的に処理できます。[ 3 ]

この量子化プロセスでは通常、多数のAC 係数がゼロに削減されます (スパースデータと呼ばれます)。これにより、次のステップでエントロピー コーディング (ロスレス圧縮) によってより効率的に圧縮できるようになります。

量子化されたDCTブロックの例:

[26362210002411000315110004121000010000000000000000000000000000000]{\displaystyle {\begin{bmatrix}-26&-3&-6&2&2&-1&0&0\\0&-2&-4&1&1&0&0&0\\-3&1&5&-1&-1&0&0&0\\-4&1&2&-1&0&0&0&0\\1&0&0&0&0&0&0&0\\0&0&0&0&0&0&0&0\\0&0&0&0&0&0&0&0\\0&0&0&0&0&0&0&0\end{bmatrix}}}

量子化は大量のデータを削減するため、MPEG-1ビデオエンコードにおける主要な非可逆処理ステップです。また、これはブロックノイズカラーバンディングノイズリンギング変色など、 MPEG-1ビデオ圧縮アーティファクトの主な原因でもあります。これは、ビデオが不十分なビットレートでエンコードされた場合に発生し、エンコーダはビデオの大部分で フレームレベルの高量子化(強い量子化)を強制的に使用する必要があります。

エントロピー符号化

MPEG-1ビデオのエンコードにおけるいくつかのステップはロスレスです。つまり、デコード時に元の値と全く同じ値に変換されます。これらのロスレスデータ圧縮ステップは、量子化とは異なり、ノイズを追加したり、コンテンツを変更したりしないため、ノイズレス符号化と呼ばれることもあります。[ 47 ]ロスレス圧縮は冗長性を可能な限り排除することを目的としているため、情報理論の分野ではエントロピー符号化として知られています。

量子化されたDCTブロックの係数は、右下に向かってゼロに近づく傾向があります。DCTブロックを左上からジグザグにスキャンし、ランレングス符号化技術を用いることで、最大限の圧縮率を実現できます。

DC 係数と動きベクトルはDPCMでエンコードされます。

ランレングス符号化(RLE)は、繰り返しを圧縮するシンプルな手法です。文字列の長さに関わらず、連続する文字列を数バイトに置き換えることができます。その際、繰り返される値とその回数を記録します。例えば、「five nines(ファイブ・ナイン)」と言った場合、それが99999という数字であることがわかります。

RLEは量子化後に特に効果的です。AC係数のかなりの数がゼロになり(スパースデータと呼ばれる)、わずか数バイトで表現できるためです。これは、ランレングスとラン終了文字を符号化する 特別な2次元ハフマンテーブルに格納されます。

ハフマン符号化は、エントロピー符号化の中でも非常に普及しており、比較的シンプルな手法です。MPEG-1ビデオでは、データサイズを削減するためにハフマン符号化が用いられています。データは分析され、頻繁に繰り返される文字列が検索されます。これらの文字列は特別なテーブルに格納され、最も頻繁に繰り返されるデータには最短のコードが割り当てられます。これにより、この圧縮方法ではデータサイズが可能な限り小さく抑えられます。[ 47 ]テーブルが構築されると、データ内のこれらの文字列は、テーブル内の適切なエントリを参照する(はるかに短い)コードに置き換えられます。デコーダーはこのプロセスを逆に実行することで元のデータを生成します。

これはビデオ エンコード プロセスの最終ステップであるため、ハフマン コーディングの結果はMPEG-1 ビデオ「ビット ストリーム」と呼ばれます。

特定のアプリケーション向けのGOP構成

I フレームは、フレーム内に完全なフレーム情報を格納するため、ランダム アクセスに適しています。P フレームは、前のフレーム (I または P) を基準とした動きベクトルを使用して圧縮を行います。B フレームは最大の圧縮率を実現しますが、計算には前のフレームと次のフレームが必要です。そのため、B フレームの処理には、デコード側でより多くのバッファが必要です。これらの要素に基づいて、ピクチャ グループ(GOP) の構成を選択する必要があります。I フレームのみのシーケンスは圧縮率が最も低くなりますが、ランダム アクセス、FF/FR、編集機能の場合には便利です。I フレームと P フレームのシーケンスは中程度の圧縮率を実現しますが、ある程度のランダム アクセス、FF/FR 機能が追加されます。I フレーム、P フレーム、および B フレームのシーケンスは圧縮率が非常に高くなりますが、コーディング/デコーディングの遅延も大幅に増加します。そのため、このような構成は、ビデオ電話やビデオ会議アプリケーションには適していません。

Iフレームの典型的なデータレートは1ピクセルあたり1ビットですが、Pフレームの場合は1ピクセルあたり0.1ビット、Bフレームの場合は1ピクセルあたり0.015ビットです。[ 56 ]

パート3:オーディオ

MPEG-1 標準のパート 3 はオーディオをカバーし、ISO/IEC-11172-3 で定義されています。

MPEG-1オーディオは、心理音響学を活用して、オーディオストリームに必要なデータレートを大幅に削減します。人間の耳では聞き取れないと思われる音声の特定の部分(耳の感度が限られている周波数帯にあるか、他の(通常はより大きな)音にマスクされている)を削減または完全に破棄します。[ 57 ]

チャネルエンコードモード:

サンプリングレート:

  • 32000 Hz
  • 44100 Hz
  • 48000 Hz

ビットレート:

  • レイヤーI: 32、64、96、128、160、192、224、256、288、320、352、384、416、448 kbit/s [ 58 ]
  • レイヤーII: 32、48、56、64、80、96、112、128、160、192、224、256、320、384 kbit/s
  • レイヤーIII: 32、40、48、56、64、80、96、112、128、160、192、224、256、320 kbit/s

MPEG-1オーディオは3つのレイヤーに分かれています。上位レイヤーはそれぞれ計算が複雑になり、一般的に低いビットレートでは前のレイヤーよりも効率が高くなります。[ 16 ]上位レイヤーは下位レイヤーで実装された技術を再利用するため、各レイヤーはある程度の下位互換性があります。「フル」レイヤーIIデコーダーはレイヤーIオーディオも再生できますが、レイヤーIIIオーディオは再生できません。ただし、すべての上位レベルのプレーヤーが「フル」であるとは限りません。[ 57 ]

レイヤーI

MPEG-1オーディオレイヤーIは、MPEG-1オーディオレイヤーIIの簡易版です。[ 18 ]レイヤーIは、非常に低い遅延とより細かい解像度のために、より小さな384サンプルのフレームサイズを使用します。[ 26 ]これは、テレビ会議やスタジオ編集などのアプリケーションに有利です。レイヤーIIよりも複雑さが低いため、 1990年頃に利用可能なハードウェアでのリアルタイムエンコードが容易になります[ 47 ]

レイヤーIは当時あまり採用されておらず、最も有名なのはフィリップス廃盤になったデジタルコンパクトカセットで384kbit/sのビットレートで使用されていたことです。[ 2 ]導入以来、デジタル処理のパフォーマンスが大幅に向上したため、レイヤーIはすぐに不要になり、時代遅れになりました。

レイヤー I オーディオ ファイルは通常、拡張子「.mp1」を使用しますが、「.m1a」を使用する場合もあります。

レイヤーII

MPEG-1 Audio Layer II(MP2の最初のバージョン、しばしば非公式にMUSICAMと呼ばれる)[ 57 ]は、ステレオサウンドで約192kbit/sの高品質を提供するために設計された非可逆オーディオ形式です。 [ 59 ] MP2オーディオのデコードは、MP3、AACなど に比べて計算が簡単です。

歴史/MUSICAM

MPEG-1 Audio Layer IIは、デジタルオーディオ放送の開発のためのEUREKA 147汎ヨーロッパ政府間研究開発イニシアチブの一環として、 Centre commun d'études de télévision et télécommunications (CCETT)、PhilipsInstitut für Rundfunktechnik (IRT/CNET) [ 16 ] [ 18 ] [ 60 ]によって開発されたMUSICAM (Masking pattern adapted Universal Subband Integrated Coding And Multiplexing)オーディオコーデックから派生したものです。

MPEG-1 Audioの主要機能のほとんどは、フィルタバンク、時間領域処理、オーディオフレームサイズなど、MUSICAMから直接継承されています。しかしながら、改良が加えられた結果、実際のMUSICAMアルゴリズムは最終的なMPEG-1 Audio Layer II規格には採用されませんでした。Layer IIを指す際に「MUSICAM」という用語が広く使用されていますが、これは全くの誤りであり、技術的および法的理由の両方から推奨されません。[ 57 ]

技術的な詳細

MP2は時間領域エンコーダです。時間周波数マッピングには、低遅延の32サブバンド多相フィルタバンクを使用します。エイリアシングを防ぐために、帯域が重複(ポリフェーズ化)されています。 [ 61 ]心理音響モデルは、聴覚マスキング同時マスキング効果、そして絶対聴力閾値(ATH)の原理に基づいています。レイヤーIIのフレームサイズは1152サンプル(係数)に固定されています。

時間領域とは、オーディオ波形の短く離散的なサンプル/チャンクに対して分析と量子化を行う方法を指します。エンコード前に少数のサンプルのみを分析するため、遅延が少なくなります。一方、周波数領域エンコード(MP3など)では、エンコード後のオーディオをどのように変換・出力するかを決定する前に、はるかに多くのサンプルを分析する必要があります。また、複雑でランダムかつ過渡的なインパルス(打楽器や拍手など)に対しても高いパフォーマンスを発揮し、プリエコーなどのアーティファクトを回避できます。

32サブバンドフィルタバンクは、オーディオの等幅周波数帯域/セグメント(オーディオのサンプリング周波数に応じて約700Hz)ごとに1つずつ、32個の振幅係数を返します。エンコーダは心理音響モデルを用いて、どのサブバンドにそれほど重要でないオーディオ情報が含まれているかを判断し、量子化が聞こえない、あるいは少なくとも目立たないサブバンドを特定します。[ 47 ]

オーディオ波形サンプルのFFT分析の例

心理音響モデルは、1024ポイントの高速フーリエ変換(FFT)を用いて適用されます。フレームあたり1152サンプルのうち、周波数範囲の上限と下限の64サンプルは、この分析では無視されます。これらのサンプルは、結果を変えるほど重要ではないと考えられます。心理音響モデルは、経験的に決定されたマスキングモデルを用いて、どのサブバンドがマスキング閾値に大きく寄与するか、また、各サブバンドが知覚されずにどれだけの量子化ノイズを含めることができるかを決定します。絶対可聴閾値(ATH)を下回る音はすべて完全に破棄されます。そして、利用可能なビットが各サブバンドに割り当てられます。[ 57 ] [ 61 ]

一般的に、サブバンドに含まれる音が小さい(係数が小さい)場合、隣接する(つまり周波数が近い)サブバンドに含まれる音が大きい(係数が大きい)場合よりも、サブバンドの重要性は低くなります。また、「ノイズ」成分は「音色」成分よりもマスキング効果が大きい傾向があります。[ 60 ]

重要度の低いサブバンドは、量子化によって精度が低下します。これは基本的に、周波数範囲(係数の振幅)を圧縮すること、つまりノイズフロアを上げることを意味します。次に、デコーダが各サブバンドを適切な周波数範囲に再拡張するために使用する増幅係数を計算します。[ 62 ] [ 63 ]

レイヤーIIは、ジョイントステレオの一種であるインテンシティステレオコーディングをオプションで使用できます。これは、両チャンネルの6kHz以上の周波数帯域が1つの単一(モノラル)チャンネルに合成/ダウンミックスされることを意味しますが、各チャンネルの相対的なインテンシティ(音量、振幅)に関する「サイドチャンネル」情報は保持され、ビットストリームに個別にエンコードされます。再生時には、単一チャンネルが左右のスピーカーから再生され、各チャンネルにインテンシティ情報が適用されることで、ステレオサウンドのような錯覚が生まれます。[ 47 ] [ 60 ]この知覚的トリックは「ステレオイレレバンシー」として知られています。これにより、忠実度をほとんど損なうことなくオーディオビットレートをさらに削減できますが、高音質(透明度)が得られないため、通常、高ビットレートでは使用されません。[ 47 ] [ 61 ] [ 64 ] [ 65 ]

品質

専門家による主観的オーディオテストは、これまで実装された中で最も厳しい条件下で行われ、MP2 は、最も初期のリファレンス実装を使用した16 ビット 44.1 kHz のCD オーディオで 256 kbit/s の透過的なオーディオ圧縮を提供することが示されています (最近のエンコーダーはおそらくさらに優れたパフォーマンスを発揮するはずです)。 [ 2 ] [ 60 ] [ 61 ] [ 66 ] CD オーディオの (およそ) 1:6 の圧縮率は、知覚エントロピーの推定上限である1:8 をわずかに上回る程度に非常に近いため、特に印象的です。[ 67 ] [ 68 ]知覚できる情報をある程度破棄しなければ、これよりはるかに高い圧縮率を達成することは不可能です。

MP2は、カスタネット、シンフォニックオーケストラ、男声・女声、特に複雑でエネルギーの高いトランジェント(インパルス)である打楽器の音(トライアングル、グロッケンシュピール、観客の拍手)などの重要なオーディオ素材に対する特に高いオーディオコーディングパフォーマンスのため、非可逆オーディオコーディング規格として好まれ続けています。[ 26 ]最近のテストでは、 MPEGマルチチャンネル(MP2ベース)は、劣ったマトリックスモード(下位互換性のため)によって妥協しているにもかかわらず、[ 2 ] [ 61 ]ドルビーデジタル(AC-3)やアドバンスドオーディオコーディング(AAC)などのはるかに新しいオーディオコーデックよりもわずかに低いレート(ほとんどが誤差範囲内ですが、観客の拍手など、いくつかのケースで大幅に優れています)であることが示されています。[ 69 ] [ 70 ]これが、MP2オーディオが広く使用され続けている理由の1つです。しかし、MPEG-2 AACステレオ検証テストでは全く異なる結論に達し、AACは半分のビットレートでMP2よりも優れたパフォーマンスを提供することが示されました。[ 71 ]以前のテストと後のテストの両方でこの差が生じた理由は明らかではありませんが、奇妙なことに、後者のテストでは拍手が目立って見られません。

レイヤー II オーディオ ファイルは通常、拡張子「.mp2」を使用しますが、「.m2a」という場合もあります。

レイヤーIII

MPEG-1 Audio Layer III ( MP3の最初のバージョン) は、シングル チャネル ( BRI ) ISDNリンク上のモノラルオーディオの場合は約 64 kbit/s 、ステレオ サウンドの場合は 128 kbit/s で許容できる品質を提供するように設計された非可逆オーディオ形式です。

歴史/ASPEC

ボン・ドイツ博物館のASPEC 91 、エンコーダ(下)とデコーダ付き

MPEG-1オーディオレイヤーIIIは、デジタル音声放送の開発のための汎欧州政府間研究開発イニシアチブ「EUREKA 147」の一環としてフラウンホーファー研究所が開発した適応スペクトル知覚エントロピー符号化(ASPEC)コーデックから派生したものです。ASPECはレイヤーIIモデル(フレームサイズ、フィルタバンク、FFTなど)に適合するように改良され、レイヤーIIIとなりました。[ 18 ]

ASPEC自体は、EF Schroederによる多重適応スペクトル音声符号化(MSC) 、エアランゲン・ニュルンベルク大学のKarlheinz Brandenburg博士論文の周波数領域における最適符号化(OCF)、AT&Tベル研究所JD Johnstonによる知覚変換符号化(PXFM)、および放送技術研究所(IRT/CNET)のY. MahieuxJ. Petitによる音声信号の変換符号化に基づいています。[ 72 ]

技術的な詳細

MP3は周波数領域オーディオ変換エンコーダです。一部の下位層機能を利用していますが、MP3はMP2とは大きく異なります。

MP3はMP2と同様に1152サンプルで動作しますが、周波数領域(MDCT)処理と量子化を効果的に行うには、複数のフレームを解析する必要があります。MP3は可変ビットレート(VBR)エンコードを可能にするためにビットバッファを使用し、1152サンプルサイズの出力フレームを維持しながら可変数のサンプルを出力します。これにより出力までの遅延が大幅に長くなり、編集などの処理が必要なスタジオアプリケーションにはMP3は不向きと考えられています。[ 61 ]

MP3は32サブバンド多相フィルタバンクの恩恵を受けず、代わりに各出力に18ポイントのMDCT変換を使用してデータを576の周波数成分に分割し、周波数領域で処理します。[ 60 ]この追加の粒度により、MP3はより細かい心理音響モデルを持ち、各バンドに適切な量子化をより慎重に適用できるため、低ビットレートのパフォーマンスが大幅に向上します。

周波数領域処理にも制限があり、時間分解能はレイヤー II より 12 倍、つまり 36 倍悪くなります。これにより、打楽器などの過渡音や、より大きなウィンドウに広がるその他の高周波イベントによって、量子化アーティファクトが発生します。その結果、聞き取れるスミアやプリエコーが発生します。[ 61 ] MP3 はプリエコー検出ルーチンと VBR エンコーディングを使用して、難しいパッセージで一時的にビットレートを上げることでこの影響を軽減します。また、通常の 36 サンプルの量子化ウィンドウと、代わりに 3 倍の短い 12 サンプル ウィンドウを切り替えることで、量子化アーティファクトの時間的長さを短縮することもできます。[ 61 ]しかし、最も深刻なアーティファクトを回避するのに十分な MP3 の時間応答を実現するためにかなり小さなウィンドウ サイズを選択すると、MP3 は定常の音色成分の周波数領域圧縮の効率が大幅に低下します。

レイヤーIIに適合させるために、時間領域(フィルタバンク)と周波数領域(MDCT)のハイブリッドモデルを強制的に使用することは、処理時間の浪費につながり、エイリアシングアーティファクトの発生によって音質の低下を招きます。MP3には、この問題を隠すためのエイリアシングキャンセル段がありますが、実際には周波数領域のエネルギーが生成され、これをオーディオにエンコードする必要があります。このエネルギーは、ほとんどの人の聴力が限られている周波数帯域の上限まで押し上げられ、歪みが聞き取りにくくなることを期待しています。

レイヤーIIの1024ポイントFFTでは、すべてのサンプルを完全にカバーできず、量子化係数を決定する必要があるMP3サブバンドの一部が省略されてしまいます。MP3では、スペクトル推定に2回のFFT解析パスを使用し、グローバルマスキング閾値と個別マスキング閾値を計算します。これにより、1152サンプルすべてをカバーできます。2回のパスのうち、最も難しいオーディオを扱う、よりクリティカルなパスのグローバルマスキング閾値レベルを使用します。

MP3は、レイヤーIIのインテンシティエンコード方式によるジョイントステレオに加え、ミドル/サイド(ミッド/サイド、m/s、MS、マトリクス)ジョイントステレオも使用できます。ミッド/サイドステレオでは、両チャンネルの特定の周波数帯域が単一のモノラルチャンネル(ミドル、ミッド、L+R)に統合され、左右チャンネルの音の違いは別のチャンネル(サイド、LR)として保存されます。インテンシティステレオとは異なり、この処理ではオーディオ情報が一切失われません。ただし、量子化と組み合わせると、アーティファクトが強調される可能性があります。

左右のチャンネルの差が小さい場合、サイドチャンネルも小さくなり、最大50%のビットレート削減とそれに伴う音質向上が期待できます。左右のチャンネルの差が大きい場合は、ミッド/サイド・ジョイント・ステレオではメリットがないため、標準的な(左右独立型)ステレオエンコードが推奨されます。MP3エンコーダは、フレームごとにm/sステレオとフルステレオを切り替えることができます。[ 60 ] [ 65 ] [ 73 ]

レイヤーIおよびIIとは異なり、MP3は可変長ハフマン符号化(知覚的符号化の後)を使用して、品質を損なうことなくビットレートをさらに削減します。[ 57 ] [ 61 ]

品質

MP3のよりきめ細やかで選択的な量子化は、低ビットレートにおいてMP2よりも顕著に優れていることが証明されています。MP3は、レイヤーIIとほぼ同等の音質を、約15%低いビットレートで提供できます。[ 70 ] [ 71 ] 128 kbit/sはMP3の「スイートスポット」と考えられており、ほとんどの音楽で一般的に許容できる品質のステレオサウンドを提供し、ビットレートをさらに上げても音質の向上は減少します。また、MP3は、忠実な再生が不可能なほど低いビットレートで使用された場合、レイヤーIIよりも目立たないアーティファクトを呈すると考えられています。

レイヤー III オーディオ ファイルでは、拡張子「.mp3」が使用されます。

MPEG-2オーディオ拡張

MPEG -2規格にはMPEG-1オーディオに対するいくつかの拡張機能が含まれています。[ 61 ]これらはMPEG-2 BCと呼ばれ、MPEG-1オーディオと下位互換性があります。[ 74 ] [ 75 ] [ 76 ] [ 77 ] MPEG-2オーディオはISO/IEC 13818-3で定義されています。

これらのサンプリングレートは、MPEG-1 Audio用に元々定義されたサンプリングレートのちょうど半分です。これらは、低ビットレートでオーディオをエンコードする際に、より高品質なサウンドを維持するために導入されました。[ 25 ]さらに低いビットレートが導入されたのは、MPEG-1 Audioが既存の( 1994年頃)超低ビットレート(つまり音声)オーディオコーデックよりも高い品質を提供できることがテストで示されたためです。[ 78 ]

パート4: 適合性テスト

MPEG-1 標準のパート 4 は適合性テストをカバーしており、ISO/IEC-11172-4 で定義されています。

適合性: 適合性をテストするための手順。

MPEG-1オーディオおよびビデオデコーダー、およびエンコーダーによって生成されたビットストリームの適合性をテストするための2セットのガイドラインと参照ビットストリームを提供します。[ 16 ] [ 23 ]

パート5:リファレンスソフトウェア

MPEG-1 標準のパート 5 には参照ソフトウェアが含まれており、ISO/IEC TR 11172–5 で定義されています。

シミュレーション: リファレンス ソフトウェア。

オーディオとビデオのエンコードとデコード、および多重化と多重化解除のためのCリファレンスコード。 [ 16 ] [ 23 ]

これには、 LAMETooLAMEが元々ベースとしていた ISO Dist10オーディオ エンコーダー コードが含まれます。

ファイル拡張子

.mpg は、MPEG-1 またはMPEG-2オーディオおよびビデオ圧縮方式のファイル拡張子の一つです。MPEG-1 Part 2 のビデオは現在では珍しく、この拡張子は通常、 MPEG プログラムストリーム(MPEG-1 および MPEG-2 で定義)またはMPEG トランスポートストリーム(MPEG-2 で定義)を指します。.m2ts などの拡張子は、コンテナ(この場合は MPEG-2 TS)を正確に指定するために使用されますが、MPEG-1 メディアとはあまり関係がありません。

.mp3は、 MP3オーディオ(通常はMPEG-1オーディオ、場合によってはMPEG-2オーディオ)を含むファイルに最もよく使われる拡張子です。MP3ファイルは通常、生のオーディオのストリームです。MP3ファイルにタグを付ける従来の方法は、各フレームの「ガベージ」セグメントにデータを書き込むことです。このセグメントはメディア情報を保持しますが、プレーヤーによって破棄されます。これは、生の.AACファイルのタグ付け方法と多くの点で似ています(ただし、iTunesなど、現在ではあまりサポートされていません)。

.mpg は通常、 MPEG-2 Part 7 コンテナ内の生のAACや AAC には適用されますが、通常は適用されません。.aac 拡張子は通常、これらのオーディオファイルを表します。

参照

実装
  • LibavcodecにはMPEG-1/2ビデオ/オーディオエンコーダとデコーダが含まれています
  • Mjpegtools Archived 2008-04-20 at the Wayback Machine MPEG-1/2 ビデオ/オーディオ エンコーダ
  • TooLAME高品質の MPEG-1 Audio Layer II エンコーダー。
  • LAME高品質の MP3 オーディオ エンコーダー。
  • Musepack元々は MPEG-1 Audio Layer II をベースにした形式ですが、現在は互換性がありません。

参考文献

  1. ^ a b Patel K, Smith BC, Rowe LA (1993-09-01). 「ソフトウェアMPEGビデオデコーダの性能」 .第1回ACM国際マルチメディア会議 - MULTIMEDIA '93 議事録. ACMマルチメディア. ニューヨーク市: Association for Computing Machinery. pp.  75– 82. doi : 10.1145/166266.166274 . ISBN 978-0-89791-596-0. S2CID  3773268 . 2021年12月15日時点のオリジナルよりアーカイブ2021年12月15日閲覧。この論文の参考文献 3 は、1991 年 12 月 6 日の ISO/IEC 11172 規格の委員会草案です。
  2. ^ a b c d e f Adler, Mark; Popp, Harald; Hjerde, Morten (1996年11月9日), MPEG-FAQ: マルチメディア圧縮 [1/9] , faqs.org, 2017年1月4日時点のオリジナルよりアーカイブ, 2016年11月11取得
  3. ^ a b c d e f g h Le Gall, Didier (1991年4月), MPEG: a video compression standard for multimedia applications (PDF) , Communications of the ACM , archived (PDF) from the original on 2017-01-27 , retrieved 2016-11-11
  4. ^ Chiariglione, Leonardo (1989年10月21日)、Kurihama 89 press releaseISO / IEC2010年8月5日時点のオリジナルよりアーカイブ2008年4月9日取得
  5. ^ ISO/IEC JTC 1/SC 29 (2009年10月30日). 「SC 29/WG 11に割り当てられた作業計画、MPEG-1(最大約1.5Mbit/sのデジタル記憶媒体における動画および関連音声の符号化)」 。 2013年12月31日時点のオリジナルからアーカイブ2009年11月10日閲覧。{{cite web}}: CS1 maint: numeric names: authors list (link)
  6. ^ ISO. 「ISO/IEC 11172-1:1993 – 情報技術 – 約1.5 Mbit/sまでのデジタル記憶媒体における動画及び関連音声の符号化 – パート1:システム」2016年11月12日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧
  7. ^ MPEG. 「MPEGについて – 実績」 . chiariglione.org. 2008年7月8日時点のオリジナルよりアーカイブ。 2009年10月31日閲覧
  8. ^ MPEG. 「Terms of Reference」 . chiariglione.org. 2010年2月21日時点のオリジナルよりアーカイブ。 2009年10月31日閲覧
  9. ^ a b MPEG. 「MPEG規格 - 開発済みまたは開発中の規格の全リスト」 chiariglione.org. 2010年4月20日時点のオリジナルよりアーカイブ。 2009年10月31日閲覧
  10. ^ Lea, William (1994).ビデオ・オン・デマンド:研究論文94/68 .下院図書館. 2019年9月20日時点のオリジナルよりアーカイブ。 2019年9月20日閲覧
  11. ^ 「ビデオ圧縮の歴史」。ITU -T。ISO /IEC MPEGとITU-T VCEGの合同ビデオチーム(JVT)(ISO/IEC JTC1/SC29/WG11およびITU-T SG16 Q.6)。2002年7月。pp. 11, 24–9 , 33, 40–1 , 53–62021年3月8日時点のオリジナルよりアーカイブ。 2019年11月3日閲覧
  12. ^ Ghanbari, Mohammed (2003).標準コーデック:画像圧縮から高度なビデオ符号化まで.工学技術研究所. pp.  1– 2. ISBN 9780852967102
  13. ^ 「ビデオファイル形式の歴史インフォグラフィック」 RealNetworks 2012年4月22日。2018年6月29日時点のオリジナルよりアーカイブ。 2019年8月5日閲覧
  14. ^ Hans Geog Musmann, Genesis of the MP3 Audio Coding Standard (PDF)2012年1月17日時点のオリジナル(PDF)からアーカイブ、 2011年7月26日取得
  15. ^ a b c d e f g h i j k l Fogg, Chad (1996年4月2日), MPEG-2 FAQ (アーカイブウェブサイト) , University of California, Berkeley , 2008年6月16日時点のオリジナルよりアーカイブ, 2016年11月11取得
  16. ^ Chiariglione, Leonardo (2001年3月)、Open source in MPEGLinux Journal2011年7月25日時点のオリジナルよりアーカイブ、 2008年4月9日取得
  17. ^ a b c d Chiariglione, Leonardo; Le Gall, Didier; Musmann, Hans-Georg; Simon, Allen (1990年9月), Press Release – Status report of ISO MPEG , ISO / IEC , archived from the original on 2010-02-14 , retrieved 2008-04-09
  18. ^会議ISO / IEC2010年2月10日アーカイブ、 2008年4月9日取得
  19. ^ a b「MPEG-FAQ、バージョン3.1」 。 2009年7月23日時点のオリジナルからのアーカイブ2008年10月12日閲覧。Q . では、MPEGドラフトのような文書はどうすれば入手できますか?A. MPEGはISO規格のドラフトです。正確な名称はISO CD 11172です。[...] 国の標準化団体(例えば米国ANSI)に注文するか、OMNICOMなどの企業から購入することができます。[...]
  20. ^ 「MPEGプレスリリース」(プレスリリース)ISO/IEC JTC1/SC29/WG11. 1992年11月6日. 2010年8月12日時点のオリジナルよりアーカイブ2018年5月7日閲覧。
  21. ^ 「抄録ページ #101」 。 2008年10月6日時点のオリジナルよりアーカイブ2008年7月13日閲覧。「BMRC」 。 2008年6月12日時点のオリジナルよりアーカイブ2008年7月13日閲覧。連続メディアプレーヤー、ローレンス・A・ロウとブライアン・C・スミス、デジタルオーディオとビデオのためのネットワークとOSのサポートに関する第3回国際ワークショップ議事録、カリフォルニア州サンディエゴ(1992年11月)
  22. ^ a b c成果ISO / IEC2008年7月8日アーカイブ、 2008年4月3日取得
  23. ^ Chiariglione, Leonardo (1992年11月6日)、MPEG Press Release、ロンドン、1992年11月6日ISO / IEC 、 2010年8月12日時点のオリジナルよりアーカイブ、 2008年4月9日取得
  24. ^ a b c Wallace, Greg (1993年4月2日)、プレスリリースISO / IEC2010年8月6日時点のオリジナルよりアーカイブ2008年4月9日取得
  25. ^ a b c d Popp, Harald; Hjerde, Morten (1996年11月9日), MPEG-FAQ: マルチメディア圧縮 [2/9] , faqs.org, 2017年1月4日時点のオリジナルよりアーカイブ, 2016年11月11日取得
  26. ^ “INTERNATIONAL ORGANISATION FOR STANDARDISATION ORGANISATION INTERNATIONALE DE NORMALISATION ISO” . 2010年7月26日.オリジナルより2010年7月26日時点のアーカイブ。 2018年5月7日閲覧
  27. ^ ISO/IEC JTC 1/SC 29 (2010-07-17). 「MPEG-1 (約1.5 Mbit/sまでのデジタル記憶媒体における動画および関連音声の符号化)」 。 2013年12月31日時点のオリジナルよりアーカイブ2010年7月18日閲覧。{{cite web}}: CS1 maint: numeric names: authors list (link)
  28. ^ ISO. 「ISO/IEC 11172-1:1993 – 情報技術 – 約1.5 Mbit/sまでのデジタル記憶媒体における動画及び関連音声の符号化 – パート1:システム」2017年8月30日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧
  29. ^ ISO. 「ISO/IEC 11172-2:1993 – 情報技術 – 約1.5 Mbit/sまでのデジタル記憶媒体における動画及び関連音声の符号化 – パート2:ビデオ」2017年8月30日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧
  30. ^ ISO. 「ISO/IEC 11172-3:1993 – 情報技術 – 約1.5 Mbit/sまでのデジタル記憶媒体における動画及び関連音声の符号化 – パート3:音声」2017年5月15日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧
  31. ^ ISO. 「ISO/IEC 11172-4:1995 – 情報技術 – 約1.5 Mbit/sまでのデジタル記憶媒体における動画及び関連音声の符号化 – パート4:コンプライアンス試験」2017年8月30日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧
  32. ^ ISO. 「ISO/IEC TR 11172-5:1998 – 情報技術 – 約1.5 Mbit/sまでのデジタル記憶媒体における動画及び関連音声の符号化 – パート5:ソフトウェアシミュレーション」2017年8月30日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧
  33. ^ Ozer, Jan (2001年10月12日) 「最適なビデオ解像度の選択:MPEG-2プレーヤー市場extremetech.com2011年6月7日時点のオリジナルよりアーカイブ、 2016年11月11日取得
  34. ^ MPEG 1と2の比較、2012年2月10日にオリジナルからアーカイブ、 2016年11月11日取得
  35. ^ MPEG 1 And 2 Compared、Pure Motion Ltd.、2003年、2005年12月14日時点のオリジナルよりアーカイブ、 2008年4月9日取得
  36. ^ Dave Singer (2007年11月9日). 「宿題] ビデオ(およびオーディオ)コーデックに関する議論の要約」 . 2016年12月21日時点のオリジナルよりアーカイブ2016年11月11日閲覧。
  37. ^ 「MPEG-1 ビデオコーディング (H.261)」米国議会図書館、デジタル保存。2014年10月21日。2017年1月11日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧
  38. ^ 「ISO規格と特許」2016年11月15日時点のオリジナルよりアーカイブ2016年11月11日閲覧。11172を検索
  39. ^ "archive.ph" . archive.ph . 2008年9月16日時点のオリジナルよりアーカイブ。 2023年1月21日閲覧{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  40. ^ "[gst-devel] MPEG-1 with Audio Layers 1&2プラグインはplugins-good(特許の観点から)に含まれるか?" SourceForge.net 2008年8月23日オリジナルより2014年2月2日アーカイブ。 2016年11月11日閲覧
  41. ^ "[whatwg] HTML5ビデオコーデック向けMPEG-1サブセット提案" . lists.whatwg.org . 2011年7月19日時点のオリジナルよりアーカイブ2022年1月11日閲覧。
  42. ^ http://patft1.uspto.gov/netacgi/nph-Parser?patentnumber=5214678 2012-07-13 archive.todayにアーカイブ「デジタル信号のサブバンド符号化を使用したデジタル伝送システム」 出願日: 1990 年 5 月 31 日、付与日: 1993 年 5 月 25 日、有効期限: 2010 年 5 月 31 日?
  43. ^ 「MP3(MPEG Layer III Audio Encoding)」www.loc.gov . 2023年4月21日。2017年8月14日時点のオリジナルよりアーカイブ。 2023年9月24日閲覧
  44. ^ "mp3" . Fraunhofer Institute for Integrated Circuits IIS . 2018年3月22日時点のオリジナルよりアーカイブ。 2018年5月7日閲覧
  45. ^ 「ISO規格と特許」 ISO 2019年5月24日時点のオリジナルよりアーカイブ2019年7月10日閲覧。
  46. ^ a b c d e f g Grill, B.; Quackenbush, S. (2005年10月), MPEG-1 Audio , ISO / IEC , 2010年4月30日時点のオリジナルよりアーカイブ
  47. ^ Chiariglione, Leonardo, MPEG-1 Systems , ISO / IEC , 2016年11月12日時点のオリジナルよりアーカイブ, 2016年11月11日取得
  48. ^ a b Pack Header2016年10月27日のオリジナルからアーカイブ、 2016年11月11日取得
  49. ^ Fimoff, Mark; Bretl, Wayne E. (1999年12月1日)、MPEG2 Tutorial2016年11月12日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧。
  50. ^ Fimoff, Mark; Bretl, Wayne E. (1999年12月1日) MPEG2 Tutorial2016年11月5日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧。
  51. ^ Fimoff, Mark; Bretl, Wayne E. (1999年12月1日) MPEG2 Tutorial2016年11月5日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧。
  52. ^ Fimoff, Mark; Bretl, Wayne E. (1999年12月1日)、MPEG2 Tutorial2016年11月12日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧。
  53. ^ Acharya, Soam; Smith, Brian (1998), Compressed Domain Transcoding of MPEGコーネル大学IEEEコンピュータ協会IEEE国際マルチメディアコンピューティングおよびシステム会議、p. 3、2011年2月23日のオリジナルからアーカイブ、 2016年11月11日取得– (賢い読み方が必要です:量子化行列が異なると書かれていますが、それらは単なるデフォルトであり、選択可能です)登録が必要です
  54. ^ a b c Wee, Susie J.; Vasudev, Bhaskaran; Liu, Sam (1997年3月13日)、「Transcoding MPEG Video Streams in the Compressed Domain」Hewlett-PackardCiteSeerX 10.1.1.24.633 、2007年8月17日のオリジナルからアーカイブ、 2016年11月11日取得 
  55. ^ "BMRC" . 2009年5月3日時点のオリジナルよりアーカイブ2009年5月3日閲覧。
  56. ^ a b c d e f Thom, D.; Purnhagen, H. (1998年10月)、MPEG Audio FAQ Version 9ISO / IEC2010年2月18日時点のオリジナルよりアーカイブ、 2016年11月11日取得
  57. ^ MPEG Audio Frame Header 、 2015年2月8日にオリジナルからアーカイブ、 2016年11月11日取得
  58. ^ 「オーディオ規格:MPEG-2 パート番号:3」2024年2月4日時点のオリジナルよりアーカイブ2024年2月7日閲覧。
  59. ^ a b c d e f Church, Steve, Perceptual Coding and MPEG Compression , NAB Engineering Handbook, Telos Systems , 2001-05-08にオリジナルからアーカイブ2008-04-09に取得
  60. ^ a b c d e f g h i j Pan, Davis (Summer 1995), A Tutorial on MPEG/Audio Compression (PDF) , IEEE MultiMedia Journal, p. 8, archived from the original (PDF) on 2004-09-19 , retrieved 2008-04-09
  61. ^ Smith, Brian (1996), A Survey of Compressed Domain Processing Techniques , Cornell University , p. 7, 2011-02-23のオリジナルからアーカイブ、 2008-04-09取得登録が必要です
  62. ^ Cheng, Mike, TwoLAME の心理音響モデル、twolame.org、2016年10月22日のオリジナルからアーカイブ、 2016年11月11日取得
  63. ^ Grill, B.; Quackenbush, S. (2005年10月), MPEG-1 Audio , 2008年4月27日時点のオリジナルよりアーカイブ, 2016年11月11日取得
  64. ^ a b Herre, Jurgen (2004年10月5日), From Joint Stereo to Spatial Audio Coding (PDF) , International Conference on Digital Audio Effects, p. 2, 2006年4月5日時点のオリジナル(PDF)からアーカイブ, 2008年4月17取得
  65. ^ C.Grewin、T.Ryden、「低ビットレートオーディオコーデックの主観評価」、第10回国際AES会議論文集、pp 91 - 102、ロンドン1991
  66. ^ J. Johnston、「ノイズマスキング基準を用いた知覚エントロピーの推定」、 Proc. ICASSP-88、pp. 2524-2527、1988年5月。
  67. ^ J. Johnston、「知覚ノイズ基準を用いたオーディオ信号の変換符号化」、 IEEE Journal on Select Areas in Communications、vol. 6、no. 2、pp. 314-323、1988年2月。
  68. ^ Wustenhagen 他「マルチチャンネルオーディオコーデックの主観的リスニングテスト」、AES 105 回大会論文 4813、サンフランシスコ 1998
  69. ^ a b B/MAEプロジェクトグループ(2007年9月)、EBUマルチチャンネルオーディオコーデックの評価(PDF)欧州放送連合オリジナル(PDF)から2008年10月30日にアーカイブ2008年4月9日取得
  70. ^ a b Meares, David; Watanabe, Kaoru; Scheirer, Eric (1998年2月), Report on the MPEG-2 AAC Stereo Verification Tests (PDF) , ISO / IEC , p. 18, archived from the original (PDF) on April 14, 2008 , retrieved 2016-11-11
  71. ^ Painter, Ted; Spanias, Andreas (2000年4月), Perceptual Coding of Digital Audio (Proceedings of the IEEE, VOL. 88, NO. 4) (PDF) , Proceedings of the IEEE , 2006年9月16日時点のオリジナル(PDF)からアーカイブ, 2016年11月11日取得
  72. ^ Amorim, Roberto (2006年9月19日), GPSYCHO - Mid/Side Stereo , LAME , 2016年12月16日時点のオリジナルよりアーカイブ。 2016年11月11日閲覧。
  73. ^ ISO (1998年10月). 「MPEG Audio FAQ Version 9 – MPEG-1 and MPEG-2 BC」 . ISO. 2010年2月18日時点のオリジナルよりアーカイブ2016年11月11日閲覧。
  74. ^ D. Thom、H. Purnhagen、およびMPEG Audioサブグループ(1998年10月)。「MPEG Audio FAQ バージョン9 - MPEG Audio」2011年8月7日時点のオリジナルよりアーカイブ2016年11月11日閲覧。{{cite web}}: CS1 maint: multiple names: authors list (link)
  75. ^ MPEG.ORG. 「AAC」 . 2007年8月31日時点のオリジナルよりアーカイブ2009年10月28日閲覧。
  76. ^ ISO (2006-01-15)、ISO/IEC 13818-7、第4版、パート7 – 高度オーディオ符号化 (AAC) (PDF)2009年3月6日にオリジナルからアーカイブ(PDF) 、 2016年11月11日取得
  77. ^ Chiariglione, Leonardo (1994年11月11日)、プレスリリースISO / IEC2010年8月8日時点のオリジナルよりアーカイブ2008年4月9日取得