ageha was here

◀PREV PTOP
◀ Think "Thoughts on Music" 表紙 MP4 faq▶
Download Day - Japanese

 2007/11/15を以て当ブログは更新を停止しました。
 記事は全てこのままですが、基本的に内容はOut of dateとお考え下さい。
 →Next

記事番号:197

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

△ETOP | ▲PTOP

原文:http://forum.doom9.org/showthread.php?s=&threadid=73022#post461587
 ※原文最終更新日:2005/06/19
  1. MPEG-4Part 2 のプロファイル
  2. Advanced SimpleProfile (ASP)
    1. Bフレーム/B-VOPS/双方向予測(符号化)
    2. 1/4ピクセル精度の動きサーチ (QPEL):
    3. グローバル動き補償 (GMC):
    4. MPEG量子化マトリクス / カスタム 量子化マトリクス:
    5. 適応的量子化:
  3. 入手可能なMPEG-4 ASP コデック
    1. XviD
    2. DivX5
    3. ffmpeg
    4. 3ivx
    5. Nero Digital
  4. ハードウェアにおけるMPEG-4 ASP -DivX/NeroDigital Certification / Private MPEG-4 Profiles
  5. その他の情報

ISO 14496-2 (Video) - Advanced Simple Profile (ASP)

 MPEG-4規格は幅広い動画符号化ツールを規格化しています。現在、最も広く使われているものはISO14496-2で定義されています。この規格がしばしばMPEG-4 "Part2"と呼ばれるのはこのためですが、ここでは次に説明する理由でMPEG-4 ASPと呼ぶ事にします。

MPEG-4Part 2 のプロファイル

 前述の通り、MPEG-4規格は幅広いアプリケーションで使われる事を狙っています。もちろん、目的によって必要な符号化ツールは異なります(非常に低いビットレートでストリーミングをする場合と、中〜高ビットレートでDVDのバックアップを作る時とでは、別の符号化ツールを使うことでしょう)。
 さまざまなニーズをカバーするために、MPEG-4規格は大量のプロファイルとレベルを定めています。それぞれのプロファイル/レベルは相互運用性や適合性の目安となるものです。ある特定のプロファイル/レベルに従っていれば、全ての製品が、たとえ他の会社の製品であっても、協調できるようにするためのものです。
 これらのプロファイル/レベルは使っても良い符号化ツールだけでなく、使っても良いビットレートの範囲、映像の解像度、フレームレートなども定めています。
 MPEG-4プロファイルの概要はここを見て下さい。

※訳注:ISO 14496-2規格はMPEGシリーズとしては最も巨大で理解困難なもの。
規格上は定義されているにも関わらず、どのプロファイル/レベルにも見当たらない符号化ツールが存在するとの指摘もある。 「国際標準規格」に自社特許を押し込めば、莫大な特許収入が期待できる、とは誰でも考える事だと思う。

Advanced SimpleProfile (ASP)

 DVDバックアップが目的なら、Advanced Simple Profile @ Level5 (ASP@L5) が最適でしょう。
 ASP@L5の最大解像度は720x576、最大フレームレートは30fpsで、B-Frames (B-VOPS)、QuarterPixelMotion Estimation (QPEL)、Global Motion Compensation(GMC、グローバル動き補償)、MPEG/CustomQuantizationなどの先進的な符号化ツールを使っても良い事になっています。一方、SimpleProfile(SP)では、最大解像度は352x288、最大フレームレートは15fpsに過ぎません。

※訳注:Apple-MPEG4はSPとされる。実際、上にある"先進的な符号化ツール"を使ったものは再生できない事がある。 解像度とfpsはレベルで規定されるので、上記以上のサイズ・フレームレートを受け付けるからといってApple-MPEG4が ASPであるという事にはならない。

 Advanced Simple Profileの符号化ツールで最も大事なものは以下の通り(SimpleProfileでは使えないもの):

Bフレーム/B-VOPS/双方向予測(符号化)

B-Frames/B-VOPS/Bi-directionalencoding/prediction
 Iフレーム/キーフレーム(完全な一枚絵で、他のフレームに依存しない)やPフレーム(自分より前のI/Pフレームから変更のある部分しかデータを持たないフレーム)とは異なり、Bフレームは自分の前後のI/Pフレームのデータを使って描画されます。BフレームはI/Pよりも大幅に小さくなるので、全体としては圧縮率と画質が向上します。

1/4ピクセル精度の動きサーチ (QPEL):

Quarter Pixel Motion SearchPrecision (QPEL):
基本的に、MPEG-4コデックの大半は、デフォルトでは、2つのフレーム間の動きを1/2ピクセル精度 (HalfPel)で検出します。
QuarterPelでは2つのフレーム間の動きを1/4ピクセル精度で検出します。精度は2倍だ!
実用上はQPELを使うとよりシャープな映像が得られます。きっと気に入ると思うよ(もちろん、個人的な意見ですが)。

※訳注:エンコードの過程で『(0,0)にあるマクロブロックが次のフレームでは(0.5,0.5)に移動したぞ!』みたいな計算が入る。 実際には(0.5,0.5)を画面に出すわけでは無くて(出せないし)、その後の計算に使う。

グローバル動き補償 (GMC):

Global MotionCompensation(GMC):
GMCはフレーム全体にわたる大きな動きが無いかどうかを探し、もしあれば、起動して、動きが同じ箇所にたくさんの モーションベクトルを使う代わりに、共通する一個のモーションベクトルを使います。
これはカメラのパン、ズーム、ローテーションがある場面でbitを節約できます(実際のGMCの性能は、使用するワープポイント (*の数?*)に依ります)。節約したbitはどこか他のところに使えます。例え ば、シャープネスの向上とか。

MPEG量子化マトリクス / カスタム 量子化マトリクス:

MPEG/CustomQuantization:
MPEG-4 SimpleProfileでは、h.263量子化マトリクスしか使えません。ASPではこの量子化マトリクスをカスタマイズできます
h.263方式では映像がソフトになります(1CD向き)。デフォルトのMPEG量子化マトリクスはより高いビットレートに向いており、 細かいディテイルを維持できます。
一般的なカスタム量子化マトリクスはhvs_good。これは低いビットレートにも向いています。他にも様々なものがあります。

※訳注:Xvidの経験上、MPEG量子化マトリクス(quant_type=mpeg)は必須でした。大抵のGUIにも設定項目があります。ビットレートの高い低いは映像の内容による部分が大きいのですが、640x480の場合の目安としては700〜900kbpsくらいだと思います。

適応的量子化:

Adaptive Quantization:
可変ビットレートエンコード(例えば2パス)をする場合、各フレーム毎に量子化値を変えることができます(量子化値が高い程フレームのサイズ/ビットレートは低く、画質が悪くなります)。
どのフレームにどんな量子化値を使うかは(ハイモーションをどれだけ圧縮するか)、"RateControl"が決めます。
これに加えて適応的量子化(これはSimpleProfileでも使えます)では、各フレームの内部で量子化値を変えることができます。つまり、ひとつのフレームの中でハイモーションエリアや暗い部分には高い量子化値を使っ高圧縮にして、顔などは背景などよりも低圧縮にする、など。 基本的に、MPEG-4ASPは有名なDivX5コデックで知られるようになりました。DivXと言えばいまやASP@L5コンテンツの代名詞でもあります(ペプシでもコカコーラと呼ぶようなものです)。しかし、DivXの他にも有力なMPEG-4 ASPコデックがある事を忘れてはいけません。

入手可能なMPEG-4 ASP コデック

 現在入手可能なASPコデックは、 XviD( binary), DivX5, DivX4/OpenDivX, ffmpeg/ ffvfw/ffdshow, 3ivx, NeroDigital, Skal, Quicktime, mpegable, Envivio, Sorenson 、などなどなど...
 Doom9の画質比較はここにあります: 1 2
 (DivX3.11 別名 MS MPEG-4、RV9、VP6、WMV9はMPEG-4規格には適合していない事に注意して下さい!)

XviD

 おそらく最も進歩したMPEG-4 ASPコデック。DVDBackupに高度に最適化されており、非常に幅広い符号化ツールに対応しています。
1枚以上のBフレーム QPEL GMC(ワープポイント3個)、 h.263/MPEG/CustomQuant、適応的量子化、 Trellisなどなどなど。
XviDはオープンソース (GPL) 。Doom9コミュニティから生まれたコデックで、 XviD Forumもあります。ここにはXviDの開発者もよく来ます(知ってると思うけど ;) )。
 詳細は公式ホームページの XviD.org crusty's FAQ、そしてもちろんdoom9の XviD Forumへ。

DivX5

 恐らく最も一般的で広く普及したMPEG-4 ASPコデック。まぁ主に名前のおかげだけど。
 これで使えるMPEG-4 ASPの機能はXviDより少ない。Bフレームは最大2枚、h.263/MPEGQuant、弱いGMC(ワープポイント一個)、QPEL。XviDより画質が悪いと言う人もいる。
 とはいえ、ビジネス界の商用コデックで、MPEG-4 ASPを有名にした功労者だ。
 詳細は公式ホームページの DivX.com、doom9の DivX Forum へ。

※訳注:オープンソースだったDivx3から一部開発者が分離して始めた会社らしく、時折反発がある。Xvidはその残党が始めたのだとか(参考: ビデオコデックの歴史)。

ffmpeg

 ffmpeg(別名libavcodec/format)。オープンソース (LGPL)。MPEG-4の完全な実装ということならコレでしょう。エラー耐性など、考え得る限りの符号化ツールを実装しています。
 エンコードという点ではXvidの影に隠れる事も多いのですが、画質は良く、他のたくさんのプロジェクトの土台となっていると言う点で、重要なコデックです(例えば有名なmplayや、ffdshowはこれを使っています)。
 詳細は公式ホームページ ffmpeg.org、Doom9の New Codecs forumへ。

3ivx

不屈にして最古のMPEG-4コデックの一つ(開発者はDivX5より先だと言っています)。3ivxは過去数ヶ月の間に有名になりました。
B-フレーム、GMC、QPELには非対応ですが、h.263/MPEGQuants、適応的量子化、4MVに対応しており、さらにASPコデックとしては初めてPAR指定に対応しました。
3ivxが提供するのはビデオエンコーディングだけではなく、MPEG-4規格の全てにまたがっています。AAC エンコーディング(FAAC) や、MP4コンテナツールなど(もしかしたらこれはベストかもしれません)
詳細は公式ホームページ 3ivx.com、Doom9の New Codecs/ Containers (時折開発者が来る事もあります)。

※訳注:原文の最終更新日は2005年6月19日。2007年1月現在でもバージョンは3ivx4.5のままなので評価はかなり変わっている筈。
CES2007で3ivx5.0(ASP)のリリースをアナウンスしたので、間もなくこの部分は修正が入ると思われます。

NeroDigital

NeroのMPEG-4ASPコデックは恐らくもっとも新しいものでしょう。しかしNeroはシェアを取る事に非常に意欲的です。
現在、このコデックを使えるのは NeroRecode2の中でだけです(HE-AACやマルチチャンネルなどに対応した良いAACエンコーダが付いています)。NeroDigitalはBフレーム一枚、GMC(ワープポイント3個)、QPEL、h.263/MPEG/CustomQuants、適応的量子化に対応しています。(PsyHigh *?* )そして最も高速なコデックの一つです。
詳細は公式ホームページ NeroDigital.com 、Doom9の New Codecs (これも時折開発者が来る事があります)へ。

ハードウェアにおけるMPEG-4 ASP -DivX/NeroDigital Certification / Private MPEG-4 Profiles

 第一世代のハードウェア・デコーダ・チップの中にはASPの重要な符号化ツール(QPELやGMCなど)を扱えないものがありました。現在のチップはより強力で、例えばQPELやワープポイント1個のGMCが扱えるようになっています(これまでのところワープポイント3個のサポートはありません)。
 古いチップを使ったプレイヤでもサポートできるように、DivXNetworks とNeroはプライベートMPEG-4プロファイルとでも言うべきものを作っています。それぞれ、DXNHome Theater Profile (DXN HTP) 、ND Standard Profile (ND StP)と言う名前です。
 DXNHTP や ND StP(他にも数種類のプロファイルがあります)を扱えるプレイヤはどこの製品であれ、DivXNetworks とNeroから認証を受ける事が出来ます。
 例えば、HTP/StPに適合するようにエンコードする場合、QPELまたはGMC、それから最大1枚のBフレームが使えます。ですから、HTP/StPは基本的に画質と古いデコーダチップとの互換性の取引です。
もちろん、これらのプライベート認証はDivXNetworks と Neroのブランドネーム向上にも役に立ちます。

 しかしながら、我々がプレイヤに望むものを正確に表現する言葉は、MPEG-4ASP@L5です。もしもあなたのプレイヤがこれに対応しているならば、どのエンコーダを使おうとも、MPEG-4ASPに従って作ったファイルを問題無く再生できます。

その他の情報

MPEG-4Videoに関する詳細は MPEGIndustry Forumへ、ここには入手可能な Resources Tutorials/Papersの概要がある。
14496-2改正1の規格は ここ
Moving Picture Experts Group (MPEG)も重要だ。ここには MPEG-4 Videoの FAQ や、 MPEG-4 Standardの概観がある(MPEG-4Videoにかんする情報も沢山ある)。
それから googleで"MPEG-4"を検索すれば、大量の有益なサイトが見つかるだろう。
__________________
弱者と強者の間にあっては、自由は抑圧の源であり、それを解放するものが法である(ジャン・ジャック・ルソー)
私が自分が何も知ってはいない事を知っている(ソクラテス)

Lastedited by bond : 2005/06/19

△ETOP | ▲PTOP

▶コメント(-0)

コメントの投稿
管理者にだけ表示を許可する

▶トラバ(-0)

トラックバックURL
http://agehatype0.blog50.fc2.com/tb.php/197-1cb4c491

    ▲PTOP

    ◀ Think "Thoughts on Music" 表紙 MP4 faq▶

    Most Viewd:(070101-071031)

    1. じだいおくれの地デジのはなし
    2. 牛乳有害説
    3. MeGUI ガイド_x264の設定
    4. MP4 faq
    5. tag:H.264/AVC
    6. 続・あたらしい著作権のはなし
    7. Xbox360、PS3、AppleTVの対応動画
    8. cat: 動画全般
    9. tag:MPEG-4
    10. 縦横(アスペクト)比
    11. Apple TV改造 - Xvid
    12. MP4Boxの主要コマンド
    13. MPEG-4の基礎 5 - ISO14496-10(ビデオ) - AVC
    14. cat:MPEG-4全般
    15. cat:-x264encopts
    16. ffmpeg コマンドその1(らけった版)
    17. tag:MeGUI
    18. tag:x264(r600)コマンド対応
    19. date:20070801
    20. PSPファームウェア3.30
    21. tag:mp4box

    ▶ Index

    表紙
    全記事一覧
    ここについて
    人気記事
    x264関連
    ageha更新終了の辞

     2007/11/15を以て当ブログは更新を停止しました。
     記事は全てこのままですが、基本的に内容はOut of dateとお考え下さい。
     →Next

    ▶ カテゴリー

    ▶ タグ検索

    ▶ Archive R

    FC2Ad

    FC2ブログ 一戸建て

    ▶ 管理/なかのひと

    ▶ StyleKeeper

    ▶ StyleChanger

    public my share