動画エンコード



    ◎HDDレコーダーを用いたTVアニメのエンコード方法の解説です(実写の場合も基本は同じです)。

     一応約3年位やってみて、自分の方法(ノウハウ)を整理する意味で記述することにしました。
     ・・・と言いつつも新しい試みを中心に試行錯誤して作成していく予定です。

     ちなみに、PCキャプチャボードは使用しません。


2009-10-18 更新(その22 を微更新)


     ◎その1、使用機材

      ・Pioneer DVR-77H(HDDレコーダー) 私は2台所有(使用)しています。

       使用機材(HDDレコ、ビデオデッキ)については、ビデオ機器のコーナーも見てみて下さい。

      ・ブラウン管TV(私の所有は、東芝 Face 21ZS17(20インチ)あまり良くないかも)
      ・そこそこのスペックのWindows PC(Windows2000かXPを推奨)
      ・出来ればPC用にブラウン管CRT(液晶とブラウン管では、極端に言えばろうそくと太陽ぐらい
       輝度、コントラストが違う。液晶では微妙な諧調差が判別出来ない)
      ・DVD-Rメディア(DVD-RWでも良い)
      ・各種ソフトウエア

     ◎その2、機材設定

     ◎その3、DVD2AVIの設定

     ◎その4、TMPGEncPlus 2.5    (2006-05-05 追加)

     ◎その5、AviUtl Ver0.99       (2006-05-21 追加)

     ◎その6、Lame(コマンドライン)    (2006-05-28 追加)

     ◎その7、リサイズ計算方法      (2006-06-11 追加)

     ◎その8、120fps化について      (2006-07-17 追加)

     ◎その9、動画再生(デコード)について  (2006-08-06 追加)

     ◎その10、エンコーダについて      (2006-09-04 追加)

     ◎その11、量子化行列について     (2006-10-01 追加)

     ◎その12、地上デジタル放送のカラーバー調整について (2007-01-03 追加)

     ◎その13、ドット妨害について      (2007-01-03 追加)

     ◎その14、704x396物語 その1(楽観編) (2007-01-03 追加)

     ◎その15、704x396物語 その2    (2007-02-12 追加)

     ◎その16、iTunesを利用する      (2007-03-17 追加)

     ◎その17、TE4Xp (TMPGEnc4.0 XPress) その1 (2007-05-04 追加)

     ◎その18、TE4Xp (TMPGEnc4.0 XPress) その2 (2007-06-10 追加)

     ◎その19、作例 (自分メモ その1)   (2007-09-24 追加)

     ◎その20、DivX Pro 6.7        (2008-02-27 追加)

     ◎その21、Blu-ray(BD-R)データの編集 その1(準備編)  (2008-11-21 追加)


     ◎その22、Blu-ray(BD-R)データの編集 その2(編集・エンコード編-1)

                                          (2008-12-07 追加)


     ◎その23、Blu-ray(BD-R)データの編集 その3(編集・エンコード編-2)

                                          (2008-12-31 追加)



     ◎その24、YouTube向け用高画質エンコード法  (2009-03-22 追加)

      実際にやってみればわかることなのですが、仮に640x480pixelで20Mバイトの動画
      (*.avi)をYouTubeにアップロードすると、YouTube側で自動的に即座に再エンコードを行い、
      320x240pixelサイズで3Mバイト位に変換されてしまいます。通常この仕様の動画(*.FLV)を
      私たちはYouTubeで視聴しているのです(WMV9だろうがDivXだろうが関係なく低画質になる)。

      しかしYouTubeで視聴出来る動画画面の右下に「高画質で表示する」「HQ」という
      表示ボタンがある動画は、高画質仕様でYouTubeにアップロードした動画なのです。
      動画の拡張子が「.FLV」か「.mp4」であれば高画質仕様だとYouTube側は説明しています。

      「*.mp4」の方はやったことがないのでわかりませんが、「*.FLV」フォーマットでの
      高画質エンコード法について今回は解説します。


     @、PC本体へVP6をインストールする。

      K-Lite Codec Packというフリープログラムのパックを探してきてインストールします。
      このパックの中にはVP6のエンコーダの他に、ffdshow経由でWindows Media Player
      (WMP)にて*.FLV動画を再生可能にするデコーダ等も含んでいますが
      その辺のインストール法は省略します。


     A、AviUtlへのFLV出力プラグイン インストール

      まるも製作所さんよりFLV(VP6/MP3)出力プラグインを入手し、インストールします。


     B、AviUtl(ver0.99系)にてアップロードしたい動画を編集する。


     C、FLV出力プラグインの設定

      「ファイル」→「プラグイン出力」→「FLV(VP6/MP3)出力」を選択すると以下のような
      設定画面が出ます。

      


      まず音声のエンコードの設定から解説します。

      「形式」はLameエンコーダがPCにインストールされているとして、「属性」のところでは、
      44.1kHzは有りますが、48kHzは選択出来ません。

      不思議に思ったので、まるも製作所さんに思い切って質問してみた所、
      「.FLV」フォーマット自体が48kHzをサポートしていないからという回答と資料(Adobe社の)を
      頂きました。このフォーマットで選択出来る周波数は、44.1kHz、22kHz、11kHz、 5.5kHzのみ
      との事です。


      次にVP6の映像設定について解説します。

      「圧縮プログラム」の所はVP60、VP61、VP62が選択出来るのですが、自分はVP62を
      選択しています。

      VP60、61、62の違いは、簡単に言うとVP61がVP60+エンコーダ本体でのNR調整設定追加版、
      VP62がVP61+エンコーダ本体でのSharpフィルタ調整設定追加版ということです。


      ◎以下は1回目のシングルパス(最高画質)をした時のGeneralページの画面です。
     
      

      VP62自体のエンコーダの性能はそんなによくないようです(MS-MPEG4 V1〜V2位かな?)。
      油断していると、細かいブロックノイズがすぐ出ます。それと、エンコード時間はWMV9
      より長いです(泣)。

      よって、1-PassのVBRではなくCBRの選択を勧めます。
      ビットレートですが、30fps、640x480サイズで約3000kbpsがブロックノイズを出さない絶対条件
      の目安です(ひでえなぁ)。動きの少ない動画であれば、もっとビットレートを下げられるでしょう。

      それと、ビットレートは動画サイズの面積比とfps比で下げてOKです。例えば480x360サイズで
      24fps狙いであれば、上記絶対条件ビットレートは

        3000kbps x ((480x360)/(640x480)) x (23..98/29.98) = 1350kbps

      まで下がります・・・が、ブービートラップがありまして、「.FLV」フォーマットの垂直方向
      ピクセルは、16で割り切れないと再生時に画面上方に緑色の横縞(8ピクセル分か?)が
      出ますので、490x368pixel等が推奨サイズとなります。

      ↓訂正:2009-09-22

         490x368はNG。理由は、今度は水平方向の490が8で割り切れないので
         右端に数ピクセル同じ映像がダブって表示されます。よって、512x384サイズを
         推奨します。


      「Noise Reduction」と「Sharpen」は好みで入力してください。

      「Max Frames Btw Keys」 → ここは凄く重要な所で、「最大キーフレーム間隔」
      の事(Btw = Between)です。恐らく30fpsであれば300(多分10秒間)でOKです。


      ◎次にAdvancedページの説明です。

      

      ここはデフォルトのままで特にいじらないでOKです。ヘタにいじると元の設定に
      戻せなくなる??


      ◎最後にSettingsページです。

      

      ここも特にいじる必要はありません。


     D、エンコードし終えてから再生して、出来上がった動画の品質チェックをする。

      で、特に異常が無ければ以下のように

     

      ・・・な動画の出来上がり♪ YouTubeにアップロードしましょう。


     (↓2009-05-22 追記

     
上記方法で.FLVファイルをアップロードしても、YouTube側で再エンコードされてしまうようです。
      画像サイズはそのままの時もあるし、リサイズされる場合もあるみたいです。
      ファイルサイズは大体10MBくらいにされるみたいなので、2パスエンコードかな?
      品質は若干劣化しますね。)


     「*.mp4」フォーマットの方は、ニコニコ動画で流行しているフォーマット
     らしいですね。ニコニコ〜の方にアップロードしている方のHPに色々と
     テクニックが記載されているようです。


     最後に、まるも製作所 の茂木様、お忙しい中に親切に対応して頂きまして、どうも
     有難うございました。



     ◎その25、YouTube向け用mp4エンコード  (2009-06-07 追加)

      640x480サイズで23.976fpsの動画をエンコードしてみただけです。

      そんなに本腰を入れてやったわけではないので軽く記載しときます
      (そのうち清書(?)しますんで)。

      Googleで「YouTube mp4 エンコード」とかで検索して出てきたやり方のままで、
      NetFx20SP1_x86.exe NetFx20SP1_x86ja.exe vcredist_x86.exe という3つの
      ファイルとNeroDigitalAudio(zip)を探してきてPCにインストールし、最重要な
      Seraphyさんのx264.1163.release01.rarを更にAviUtl v0.99系に登録し、AviUtl
      にてプラグイン出力から拡張x264出力(GUI)にて*.mp4ファイルを作成します。

      あらかじめプリセット値が登録されているのでこれを利用しました。

       今回は、プリセット:高画質 でシングルパス-品質基準VBRでQ=18にした。

      音声は、NeroAACエンコーダ使用で、AAC-LCでxxxkbps(xxxは仕様で決めてね)。

      で、出来上がり。H264は上下方向のPANが余り綺麗にいかないので自分的には
      あまり好みではないのですが。Q-pixel検知が効いてるからかな?


      結局YouTubeの方で再エンコードされてますね(泣)。ただ、HD画質表示させたい
      のであれば、1280x720サイズで作成しないとmp4を作成する意味がないみたいです。

      640x480サイズであれば、*.FLVで問題なしでは?


     ◎近況・・・訂正情報を1つ。DivX(DivX503b1031pとか)の”p”の文字は、Bフレームを使用
            してエンコードした場合に付きます。ここの文字が”m”になることもありますよ。
            mの場合は映像のみで、音声なしの場合だったかな?(うろ覚え)


(本HPのトップ頁に戻る)