Entry

COWON A3で再生できるH.264動画の作り方

…今時、2007年に発売されたCOWON A3使っている人がどれだけ使っているのか謎なのだけど、まぁ備忘録として。でもこの機種は、大容量で、サポートしてる形式が多くて、バッテリーの持ちがやたら良くて、その他諸々含めて非常に優れた製品だと思うのですよ。途中のファームウェアアップデートで動画再生能力が飛躍的に向上したのは印象深い。

この機種、2007年発売という事もあり、最近ですっかり主流の動画コーデックとなったH.264の対応がやや弱い。具体的に言うと、Baselineプロファイル(携帯機種向けの軽い)しか対応していない。しかし、単にBaselineプロファイルでエンコードしても、映像が崩れてまともに再生できない場合がある。実際には以下のようになる。

Baselineプロファイル

過去に公開されていた、AviUtl用のx264フロントエンドプラグイン、x264guiというソフトウェアで作ったMP4動画は問題なく再生できていたのだけど、引き継がれて開発が行われているx264guiExで作ると、上記のような問題が出てしまうようになり、以前から悩んでいた。

その原因がようやく判明。その手がかりになったのは以下の一文。

The shinng Sun

TCPMPでAVCのブロックノイズが起こらないようにする方法

TCPMPやCore PlayerはBaselineのH.264/AVCでないとブロックノイズがたくさん出たり、色が反転したりします。 HandbrakeでBaselineのAVCファイルを作成するには以下のようにH.264の設定を合わせてください。

level=30:cabac=0:bframes=0:ref=1:me=umh

 これでTCPMPやKinomaPlayer、WM版Windows Media Playerで閲覧できるようになります。

これをx264guiExで設定する場合、多分以下のようになる。(「x264」タブ参考「フレーム」タブ参考

  • 「x264」タブの「プロファイル」を「baseline」にする。
  • 「x264」タブの「H.264 Level」を「3」に設定。
  • 「フレーム」タブの「動き予測アルゴリズム」を「Uneven Multi-Hexagon」にする。
  • 「フレーム」タブの「参照距離」を「1」にする。
  • bframes=0(最大連続Bフレーム数)及びcabac=0(CABAC)は、Baselineプロファイルにした時点で既に設定されいる様子なので、何もしない。

残りの設定は考えるのが面倒というかそもそもよく分からないので、自分の場合は「チューニング」にお任せ。
色々試してみたところ、参照距離を「1」に設定するだけでもCOWON A3で上手く再生できたので、それだけでも問題ないと思う。A3は参照フレームの数が多くなると対応できない模様。しかし、参照フレームの数が少ないと言う事は、ビットレートは悪化するはず。
ついでに、ref=0、ref=1、ref=2、ref=3で比較してみたところ、やはりまともに再生できたのは0と1だけだった。

Comments (0 件)

コメントを残す

メールアドレスが公開されることはありません。