ex gigaB

半角板と濡れ場スレ住民各位のためにオナっといてやる。

DTV - 動画再生の道

主な内容:

  • エンコード/デコードの必要性と基本的な流れ
  • 主な動画規格
  • 映像インターフェイスについて
  • 動画再生ツールあれこれ

基礎知識

動画を再生できない人は一通り読め(Macは知らん)。

説明ふっ飛ばしてとにかく再生できればいいって人は動画再生の便利ツールへ直行。

エンコードとデコードの必要性 [Encode/Decode]

Encodeは符号化。符号化とは「B地区マンセー!」といった可視情報を「QuWcsOWMuuODnuODs+OCu+ODvO+8gQ==」といった符号に変換すること。Decodeはその逆で、符号化された情報を可視情報に戻すこと。つまり圧縮と解凍みたいなもの。

動画というのは情報量がメチャメチャいっぱい必要で、データがバカでかくなる。いろんな仕組みでもってデータサイズを縮小してあげないとパソコンで扱いにくいことこの上ない。これが動画におけるエンコード。再生時には圧縮に使ったのと同じ仕組みを逆にしてあげる。これがデコード

非圧縮状態のデジタル映像データ(RAW Video言います)に必要な情報量がどれくらいになるかというと、例えば画面サイズがVGA(640x480ピクセル)の場合、最低でも640*480=307200個の情報が必要になる。サイズにすると307200bit=38.4KB。TVで用いられるハーフレート(秒30コマ)に換算すると1秒の映像は約1.2MBになる。ちなみにこれで表現できるのは黒白2色。24bitフルカラーだと約28MB/sec(224Mbps)、1時間で約100GBになってしまう(ちなみに音声は含まれていない)。さらにハイビジョンのHD(1920x1080、情報量はVGAの6.75倍)ともなると・・・何らかの仕組みでもって圧縮しないとどうしようもないのがわかってもらえると思う。

…裏を返せば、十分にストレージ容量に余裕があり、またストレージから視聴環境への帯域(これにはローカル環境のバスも含まれる)も十分に確保されているのであれば(なおかつ大量のデータをスムースに扱える処理能力が伴っていれば)、圧縮する必要はないとも言える。つまりエンコードの本質は対象とする環境に合わせて転送レートを調整することにある。ここを誤解している人は非常に多い。

また現在再生で用いられる主流コーデックはすべて前後のフレーム(コマ)との差分情報を考慮したフレーム間圧縮を用いているため1コマを取り出すのが本質的に向いていない。早送りや巻き戻しなどのシークがビデオのようになかなかスムースにならないのもこのためである。そのためポスプロの制作現場ではフレーム圧縮だけに留まるDVコーデックなどが用いられる(もちろんデータサイズは大きい)。

余談

RAWは「ナマ」という意味で、ITの世界では手の加えられていない非圧縮の状態を指す。写真が好きな方(オレ)であればデジカメの撮影でもRAWというのを耳にしたことがあるかもしれない。弊害があってもやはりナマに限る、というお話(ピュア。

なおアナログ映像は仕組みが根本的に異なるので比較が難しい。そもそもアナログの定義は連続的な物理量であるため原理的にはオリジナルを忠実にコピーすることが可能であるが、その精度は記録/再生する機器の性能に依存するため、オリジナルと完全に一致する記録/再生は現在の技術では不可能である。デジタルの定義は不連続な情報ゆえ、当然ながら存在しないものの再現はできないが、存在する情報であればアナログよりもずっと高い精度で取り扱うことができる、といった感じ。

仮にオリジナルの完全記録ができると仮定するなら、量子レベルの世界で何らかの同期法則が存在する、という前提が必要な気がする。それならデジタル保存が可能だから。ただ今度は時間は一定ではない、という相対論の原則を覆すことになるが。

基本的な用語

コーデック [codec]
Encode/Decodeプログラムの略で、符号化と符号解除の仕組みのこと。再生時に必要なのは符号を解除するデコーダーだけでよいので、一般にコーデックというとデコーダーを指すことが多く、またデコーダーについては無償提供されているものも多い。自分で動画をエンコードする場合には符号化プログラムであるエンコーダーも必要となる。
なおコーデックはCompression/Decompression(圧縮/伸長)の略とされているが、符号化されたデータが必ずしも圧縮されるとは限らないので(冒頭で例にしているBASE64とか)、Encode/Decodeのほうがふさわしいと思う。
スプリッタ [spriter]
映像と音声はそれぞれ様々なコーデックを自由に組み合わせることができるが、再生時にはコンテナ内に格納されている映像と音声を分けるための仕組みが必要になる。これがスプリッタ。つまり厳密には、動画の再生には映像と音声のコーデックとスプリッタが必要になってくるわけだ。ただ、これだけでは再生にはまだ欠ける要素がある。
DirectShow/DirectShowFilter
Microsoftのマルチメディアファイル再生のためのAPI。再生ソフトがファイルを再生できるのは様々なコーデックやファイルコンテナといったものを取りまとめる共通窓口のようなものが存在するからだ。再生ソフトはわざわざたくさんのコーデックに自分で対応する必要はなく、この共通窓口とさえやりとりできればいい。コーデックも様々なソフトのことを考えず、この共通窓口に情報を渡すだけでいい。この共通窓口にあたるのがDirectShowで、再生ソフトとのインターフェイスをDirectShowFilterと呼ぶ。厳密にはコーデックとスプリッタの他、実際に映像と音声の出力を行うレンダラーがあり、それぞれがフィルタとして機能している。これらを整理するとDirectShowFilterというのはソースファイル→スプリッタ(パーサ)→デコーダー→レンダラーの一連の流れと考えることができる。再生プログラムはDirectShowを通じて、再生対象のファイルが映像コーデック、音声コーデック、スプリッタそれぞれ何を使用しているかを知ることができる。

簡単にまとめると、コーデック(デコーダー)は圧縮されたデータの伸長を行うもの、DirectShowFilterは再生の一連の手順を受け持つもの、ってこと。たぶんDirectShowが何をやってるか理解できるかどうかが、子離れ(何)できるかどうかの境界線ではないか。オレ様の適当な殴り書きよりきちんとした説明をしているサイトはたくさんあるから、正確に理解したいならそっちを見たほうがよい。このへんとか。

DirectShowの後継APIとして、Windows VistaからMedia Foundationが導入されている。より強力なDRMとか、DRMとか、DRMがウリなので男爵的には不安いっぱいなのだが、デスクトップOSの主流がWindows 7になるまではコンテンツプロバイダがDirectShowを見捨てることはないと勝手に思ってる。

FourCCについて

もうひとつ大事なことがあった。DirectShowにしても、あるファイルで映像コーデックに何が用いられているのかわからないとどうしようもない。これを判別するための識別子として制定されたのがFourCCで、その名の示すとおりファイルヘッダに4文字のIDが埋め込まれている。たとえばH.264/AVCならAVC1といった具合に。これを見てコーデックを判断し、デコーダーを選択するわけ。FourCCが間違ってたら当然正常に再生はできないけれども、普通はエンコード時に勝手に設定されるのでバイナリエディタで編集でもしない限り問題ない・・・はず。

FourCCそのものはコーデック判別が目的で作られたものではないのだが、事実上コーデック識別子としての利用が中心となっている。

これでわかる人にはわかると思うけれども、FourCCはコーデック単位のため、たとえばDivXもバージョンによってFourCCは異なるし、同じコーデックに異なるFourCCが割り当てられることもない(そのことをちゃんと理解していればFLV5で散々悩むことなどなかった)。

再生方式とコーデック

スプリッタの項でも触れたけど、映像と音声でどんなコーデックを使うかというのはわりとフレキシブルなため、コーデックと再生方式については厳密に説明するのがちょっとややこしい。特にAVIファイルなんて拡張子は同じでも中身はてんでバラバラだ。WMVファイルにしても音声はMP3を使ってるなんてケースはザラにある。映像は出るのに音が出ない、あるいはその逆といった不具合のほとんどは、どちらかのコーデックが不足している(あるいは、そのコーデックを使うためのDirectShowFilterが機能していない)ことに起因する。

なお最近のコーデックはほとんどMPEG4の流れを汲むので、MMname2を参考に、オレ様がわかりやすいよう勝手に分類し直した。以下ちょっとずつ解説増やしていく。音声規格も必要に応じて取り上げる。

Legacy MPEG系

恐らく最も汎用的な動画規格。今となっては枯れ果てた技術であるが、MPEG-1/2がその後の規格に与えた影響は計り知れない。MPEG用語集も参照のこと。

MPEG-1
Video-CDで採用された方式。OSインストール直後でも再生できる。拡張子はMPG。映像のみの場合はM1Vが正しい拡張子だが、多重化は後述するMPEG-2 PSに近く、Video-CD格納時には拡張子がDATとなっている。転送速度は1.5MbpsでVHS程度の画質。
今となっては新規で使うことはまずないが、フレーム間予測、離散コサイン変換(DCT)、量子化、エントロピー符号化などを映像規格としてまとめたH.261の直系として、その後の動画規格の方向性を決めた重要な存在。またMP3もMPEG1の産物である。
MPEG-2
DVDで採用された方式。コーデックの利用にライセンスが必要なので、DVD再生ソフトがインストールされていないようなOSインストール直後の環境では再生できないこともあった。正式な拡張子はM2Pだが、再生互換の関係上MPGとしているものが多い。時間軸圧縮を採用している。
なおM2Pは映像と音声両方を含むMPEG2 Program Streamを指し、映像単体のMPEG2 Video StreamはM2Vとなる。またM2PはDVDではMPEG-2 PSにおける標準コンテナであるが、デジタル放送やBlu-rayなどの次世代メディアではMPEG-2 TS(Transport Stream)のM2T/M2TSとなる。その名の通り、トランスポートパケットと呼ばれる固定長データの集まりであることが特徴。なおMPEG-2 TSのように音声と映像を同一のコンテナorストリームに格納することを多重化という。
鑑賞に耐え得る画質という点において、MPEG-2は動画規格のマイルストーンであろう。またの名をH.262というのだが、後輩のH.263やH.264ほどは知られてないようだ。
VOB
DVD-Videoに格納されているファイル。中身はMPEG2 Program Stream。拡張子はVOBだが単体で配布されているものは再生互換のためMPGにしていることも多い。
MP2
MPEG Audio Layer 2。DVDで扱えるMPなんたら。MP3よりも性能は低いが、動画用音声として不満に感じるほどでもない。MPEG2 Audio Stream単体の場合の拡張子はMP2。
MP3
MPEG Audio Layer 3。MP2より性能は上だが仕様策定時期の関係でDVDには採用されなかった。拡張子は当然MP3。音声にMP3を使用して作られたDVDは再生の際に環境依存の問題があることに注意(不安ならAC3で作るのが無難)。詳しくは音声エンコードとMP3を参照。
AC3
ドルビーシステムの音声コーデック、Audio Codec ver3だったかな。5.1サラウンドのようなマルチトラックに対応している。MPEG2 Audio Stream単体の場合の拡張子はAC3。
AAC
最近の主流音声コーデック、Advanced Audio Codingの略。MP3の半分のレートで同等以上の性能、らしい。実際、MP3は低ビットレートでの性能が悪いので、128Kbps程度で聴き比べれば素人でも違いはわかる(つまり320Kbpsで比較するのはナンセンス)。通常利用されているのはAAC-LC(Low Complexity)で、MPEG4やデジタル放送なんかで採用されている。さらに圧縮率を高めたHE-AAC(High-Efficiency)もあるが、高音域と中低音域を分離して符号化する方式のため、高ビットレートを上げてもたいして高音質にはならない。音質を犠牲にしても映像にデータを振り分けたい、そんなケースに向く。

音質は目に見える映像と違って主観に左右されやすいので、本気で聴き比べをするのなら、オリジナル音源と比較対象をブラインドテストすること。

DVR-MS
Microsoft Digital Video Recordingの略だったような。その名の通りマイクロソフトのフォーマットでXPのMedia Center Editionとかで録画するとこの形式で保存される。拡張子的に再生互換を考慮してDivXなりに変換されてしまうことが多い。もっとも中身はただのMPEG2&MP2orAC3・・・早い話がDVD-Videoなので取り扱いは特に面倒でもない。

ISO/MPEG4系

亜流であるDivXやWindowsMediaなどのほうが先に普及してしまったが、H.264のおかげで最近わりと盛り返してきた。MacではMPEG4成立の背景事情の関係でむしろ主流。

ISO/MPEG-4
本家MPEG4。お手本にしたのがQuickTimeなので基本的に中身はほぼ同じ。規格であり実装仕様ではない。また規格自体はものすごく広範囲&高度で多種多様ななパートに分かれているのだが、すべての要件を満たす必要はないため、様々な実装形態が存在する。逆に必須要件さえ満たしていればMPEG-4と呼んでいいわけで、これがMPEG-4の混乱の元なのだろう。“MPEG-4対応のプレイヤー”、というのが存在しない理由でもある。これはH.264(ISO/IEC 14496-10、MPEG-4 AVCと同等)も似たようなもので、ひとえにH.264準拠といっても相互運用性が確実に保証されているわけではないことに注意(DivXがVer.7でH.264採用に踏み切ったのも、H.264の相互運用性向上のためとしている・・・だったら何でMKVよ、と突っ込みたくなるが)。
3GPP
ソフトバンク系の第三世代携帯電話で使われている形式。拡張子は3GP。
3GPP2
au系の第三世代携帯電話で使われている形式。拡張子は3G2。
H.264/AVC
高圧縮率が自慢のMPEG4の軽量版、またの名をMPEG-4 Part 10 AVCなのだけど、MPEG-4があまりに多岐に渡るせいかこちらで呼ぶ人は少ない。MPEG-4の本願であった、プロファイルを変えることでポータブル機器からHDTVまであらゆる用途に対応するフレキシブルさと高画質がウリで現在の主流となった。PSPとかiPodなどのポータブル機器向け動画で主に使われてるやつ(Baseline Profile)だが、BD向けにビットレートを上げれば(というかプロファイルをMain ProfileやHigh Profileなどに変えてやれば)DivXやVP6あたりと謙遜ないどころかさらに上だったりする。
FLV5F4VフォーマットでFlashでも採用された。日本ではそのFLVを除き標準コンテナのMP4でエンコードする人が多いが、海外ではMKVのほうが主流である。これはエンコード環境(使うソフトとかね)の違いもあると思われる。圧縮/伸長アルゴリズムが複雑なせいか、後述するffdshowなどだと再生負荷がやや高めなのが難点か(貧弱マシンの人は軽量コーデックであるCoreAVCやDivX H.264 Decoderを入れるがよい)。エンコーダはいくつか存在するけど、オープンソースであるx264の評判がよい(TMPGEnc ver.5も自社エンジンを諦めこれに乗り換えた)。
AVCHD
ハイビジョン映像をビデオカメラで記録する際に用いられるフォーマット。VHC-C、8mm、miniDVときて現在の(民生用ビデオカメラにおける)事実上の標準記録方式といってもよい。中身はH.264/AVCとAC3で、多重化にMPEG2-TSと既存技術の組み合わせ(ゆえに拡張子はMTSやM2T)。これまでのビデオカメラ向け記録方式とくらべて格段に品質が向上しているので、民生用のビデオ/デジカメのみならず業務用カムコーダなのでの採用もある。
BDMV/BDAV
Blu-RayにおけるDVD-Video/DVD-VR相当の規格。AVCHD同様、多重化にはMPEG2-TSを採用している。中身は事実上H.264/AVCとAC3。要するにこれが標準セットなのだろう。

AVI系

AVIはAudio-Video Interleavedの略で、映像と音声を同一のファイル(コンテナ)に格納するための仕組み。ここではデフォルトの拡張子をAVIとする方式を含めたが、AVI自体はコーデックを特定しないことに注意。

なおインターリーブ(Interleave)とはコンテナ内でのデータの配置のことで、映像データの後ろに音声を持ってくるか(ノンインターリーブ)、映像と音声を同時に配置するかの2種類があり、再生時に同期を取りやすいことから主流は後者である。AVIの場合RIFF利用して同期を取っている。

AVI
元祖AVI、マイクロソフトの標準動画フォーマットというかファイルコンテナ。FAT時代の産物のため扱えるファイルサイズの上限が2GBという制約がある。2GB単位にファイルを分割することでこの制約を乗り越えた参照AVIという形式もあるが、参照先ファイルの場所を変更すると再生できなかったりで使い勝手はイマイチ。またBフレームをまともに扱えないのがけっこう痛い。
なおソースをフレーム単位でそのまま保存するのが無圧縮AVIと呼ばれるもの。冒頭で触れたRAW Videoがこれに相当する。オリジナルを符号化していないので再生に特にコーデックが必要とはならないが、とにかくサイズがバカデカくなるので処理にマシンパワーは必要だしスループットも重要だし長時間の記録ではHDD容量がヤヴァい。
AVI2
APIをVideoForWindowsからDirectShowに変更することで2GBの制約を越えたAVI。参照AVIと違いひとつのコンテナに2GBオーバーのファイルを格納できる。最近の大容量AVIはほとんどこっち。
ぶっちゃけAVIとAVI2はまるで別物なのだが、拡張子が同じAVIであること、DirectShowが2GB未満のAVIファイルを事実上VideoForWindows互換として扱うことから、視聴者がどちらなのかを意識する必要はほとんどない。
ASF
Advanced Systems Format、AVIの後継にあたるコンテナ。映像と音声以外に画像やメタデータなども格納することができる(考え方はSMILに近いような気もする)。主な使い道はWindowsMediaによるストリーミング。たいてい著作権管理やシーク制御もくっついてくるのでウザい。
DivX
OS標準形式を別にすれば、たぶん世界で一番普及した映像コーデック。アルゴリズムはMPEG4系。バージョンアップも盛んで2007年7月時点でDivX6.6がリリースされている。DivX3時代にはMicrosoftコーデックとの共通点が多く、さてはパクリかといろいろ問題になったりした。デコーダーは無償配布、エンコーダーも期間限定で無料で使える。
2009年1月に発表されたVer.7は映像H.264、音声AAC、コンテナはなんとMKVと、全くの別物に生まれ変わってしまった。日本ではあまり浸透していないMKVだけど、海外ではむしろメインストリームになりつつあることを受けてか。
XviD/Xvid
DivXに対抗して有志により作られた、ライセンスフリーのコーデック。アルゴリズムはMPEG4系。発表当初はそれなりに注目されたけど、他のコーデックの性能アップが著しく落ち目(ベースがDivX4だし、ぜんぜん更新してないし)。
エンコードが速い特徴があるが、AVIコンテナに格納した場合Bフレームを扱うことができないためシーク性が落ちる。そのためXvidを使う職人(誰)はMKVコンテナに格納する人が多い。最近また採用例が増えてる気がする。
DV
MPEG2の次くらいに登場したデジタルビデオ規格。据え置き型よりもむしろビデオカメラでの採用が圧倒的に多く、AVCHDが登場しHD記録が一般化するまで民生用ビデオカメラのスタンダードだった。H.264が普及した現在でも規格はDVCAMやDVCPRO、HDVなどに受け継がれ、業務用カムではまだまだ現役である。

そもそも業務用カムでは高圧縮なんかよりも高画質・高音質・高編集性のほうが重要なわけで、となるとH.264のメリットがあまり生きてこない。また記録媒体もオールオアナッシングの危険を秘めたシリコンメディアや光磁気ディスクなどよりもテープのほうがずっと信頼性が高かったり。

コーデックはDV圧縮(DV codec)と呼ばれ、メーカー独自のものが存在するがCanopusを使うケースが多いような気がする。時間軸圧縮を行わないため性質は非圧縮AVIに近く(拡張子もAVI、圧縮率は1/5程度)、コマ単位での編集が容易であるためポスプロ現場や一般家庭でのノンリニア編集を加速させる要因となった。半面圧縮率は低いので、用途は主に映像ソースであり、観賞用は別途エンコードするのが一般的。また音声はリニアPCMで記録されるため品質は極めて高い。欠点としては、記録媒体が磁気テープであるが故にドロップアウトの問題が常に付きまとうことか。塗布テープを採用しているDVCAMやDVCPROはヘッド素材やエラー訂正などで極力抑えているが、テープメディアである以上宿命的な課題といえる。もっとも、適切に管理されたメディアの保存期間は30年以上と、CDやDVDよりも長かったりするのだが・・・。
Huffyuv
ハーフワイユーブイと読む。珍しい可逆圧縮を採用しているAVI系コーデック。圧縮率はたいしたことないので観賞用ではまず用いられることはないが、劣化がないことや時間軸圧縮をしていないことからDVなどの一次ソースを編集した中間ソースの保存用として用いられる。圧縮率は1/2程度。

WindowsMedia系

MS-MPEG4
マイクロソフトのプレMPEG4的コーデック。この発展系がWindowsMediaVideoである。その名の通りアルゴリズムはMPEG4系で、コンテナは当然AVI。今となってはP2Pを漂っている古いファイルで見かける程度に過ぎないが、MPEG2と比べてはるかに高圧縮&高画質(もちろん当時としては)なコーデックを無料で使えることから世紀の変わり目くらいに職人の間で大ブレイクした。ある意味、自炊ブームを作ったコーデックともいえる。最終バージョンであるFourCCがMP43のものをまんまパクったのがDivX ;-)というのは有名な話。
WindowsMediaVideo
現在のMicrosoftの主流映像コーデック(OS標準フォーマットはあくまでもAVIと思う)。MPEG4系アルゴリズム。性能はまあまあだけど、なにしろWindowsのデフォルトなので浸透率は高いというか、再生環境面で有利かもしれない。ピュアストリーミングにも対応。むしろストリーミングフォーマットとしての完成度は非常に高いと思うが、いかんせん配信に必要な設備投資が高くつくのが難点。拡張子はWMVだが、ASFに格納されている場合もある。ストリーミング時はWMV/ASFのままではなく基本ASX経由となる。画質面での不満は少ないものの、可変フレームレートのせいかシークがぎこちない、という難点が。ビットレートもわかりにくいし。DRM付きの場合、Windows Media Player以外での再生ができない(DRM解除すれば別)。
なおWindows Media Video 9のデコード規格はVC-1として標準化され、Blu-rayやHD-DVDでの必須コーデックとして採用されている(ただ互換性で微妙な問題あり)。コンテナはASFもしくはM2TS。
またWMV9でもエンコーダによりFourCCに下記のような違いがある。
FourCC:WMV3
通常のWMV9コーデックで圧縮したもの
FourCC:WMVA
WMP10系エンコーダで圧縮したWMV9 Advanced Profile
FourCC:WVC1
WMP11系エンコーダで圧縮したWMV9 Advanced Profile
VC-1として扱われるものはWMV3とWVC1のため、WMP10系環境の人がBlu-rayやHD-DVD再生機器に対応したエンコードを行う場合(そんなケースあるのか知らんが)は注意が必要。
WindowsMediaAudio
現在のMicrosoftの主流音声コーデック(OS標準はあくまでもWAVと思う)。意外と性能はよく、同ビットレートのMP3より高音質なのはもちろんLossless圧縮にも対応しているけど、なんとなくMicrosoft独自規格ってのが嫌で使ってない。拡張子はWMA、一時期無理やり「ウマ」と読んでる人もいたけど、今もいるんだろうか。
ASX、WAX、WVX、WMX、WPL
全部Windows メタファイル。ASXはストリーミング向け、WAXはWindows Media オーディオ専用、WVXはWindows Media ビデオ専用、WMXは兼用、WPLはクライアント再生リスト。それぞれXML構文でファイル情報や再生情報が書かれているだけで、マルチメディアデータの実体は別にある。

org/ogg系

ogm
oggコンテナをベースに、Tobiasという個人が私的に開発した形式。音声にはOgg Vorbisを使うのが一般的。
Ogg Vorbis
ロイヤリティフリーの音声フォーマット。音質とファイルサイズのバランスもよく、個人ベースのエンコードで比較的広く用いられている。
余談であるが、音声にOggを用いてるファイルはスプリッタによってシーク性能がガラリと変わるようだ。少なくとも俺の環境では。
Ogg Theora
On2 TureCast社のVP3をベースに開発された、フリーの動画フォーマット。拡張子がOgg Vorbisと同じなのでややこしい。

QuickTime系

Macでは圧倒的に強いもののWindowsではイマイチ。きっとQuickTimePlayerのせいだろう。

MOV
Macの標準マルチメディアフォーマット。拡張子はMOVだけどQTになってるときもある。MicrosoftにおけるAVIのような位置づけ、つまるところファイルコンテナなので中身はなんでもよいのだが、最近はほぼMPEG4。

RealMedia系

これもRealOnePlayerが胸糞悪いせいで実力を過小評価されている。世にストリーミングが登場した頃はこれ一色だった。

RealVideo
RealNetworks社の映像コーデック。プレイヤーは最悪だがコーデックとしての性能は非常に高いため、ここ数年採用者が増えた。RV10、RV40などのバージョンがある。RealOnePlayerをインストールすることでコーデックが利用可能になる。なお、固定ビットレート(VBR)では拡張子RMで可変ビットレート(VBR)ではRMVBという珍しい仕様。
RealAudio
RealNetworks社の音声コーデック。Videoとは違い使ってる人はあんまり見かけない。拡張子はRA。

Matroska系

ここ数年で一気に利用者が増えた。MediaPlayerで標準再生できないのが弱点かもしれない。

MKV
Matroska Video。マルチメディアの標準コンテナを目指して作られたフォーマット。AVIみたいなもので、MKV自体がコーデックを規定しているわけではない。MKVファイルの再生にはMKVスプリッタが必要だが、スプリッタを入れていても拡張子がMKVのままだとWIndowsMediaPlayerでは再生できなず、やむなく拡張子をAVIにすることもある。中身はいろいろだけど、VP6やRV40といった高性能な映像コーデックを使ってる人が多い(それがまたMKVの再生で躓く人を増やす原因ジャマイカ)。個人的には、シークが重いのであまり好きではない。
海外では当たり前に使われているのだけど、前述した通りDivX7がMKVコンテナを採用したことで今後日本でも主流になる可能性がある。

Flash系

Flashで動画を扱う場合、ファイルに直接埋め込むこともできるし、実体ファイルを別にした参照形式にすることもできる。拡張子はSWF。

FLV(Flash Video)
YourTubeで一躍有名になった、Flashの動画フォーマットというかファイルコンテナ。一般に映像コーデックとして用いられるのはH.263(Sorenson Spark)で、低解像度、低ビットレートでの再生に適している。裏を返せば、高解像度の映像には向かないということ。(Flashの本質からするとあまり意味があるようには思えないが)高品質のFlash Videoを制作するには後述するVP6やH.264が適している。使いどころを間違えないように。拡張子はFLVまたはF4V。
注意:FLV5については幾多の混乱があるため、FLV動画のエンコードを参照されたし。

その他

VP3~VP5
よくわからんし、いまさら知る必要もあまりないと思う。
VP6
最近けっこう増えてきてる、On2 TureCast社の映像コーデック。エンコーダーも個人利用の場合フリーで使える。特にVP62はMPEG4系の中でも一番高性能な部類と思う。AVIだけでなくFlash(FLV4)でも採用され、ニコ動以降こちらの利用が非常に増えた。
VP7
On2の映像コーデック最新版。画質はともかくちょっとエンコード時間かかりすぎ。VP6同様、枝番つくまでは静観が無難かと。
VP8 (WebM)
その後On2はgoogle大先生に買収され、最新コーデックであるVP8はそのgoogleがHTML5時代の標準動画規格を狙うWebMの映像コーデックとして採用された。執筆時点では画質はともかく、エンコード性能がいまいち。すでにハードウェアでリアルタイムエンコード環境などが整っているライバルH.264と比べて劣勢なのは否めないが、無償利用を前提とすることで新規コンテンツビルダーなどの賛同を得て取り込みを図ろうとしているようだ。
個人的には、H.264のライセンスフィーがMPEG2より高いといっても、画質と再生環境の普及度、オーサリングの利便性などを考えると今からWebMに乗り換えるメリットというのはさしてないように思える。というか、F4VやMP4のFlash配信で何が不満なんだ?って話。HTML5を機に主導権を握りたいgoogleの思惑以上のものを感じないし、そもそも俺はXHTML信者なのでHTML5嫌いだし。
ちなみに、WebMの音声パートはOgg Vorbis、コンテナはMKV。エンコードは今のところパッチ適用したffmpegとFlix WebMくらいで、あとはよくわからない。再生はChromeやFireFoxなどのWebM対応版のブラウザ(IEとSafariは非対応を表明)か、VP8とVorbisのコーデックがあれば可能と思われ。 TMPGEnc 5も読み込みのみ対応してる。
現在はWebM公式においてDirectShowFilterが公開されているので、これを導入すれば普通に見れると思う。ちなみにWebMエンコーダーであるmakewebm.exe及びWebMプレイヤーのplaywebm.exeも同梱されている。
XVD
BHAとIOデータが躍起になってる映像コーデック、拡張子はVGMかVG2。エンコードが超高速とか性能はいいんだけどメーカー戦略がどうも(フリーのエンコーダ提供は普及の必須要件でしょ)。ちなみに日本上陸当時、製品開発を手伝わないかと誘われたことがあった。いい思い出だ(ピュア。業務用途で地道にがんばってるようだが、個人で使ってる人を見かけたことがない。
G.726
低ビットレートでの使用を想定した音声コーデック。基本はPCMなのだけど、MPEGのように前後の情報を利用した時間軸圧縮も行う。PHSで使われてる。
Nancy Codec
21世紀初頭、まだJ-Phone(携帯で写真を撮る、を一般化させた功績はデカい)が存在した頃に軽負荷を売りに登場したコーデック。開発はOFFICE NOA。結局ムービー写メールくらいしか採用例がなく携帯端末以外にはまるで普及することはなかったけれども、計算量の少ない独自の圧縮アルゴリズムで勝負したこと自体はわりと評価できる。んまあ、今となっては携帯端末であろうがプロセッサの処理能力が飛躍的に向上しちゃったし、再生支援チップのコストダウンも進んでるので、軽負荷が武器になった古き良き時代を懐かしむ以外に使い道はないかと。なおコーデックの仕様が非公開のため、変換に苦しむ人がけっこう存在するようだ。
Cinepak
Windows3.1くらいの時代にQuickTimeやVideo for Windowsで採用されてたコーデック。セガサターンのゲーム動画でも使われてた。想定解像度はQVGA、まだ離散コサイン変換アルゴリズムがマルチメディア圧縮に用いられる前のことである。当時はごく一般的なコーデックだったため現在でも特に意識しなくてもほぼすべてのプレイヤーで再生できる。
モバイルムービー/メモリースティックビデオ
SONYのやっちゃったフォーマット。モバイルムービーの中身はMPEG4、コンテナがQuickTimeなのでいちおうPCでも普通に扱える。対してメモリースティックビデオはH.264 AVC+AACと汎用的にみえつつコンテナは独自とか相変わらずの無茶ぶり。また著作権管理を盛り込んだメモリースティックセキュアビデオフォーマットはMagicGateを採用してるのでさらに厄介。んまああまり使われてないけど。
Motion JPEG
その名の通り、JPEGで記録された画像をパラパラ漫画方式で動画として保存するための規格。ゆえにDV Codecと同じくコマ単位の編集が容易。デジカメのムービー機能ではごく一般的に採用されていたけれども、最近はAVCHDにお株を奪われつつある。なお音声については特に定められていないのだが、PCMで記録されることが多い。コンテナはAVIやMOV。

まとめ

まあ、新しいコーデックのが性能いいのは当然か。ファミリーツリーにすれば各コーデックの関係がもっとわかりやすくなるんだろうけど、オレ様はそこまで詳しくない。とにかくファイルコンテナとコーデックの違いさえ理解できれば、動画再生でトラブルことは減るのではないか。

おまけ:映像向けインターフェイスのメモ

映像関連の端子はPCだけであればアナログ/デジタルで1つずつ覚えとけばほぼ問題ないのだが、テレビやHDDレコーダ、BDプレイヤーといったAV機器との相互接続まで含めるとけっこういっぱいあって、どれを用意しなきゃいけないのかわかりづらい。

PC系インターフェイス

VGA端子/RGB端子/D-sub15ピン(DE-15)
PCにおけるアナログ入出力のごく一般的な端子で、RGBコンポーネント映像信号をやりとりする。コネクタ形状はD-subでゲーム端子やRS232Cと似ているが、ピンの配列が3列となっているのが特徴。
DVI(DVI-D/I/A)
PCにおけるデジタル入出力の端子。このうちアナログ信号への変換に対応しているものがDVI-I、デジタル専用のものがDVI-Dである。前者はピン数29、後者は24(アナログ専用のDVI-Aもあるけど使う意味ねえだろ)。最近のディスプレイやグラフィックカードにはごく当たり前に備わっているが、オンボード出力のマザーはまだまだVGA端子だけだったりすることが多い。
ちなみにDVI-D/Iではデジタル信号用24ピンのうち18ピンを使用するシングルリンク(SL)と24ピンすべて使用するデュアルリンク(DL)が存在する。後者が必要になってくるのはWUXGA(1920*1200)を超える高解像度の場合で、1920*1080のHDクラスであればよほど高い垂直同期周波数でもない限りSLでほぼ問題ない。またDLは下位互換性がありSLとして使うことも可能なのでケーブルを買い間違えても無駄にはならないが、逆はつらい。
USBグラフィック
USBインターフェイスで映像信号を送出できるようにした規格。取り扱い的にはUSBとDVI/VGA端子の変換コネクタのようなもの。それゆえ導入は簡単でお手軽なんだけど、通信の品質保証の点(※)で専用規格には劣るし(あたりまえだ)、ビデオカードの性能とは別に出力解像度の上限が存在することには留意する必要がある。
DisplayPort
次世代のデジタル入出力規格で、DVIやHDMIで不満のあった端子形状をコンパクトで扱いやすくしているほか、さらに帯域も高速化されている。接続機器をポイント・ツー・ポイントではなくノード的な位置づけとし(ソース機器/シンク機器として定義)、USBのようなディジーチェーンにも対応しているなど夢いっぱいの規格ではあるが、まだまだ対応機器は少ない。

※USB通信はホストの負荷の影響をモロに受けるので、たとえばI/Oで重い処理をしているときに映像に必要なデータの送出が間に合わない可能性がある。通常のDVIなどでも画面が固まることはよくあるが、これは映像の生成レベルでの問題であり、I/Oがボトルネックになっているわけではない。

AV系インターフェイス

コンポーネント映像信号/コンポーネント端子
輝度、同期、色それぞれの信号(情報)を別々に送信する規格。3つに分かれたRCA端子でやりとりする(たまーにBNC端子のものもある)。厳密にはVGAもコンポーネント通信なのだが、一般的にコンポーネント出力などいった場合、こちらを指すことがほとんどである。デジタル映像の作成や編集で普通に用いられる(というかコンポジットにはそもそも対応してない)。これがついてない業務機器は存在しないといってもよい。
色差方式の違いでNTSCの480iレベルを扱うY/Cb/Cr方式と720Pや1080iなどそれ以上の解像度に対応するY/Pb/Pr方式が存在する(厳密にはこれがすべてではないのだが)。両者のピン形状は同じなので、端子周辺の表示などで見分けるしかない。
コンポジット映像信号/コンポジット端子
上記3つの信号を合成して送信する規格。RCA端子はひとつ。一昔前のご家庭のテレビやビデオの標準インターフェイスでよく見かける黄色い端子のアレ(これをイエローケーブルと呼んでる人がいたけど、その名前はすでに10BASE5のRG-11同軸ケーブルで通ってる)。映像では最下層の規格なのだが、高級機器でもアナログ出力しかできないような旧時代の映像資産との互換性を保つためにに備わってることが多い。ただ一度コンポジットに合成した信号を劣化なしに元に戻すのは非常に難しいらしい。
S映像端子
コンポジット信号から色信号を無理やり分離して別々に伝送する規格。端子形状はマウスやキーボードのPS/2に似ている。元ソースがNTSCやPALといったコンポジット情報しか備わっていないものだとこうでもするしかない、という感じ。
D端子
コンポーネント信号の3つのRCA端子を1本のケーブルで賄えるようにした日本独自の規格。VGA端子を小型化したような端子形状。変換ケーブルを使えばコンポーネント端子とのやりとりも可能だが、映像情報だけでなく各種識別信号やプラグアンドプレイにも対応してるので完全互換ではない。対応する解像度や走査線方式の違いでD1~D5に分けられており、互換性の有無は機器の実装次第となっているので接続の際には注意が必要である。ちなみに名前はデジタルっぽいけどやりとりしてるのはアナログ信号であり、また著作権にうるさい人たち(誰)からもガードが甘いという物言いが相次ぎ、後述するHDMIに主役が移った。
HDMI
デジタル信号を非圧縮でやりとりする規格。平たく言えばDVIに音声信号及びHDCP暗号化を追加したようなもの。端子形状(一般的なタイプA)はUSBに似ている。便利な半面、著作権にうるさい人たちに都合のいい規格だったりコネクタ形状がたくさんあってわかりづらかったり、バージョンがいくつかあって1.4以上じゃないと3Dに対応してないとかいろいろややこしい。成り立ち上、DVIとの接続互換性があるが音声のやりとりは別と考えたほうがよい。
HDCPはその、著作権にうるさい人たちのための仕様なのでアナログ出力の規制の対象とならない自分で撮ったHD映像なんかであれば不要なわけだが、著作権保護規格のAACSはBD機器なんかのアナログ出力を全面的に禁止する方向で動いてるので、HDMI端子非搭載機器での再生がめんどうなことになるっぽい。

デジタルがコンポジット前提である理由は、高効率の圧縮のためには人間の目の特性を利用して鑑賞の際に判別できない情報を削減するためである。具体的には輝度差と比較して色差の判別は精度が低い点で、そのために輝度信号と色差信号を分けるのである(色信号の間引きを多めにする)。4:4:4は間引きなし、4:2:2は輝度4に対して色を2にする、といった感じ。

参考:知ってなっとく接続規格 | BUFFALO

映像出力用に画像つきでわかりやすくまとまってる。

・・・インターフェイスに触れると720pや1080iといった解像度と走査線形式も取り上げないわけにはいかないんだけど、今日のところはここまで。

動画再生の便利ツール

ffdshow
MPEG2はもちろん、DivXやXvidなど頻度の高いコーデックを網羅したDirectShowFilter(コーデックパックではない)。これをいれておけば困ることはまずないと思う。コーデックを個別にインストールするのが面倒、そんな人におすすめ。軽さがウリだったけど、最近はどうなんだろう。
BSPlayer
ffdshowとセットで使われることの多い超軽快プレーヤー。Pentium2のメモリ256MBなんていうWindows98時代のマシンでもサクサク再生できる。もっとも、あまりに古いマシンで高ビットレートの動画を再生しようとすると、CPUの処理能力よりもディスクなどの転送速度がボトルネックになる可能性はある。海外ソフトで日本語化は少し面倒かもしれない(昔はGOLD Unkoさんが日本語化パッチ作ってたけど、最近はどうなんだろう?)。
追記:最近の広告入りのやつは日本語化されてるようだ(アドウェア/マルウェアっぽいが)。なんとなく、バージョン0.8や1.0の頃のが安定してる気がする。
GOM Player
ffdshowほどではないにしても、頻度の高いコーデックをあらかじめ内蔵したマルチメディアプレーヤー。サイトには軽い動作とかあるがそうでもない。公式に日本語化されているので初心者でも安心だが、フィルタの適用をそれなりにカスタマイズできたりキャプチャも自在だったり任意の再生ポイントをブックマークできたりと機能もなかなかあなどれない。特にブックマーク機能がAVの抜きどころに非常に役立つゆえに手放せないでいる、業深きはじめ男爵である。デフォルトでもいいけど、WMPライクな11 Inspirat2スキンで使うのがグー。あとはDVDのISOイメージを直接再生する機能さえあれば個人的には十分。
GOM Playerのブックマーク機能

・・・ブックマークが記録されるファイルは\Documents and Settings\username\Application Data\GRETECH\GomPlayer\bookmark.iniであるが、再生中に残したブックマークがファイルに反映されるのはアプリケーション終了時で、当方の環境では1000行以上になると反映にかなり時間が掛かるようになる。そのせいか短時間の起動と終了を繰り返すと反映が追い付かず、過去の記録がよく消える。これを避けるには1)エディタなどでファイルを開いておき、反映が完了されるのを確認するまで起動しない、2)プレイヤーの複数起動を許可しない、といった工夫が必要になる。2009-07-27の記事も参考のこと。いちおう開発元にメールしてみたが返事は一向にこない。

・・・以前はブックマーク名にASCIIしか使えなかったものの気が付くと日本語も利用できるようになっていた。2010年1月現在のバージョンではさらにテコ入れされたようで、アプリケーション終了時の反映に以前ほどもたつかなくなった(それでも俺みたく数百タイトルのお気に入りAVの抜きどころをブックマークしようものなら、分割&バックアップは必須なのだが)。またファイルのエンコードがUTF-16(リトルインディアン、BOM付き)に変更され、さらにブックマークしている動画ファイルごとに改行がひとつ追加されるようになりファイル手動編集時の視認性が向上した。ただし、再生時に既存のブックマークを修正できない点は変わっていない。これが改善されたらいうことないのだが・・・つか、GOMのブックマークにこれほど固執してる奴なんて俺くらいなものなのか?「gom player bookmark.ini」でググってもこのページと屁理屈しかヒットしなかったし。とりあえずプレイヤーの基準として考えるとよいと思う。当然後発はGOMよりも高機能or高性能or高画質であるべきで。
どうやらブックマークでショートカットが使えるっぽい。詳しいことは2010年8月26日のメモを参照のこと。
現在は1万行くらいまでは短時間の起動と終了を行ってももたつくことはないが、2万行くらいからけっこう待たされるようになる。手持ちの全動画ファイルのブックマーク数は軽く10万行超えてるので、結局レーベル別に分割かけてマスターとして個別に保存し、お気に入りだけ抽出したファイルを作る、なんて面倒なことをやっている。これも至高のオナニーのためだ。
VLC media player
プレイヤーとしては後発ゆえ、たいていの動画の再生に対応してるしGOMよりも軽い。俺はあまり好きじゃないけど使ってる人は増えつつあるらしい。GOMでカクカクな人は試してみる価値があるのではないか。あとはMPEGのTSをPSに変換するのに使うとか。開発はオープンソース。
ウリとしてはDVDのISOイメージをマウントせずにそのまま再生できることかな。
Qonoha
唯一GOMから乗り換えの可能性を秘めていたプレイヤー。俺はシークを苦手とするWMVやMKVなファイルでどうしてもシーク性を向上させたい場合はDivXやH.264に再エンコというなんともおめでたい奴なのだが、こいつは他の追随を許さないシーク性能を誇る。WindowsMediaなんかでもグリグリ動く。何より再生中に編集可能!なブックマーク機能が素晴らしい。もし乗り換えるようなことがあったらGOMのブックマークの移行マクロ by EmEditorでも組んでみようかな、と思ったのだがバイナリで保存されていた('A`) そもそもブックマークポイントがタイムライン表示のみで任意の名前を付けられないのも残念。
SMPlayer
もともとMPlayerというオープンソースのメディアプレイヤーとしてはかなり有名なソフトがあり、そのフロントエンドのひとつがSMPlayerである。決して縄とムチと蝋燭で歓喜するフェティッシュな人たちのことではない。こいつもVLC同様、ISOイメージをマウントせずに直接再生可能だったりする。基本機能はMPlayerのそれなので、ベースが進化すればこいつも機能アップする。プレイヤーとしての資質は高いけれども、俺としてはブックマーク機能の欠如を覆すほどではない。
同じくMPlayerのフロントエンドとして有名なものにKMPlayerがある(MPlayer以外にも対応し、UNIXプラットフォームでも動作する)。とにかく機能が多いのが特徴だけど、自分でスキンいじるくらいにならないと使いやすくするのが面倒なので俺には向かなかった(ブックマークないし。
WindowsMediaPlayer
ストリーミングを含めた、ライセンス付のWMVファイルを再生する場合をのぞいて使うことはない。はじめ男爵の場合、JRAレーシングビューアでのレース再生の際にどうしても必要(条件戦までいちいちDRM解除なんぞしてられっか。
バージョンによって使える技使えない技があったりするので、アレゲな人は自動更新の対象外にしておくのが基本というか。
QuickTimePlayer
常駐する時点で糞。ffdshowのない環境でMPEG4系、MOV系ファイルを再生する場合くらいしか使わない。最新版は怨敵qttask.exeが消えたようだ。iTunesとセットで入れてる人も多い。いや今やそれが主流か。
RealOnePlayer
常駐する時点で糞。ffdshowやRealMediaSpliterなどのない環境でRealMedia系ファイルを再生する場合くらいしか使わない。こんなの誰が使うんだろう?と思ったらうちの社長が使ってた('A`)
Real Alternative
Real Playerを導入することなくRM&RMVB形式の再生を可能とするスプリッタ&コーデック&DirectShowFilterセット。万能とまではいわないが使わない手はない。
MediaPlayerClassic
MediaPlayer6.4と似たインターフェイスの、MediaPlayer互換ソフト。オレは使わないけど、MKVやOGGといった非AVIと相性がいいので、このへんの再生で苦労してる人は試してみてもいいかも。DRM解除で使う場合もあったりなかったり。高ビットレートのHDなMPEG2なんかもわりとサクサク再生できるので、入れておくにこしたことはない。んまあ、後述のMPC入れとけば済む話ではあるんだけど。
参考:GOM サポート - 一部のファイル再生時に音声が再生されない (RM,RMVB)
参考:「ヘビーローテーション/AKB48」MPEG2 20Mbps
再生の目安にどうぞ。うちの場合、GOM+ffdshowでは耐えられなかった。
CoreAVC
マルチコアCPUに特化することでデコード負荷の高いH.264の処理をスムースにした、とても優秀なデコーダー。有償だけど金出す価値はある。CUDA/DXVAによる再生支援にも対応。
DivX H.264 Decoder
CoreAVCと並び称される、H.264デコーダー。こちらはフリーなので、先に試すとよい。本家サイトのDivX Plus Codec Packに入っているが、ググればデコーダー単体もある。
MMname2
マルチメディアファイルのリネームソフト。ファイル名の後ろに各種情報を付加してくれる。それが何の役に立つかはナイショ。ぶちゃけコーデック情報の調査ツールとしても非常に優秀で、複数ファイルを同時に調査できるぶん、おなじみ真空波動研よりもこちらのほうが使い勝手がよい(波動研もプレイリストで簡易表示はできるけどね)。ただ更新がけっこう前に止まったままだ。もっとも新しいFourCCがそんな出てないのでたいして問題にはならんが。
GetASFStream
ストリーミングデータをダウンロードするのに欠かせないツール。これがフリーなんだからよい時代というか。GyaoとかみたいにCMが自動挿入されるやつでも本編だけ分離できる。名前の通り対応してるのはWindowsMediaのみ。
同種のツールにNet Transportがあるが、単体でプロトコル解析ができないので別途URL Snooperなりが必要になる。だったらGetASFStreamでいいやん、というお話。RealMedia落としたいならOrbit downloaderのほうがよい(シェアウェア)。んまあRealMediaなんてすでに死滅寸前ではあるが、Orbit downloaderはFlashその他にも対応してるのでYouTubeやニコ動を手っ取り早く落とすのにも使える。
MovieOperator
分割されたAVIやWMVを再エンコせずに結合するのに便利なツール。配信映像とかでは1GB前後で分割されてるケースがけっこう多いので重宝する。ただWMVなんかだと結合部分の前後で画像の乱れが生じたりするが、これはWMVの仕様的に仕方ないのではないか(おそらく可変フレームレートのせいだろ)。キニナル人は面倒でも再エンコするしかないのかも(ゆえにオリジナルは消さずに取っておいたほうがよいと思われ。
なお結合できるのは同じプロファイルでエンコされたファイルに限るので注意(そんなの考えるまでもなく当たり前の話なんだが・・・違うビットレートとか解像度のファイル繋げてどうするのかとw。
DirectShow Filter Tool
その名の通りDirectShowFilterの登録・登録解除・メリット値の変更を行うツール。中でもメリット値の変更機能が超便利。さらに復元機能までついてるので至れり尽くせりである。
ただ初心者はDirectShowの仕組みがよくわからないうちは手を出さないほうが無難ではある。俺の場合、一時的にあるフィルタを使いたくないとか、フィルタとコーデックの最適な組み合わせを試したりするのに至極重宝してる。

プレイヤー選びのポイント

ある程度のスペックがあるなら再生に何を使うかは好みでよいと思う。とはいってもブックマーク機能に慣れたらもうGOMから離れられないはずだが・・・。Quadコアなはじめ男爵マシンでは高ビットレートのH.264以外はGOMで全然問題なし(CoreAVC入れてるのでGOMでも問題なし)。QuickTimeやRealOneはコーデックインストールの際に導入することになるが、プレイヤーとして使う必要はまったくない。むしろ常駐を要求されるぶん、WindowsMediaPlayerよりタチが悪い。特にQuickTimeは後述するレジストリエントリを消しても復活するので大嫌いだ(プレイヤーの環境設定で変更するしかない)。iTunesとか使ってる人の気が知れない。いやきっとクソ重い常駐に耐えうるハイスペックなマシンをお使いになってるのだろう。

さておすすめとしてはVLCかSMPlayerかな。どっちも主なコーデックはほぼ内蔵してるしISO直接再生に対応してるし、GOMよりも軽いし再生時の各種補正が充実してるし。んで非常用にMPC入れとけばカンペキ。そんなわけで、ブックマーク命の俺のように確固たるポリシーがなければ今さらGOM使ってると初心者扱いされると思われる。ブラウザのようにお気に入り→ブックマークのインポート/エクスポートが容易にできるならまだしも、再生ポイント保存についてはそもそも実装してるプレイヤー自体が少ないので乗り換えの可能性はきわめて低い。んまあGOMでの再生に支障のあるファイルとかのために複数入れてるけどね。さらに個人的な要望をいえば、多機能&高機能もいいけどPiacViewみたいな右クリックでプレビューできるようなシンプルプレイヤーがあるといいのに(PicaViewによる動画再生はたぶんWMPコンポーネントを利用してるので、重いし未対応のファイルは多いしで画像や音声ほどの利便性がない。

なおたいていのプレイヤーは再生に使うコーデックを別に指定できるようになっているけれども、内部コーデックを使わない場合本体のもつ機能に制限ができたりするので注意。うちの場合GOMの内部コーデックオフにしてCoreAVCでH.264再生したら、アスペクト変更とかできなくなった。

注意

ネットで出回ってるコーデック詰め合わせパックみたいなものはは正直おすすめできない。というのも、例えばDivX5を再生できるコーデックはいくつも存在するので、再生の際にはフィルタの適用順序というものを考える必要がある(任意に変更できない再生ソフトも多い)。詰め合わせパックの中身によっては、バグの含まれた古いバージョンのコーデックの優先順位が高くなってしまうこともありうるし、より高性能なコーデックをみすみす使わないでいる可能性もある。

それなりに知識のある人は自分でフィルタのメトリック値を変更できるだろうが、自信のない人はこの手のパックには手を出さないほうが賢明(むしろ自信のある人はまず手を出さないのだが)、ffdshowやGOM Playerを入れて足りないものを単体で補っていくのが無難。

なお、インストールすると勝手にフィルタ順を変えられて、無理に変更するとソフトが動かなくなるという、困った動画変換ソフトも世の中たくさん売られている。店員のオススメを信じて手を出してしまったら、運が悪かったと思うしかない(量販店の店員なんてそんなもの、過度な期待は禁物)。

はじめ男爵設定

ベストかどうかは定かではない。

  • Windows Media Playerのインストール
  • Media Player Classicのインストール
  • GOM Playerのインストール
  • ffdshowのインストール。
  • FLV Splitterのインストール。
  • Real Alternativeのインストール。
  • QuickTime Alternativeのインストール。
  • Lazy Man's MKV とMatroska Splitterのインストール。
  • Ogg Vorbis DirectShow Filterのインストール。
  • Ogg Vorbis ACM Codecのインストール。

恐らくこれで出回ってるファイルの「再生」はほぼ可能だろう。プレイヤーのインストール順はデフォで使うプレイヤーを最後にするとよい。プレイヤー以外はすべてCow&Scorpionからダウンロードできるなくなってた('A`)

再生環境に関するぼやき

21世紀になって発売されたパソコンならまずスペック面で問題になることはない。それでもサクサク再生できない原因のほとんどはバックグランドプロセス、つまり常駐系プログラムが目一杯動いてるせいと思われる。iTunesとか。QuickTimeとか。中には別ユーザーでwinnyが動きっぱなしになっていたケースもあった。

繰り返そう。今世紀に発売されたまともなパソコンで動画再生に関してスペック不足なんてことはまずあり得ない(組み込み系とかは別だから、な!)。重い原因はほかにある。

2009-02-06追記:初稿の時点では上記に違いなかったのだが、H.264/AVCはCPUパワーが足りないとカクカクになる。“誤解されてそうなこと”で後述しているように、複雑な処理をする高性能なコーデックを使う場合は注意する必要あり。

タスクバーには現れない常駐系プログラム

このへんに潜んでいる。やたらめったら消しまくるとソフトが動かないとかマシンが起動しないってことになる。やるなら自己責任でやるべし。

  • 「管理ツール」の「サービス」
  • スタートアップ
  • レジストリエントリ「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run」

「不要なプログラム」「不要なサービス」あたりを検索ワードにしてググるといいかもしれない。

誤解されてそうなこと

圧縮率の高いコーデックは、それだけ複雑な処理を施しているわけだから、デコード(再生)時の負荷も高い。同じ画質の映像の場合、MPEG2とMPEG4では後者のほうが処理が重くなる。但し(同等の画質であれば)ファイルサイズは小さいため、リソースが不足がちな環境では前者のほうが処理が重くなることもある。重いか軽いかというのは環境や再生ソースによっても変わってくるということ。このあたりに気づかずに「重すぎ」とか言ってる人はたいていメーカー製パソコンを使っていて買ってきた状態から不要な常駐プログラムを消すという基本はおろか、iTunesやら何やら負荷のかかるソフトを入れまくってることが多い(たぶん)。

快適を求めるなら手間を惜しんだらアカン。困ったら誰かが教えてくれるなんて考えるな。知らない自分を恥と思い、知る喜びを知れ。それが無理なら金を出せ。それも嫌なら氏ね。いや死ね。

参考

GOM Player|動画の知識
初心者向け解説としてはよくできてる。