このエントリーをはてなブックマークに追加

AviUtlでMP4(H.264)エンコードするためのインストールと設定方法

更新:

MP4(H.264)形式でエンコードできるソフトはいろいろあるが、満足できるクオリティのものは少ない。 その中でAviUtlはプラグインなどを使いそこそこ満足のいくエンコードができる。 ただ、使える状態になるまでの準備がやや面倒である。 そこでここではAviUtlでFLV、MOV、WMV、AVIなどをMP4(H.264)に変換できるようになるまでのインストールと設定の手順について記す。

x265guiExを用いたH.265フォーマットのエンコードも手順はx264guiExと同じである。 H.265を利用する場合は、以下の説明のx264の部分をx265に置き換えて読んで下さい。

また、この記事は最初2012年4月に書いたが内容が古いので、L-SMASH Worksを使った方法を追記した。 一応古い手順も残しておく。

方法1(L-SMASH Works)

AviUtl 本体

まず作者のサイト AviUtlのお部屋 から AviUtl 本体の aviutl100.zip をダウンロードする。 単に FLV、MOV、WMV、AVI などを MP4(H.264)に変換するだけなら本体だけで良い。 AviUtl でいろいろ編集したい場合は、上記ページから拡張編集Plugin「exedit92.zip」もダウンロードする。

AviUtl はインストーラーはなく、ダウンロードした ZIP ファイルを単に展開(解凍)する。 aviutl100.zip と exedit92.zip を同じフォルダに解凍する。 AviUtl で使用するプラグインは、aviutl.exe 本体と同じフォルダに置いても良いし、本体の直下に Plugins というフォルダを自分で作ってそこに置いても良い。 ここでは Plugins フォルダを作らない方法で話を進める。

aviutl(フォルダ)
    aviutl.exe
    aviutl.txt
    aviutl.vfp
    exedit.anm
    exedit.auf
    exedit.aui
    exedit.auo
    exedit.cam
    exedit.ini
    exedit.obj
    exedit.scn
    exedit.tra
    exedit.txt
    lua.txt
    lua51.dll

x264guiEx(拡張x264出力(GUI)Ex)

x264guiEx は MP4(H.264)形式でエンコードするためのプラグイン。 作者のブログ rigayaの日記兼メモ帳 にダウンロードのリンク x264guiExx265guiEx がある。 H.264 の場合は x264guiEx、H.265 の場合は x265guiEx の ZIP ファイルをダウンロードする。 ここでは x264guiEx_2.52.zip をダウンロードして説明を進める。

x264guiEx の ZIP ファイルを解凍し、その中にある auo_setup.exe を実行し、インストールする。 解凍するフォルダは上述の aviutl フォルダでなくても良い。

auo_setup.exe を実行後、VC(Visual C++)ランタイムのインストールが始まる。 ただし、VC ランタイムがインストール済みの場合はこの工程は省略される。 あらかじめ自分でマイクロソフトのサイトから Visual C++ 再頒布可能パッケージをダウンロードしてインストールしても良い。

この工程でインストールの許可を求めるウィンドウが表示される場合がある(ウィンドウが隠れている場合はタスクバーを見ると分かる)ので、その際はインストールを許可して進める。 詳しくは同梱の x264guiEx_readme.txt に説明がある。

その後「Aviutlのフォルダ」と書かれたウィンドウが表示されるので、[...]ボタンをクリックして上述の aviutl フォルダを指定し、[次へ]ボタンをクリックすると x264guiEx などのインストールが始まる。 このインストーラーを使うと、x264guiEx、x264、qaac、L-SMASH など必要なものがインストールされるので、別途 x264 などをダウンロードしてインストールする必要はない。

インストール時、自動的に x264、qaac、L-SMASH のダウンロードが始まるが、サーバーのレスポンスが悪い場合はダウンロードに時間がかかる場合がある。 インストールが終わると、ファイルとフォルダの構成は以下のようになる。 exe_filesフォルダ と x264guiEx_stgフォルダ は x264guiEx のインストーラーにより自動的に生成される。

aviutl(フォルダ)
    aviutl.exe
    aviutl.txt
    aviutl.vfp
    exedit.anm
    exedit.auf
    exedit.aui
    exedit.auo
    exedit.cam
    exedit.ini
    exedit.obj
    exedit.scn
    exedit.tra
    exedit.txt
    lua.txt
    lua51.dll
    x264guiEx.auo
    x264guiEx.conf
    x264guiEx.ini
    デフォルト.cfg
    exe_files(フォルダ)
        boxdumper.exe
        libsoxconvolver.dll
        libsoxr.dll
        muxer.exe
        qaac.exe
        refalac.exe
        remuxer.exe
        timelineeditor.exe
        x264_2851_x64.exe
    x264guiEx_stg(フォルダ)
        PS3.stg
        PSP.stg
        【以下略】

L-SMASH Works

AviUtl 単体では avi など一部の動画ファイルしか開けない。 L-SMASH Works をインストールすると、MP4、MOV、QT、3gp、3g2、F4V、M4A 等の L-SMASH 対応コンテナに格納された映像・音声データや、Flash(swf、flv)など FFmpeg 対応のコンテナフォーマットが読み込めるようになる。 FFmpeg が対応しているファイル形式は FFmpeg (Wikipedia) に一覧がある。

作者のサイト L-SMASH Works r921 - RePOPn から L-SMASH Worksをダウンロードする。 ここでは L-SMASH_Works_r921_plugins.zip をダウンロードして説明を進める。

L-SMASH Works の ZIP ファイルを解凍し、その中にある lwcolor.auc、lwdumper.auf、lwinput.aui、lwmuxer.auf の4つのファイルを aviutl フォルダに入れる。 これも Plugins フォルダを作ってそこに置いても良いが、直下に置いても良い。 ここでは直下に置いた。 ファイルとフォルダの構成は以下のようになる。

aviutl(フォルダ)
    aviutl.exe
    aviutl.txt
    aviutl.vfp
    exedit.anm
    exedit.auf
    exedit.aui
    exedit.auo
    exedit.cam
    exedit.ini
    exedit.obj
    exedit.scn
    exedit.tra
    exedit.txt
    lua.txt
    lua51.dll
    lwcolor.auc
    lwdumper.auf
    lwinput.aui
    lwmuxer.auf
    x264guiEx.auo
    x264guiEx.conf
    x264guiEx.ini
    デフォルト.cfg
    exe_files(フォルダ)
        boxdumper.exe
        libsoxconvolver.dll
        libsoxr.dll
        muxer.exe
        qaac.exe
        refalac.exe
        remuxer.exe
        timelineeditor.exe
        x264_2851_x64.exe
    x264guiEx_stg(フォルダ)
        PS3.stg
        PSP.stg
        【以下略】

インストールされるファイルやフォルダ構成は x264guiEx のバージョンによって多少異なる場合があるが、特に問題ないのでそのまま作業を続ける。 x264_2851_x64.exe のファイル名はバージョンにより異なる。

設定

システムの設定

AviUtl のメニューから[ファイル]→[環境設定]→[システムの設定]を選択する。 最大画像サイズに 幅「1920」、高さ「1080」などを設定する。 ファイルを開こうとした際「1280x720(または1920x1080)を超える画像サイズのファイルは編集できません。最大画像サイズはシステムの設定で変更できます。」という警告が出て動画を読み込めない場合は、設定値を大きくすると読み込めるようになる。

設定は AviUtl を再起動(いったん終了して、再度起動)すると反映される。

また、ファイルを開こうとした際「編集できる最大フレーム数は320000フレームまでです。最大フレーム数はシステムの設定で変更出来ます。」と出る場合は、[最大フレーム数]を 320000 から 640000 などに変更する。 フレーム数は30fps(30フレーム/秒)で180分の動画の場合、30×60×180=324000フレームになる。

入力プラグインの優先度

もしファイルが開けないなどのエラーが出る場合は、入力プラグインの優先度を変更してみる。 AviUtl のメニューから[ファイル]→[環境設定]→[入力プラグイン優先度の設定]を選択する。 L-SMASH Works を選択し、上や下に移動させて試してみる。 設定したら AviUtl を再起動して反映させる。

MP4(H.264)でエンコード

動画ファイルを開く

AviUtl を起動し、変換したいファイルをウィンドウにドロップするか、メニューからファイルを開く。 この際「ファイルの読み込みに失敗しました。このファイル形式には対応していないか、対応するコーデックやプラグインが登録されていない可能性があります。」という警告が表示される場合、以下の原因が考えられる。

  • 入力プラグイン L-SMASH Works をインストールしていない。または正しくインストールしていない。
  • 動画のファイル名に特定の記号や機種依存文字、外国語(中国語など)の特定の文字などが含まれている。 ファイル名に特定の文字(すべてがダメというわけではない)が含まれている場合、本警告が表示されるのでファイル名を英数字などに変更する。

プラグイン出力

AviUtl のメニューから[ファイル]→[プラグイン出力]→[拡張 x264 出力(GUI) Ex]を選択する。 ※このメニューは何かしら動画ファイルを開かないと表示されない。 x265guiExの場合は[拡張 x265 出力(GUI) Ex]を選択する。 以下、x265guiEx の場合は x264 を x265 に置き換えて読む(若干ファイル名が異なるものもある)。

ウィンドウ左下にある[ビデオ圧縮]ボタンをクリックする。 その後表示されたウィンドウで x264.exe(ウィンドウ左上)、qaac.exe(ウィンドウ右上)、mp4関連実行ファイル(ウィンドウ右下)のパスを確認する。 上述の x264guiEx のインストーラーを使ってインストールした場合は、自動的にパスが設定されるので特に設定は必要ない。 x264guiEx インストーラー使用時、以下のように指定されている。

  • x264.exe は .\exe_files\x264_2851_x64.exe
  • qaac.exe は .\exe_files\qaac.exe
  • remuxer.exe は .\exe_files\remuxer.exe
  • timelineeditor.exe は .\exe_files\timelineeditor.exe
  • muxer.exe は .\exe_files\muxer.exe

上記のようにデフォルトでは相対パスで指定されているため、AviUtl 一式のフォルダを移動しても基本的にパスの再設定は必要ない。 自分で絶対パスで指定した場合は、AviUtl 一式のフォルダを移動したときにパスの設定も見直す必要がある。 [...]ボタンをクリックするとファイルを選択できる。

映像・音声の品質

映像や音声にノイズ等が見られるときは、上述の[ビデオ圧縮]ボタンをクリック後に表示される x264guiEx の設定ウィンドウで品質を調整する。 自分の好みで設定するか、ウィンドウ上部にある[プロファイル]からiPhone、ニコ動、PSP、アニメなど予め用意された設定を選択する。 また、ウィンドウ右上の[その他の設定]をクリックし、[自動マルチパス]タブにある「上限映像レートに対する余裕」の値を大きくすることで品質が改善されることもある。 例えば 5(デフォルト値)から10に変える。

ファイルを保存

[ビデオ圧縮]ボタンをクリックする前の画面に戻り、保存先を選び、ファイル名を付けて、[ファイルの種類]で mp4 file を選び[保存]をクリックする。 エンコードが始まるので、処理が終わるまで待つ。 どの位置をエンコードしているかはスクロールバー(シークバー)の位置で分かる。 エンコードが終わると「総エンコード時間」などが表示される。 以上で変換までの簡単な流れは終了となる。

関連


方法2(ds_input、コーデックパック)

以下はds_inputやコーデックパックを使った方法である。 以下のものをダウンロードする。

  1. AviUtl
    AviUtl 本体。 ここでは最新版の aviutl100.zip をダウンロード。
    AviUtlのお部屋
  2. x264guiEx(拡張x264出力(GUI)Ex)または x265guiEx
    x264 を使用してエンコードを行うプラグイン。 最新版は x264guiEx_2.x系 で、リンク先から x264guiEx_1.x系 もダウンロードできる。 ここでは x264guiEx_2.51v2.zip をダウンロードして説明を進める。
    x264guiEx (H.264の場合はこちらをダウンロード)
    x265guiEx (H.265の場合はこちらをダウンロード)
    rigayaの日記兼メモ帳 (作者のサイト)
  3. ds_input(DirectShow File Reader プラグイン for AviUtl)
    DirectShow経由でファイルの読み込みをするためのプラグイン。 Windows Media Playerで再生可能なファイルを AviUtl で読み込めるようになる。 ここでは ds_input026a.lzh をダウンロード。
    ds_input(DirectShow File Reader プラグイン for AviUtl)
  4. コーデックパック
    AviUtlでMOV、FLV、MP4などのファイルが開けない場合はコーデックをインストールする。 コーデックパックはいろいろあるがCCCPが便利。 CCCP から使用しているOSが64bit版でもCCCP 32bit版をダウンロードする。 理由は後述
  5. MPEG-2 VIDEO VFAPI Plug-In
    MPEG2を読み込むためのプラグイン。 MPEG-2を使わないなら必要ない。
    MPEG-2 VIDEO VFAPI Plug-In
  6. リサイズフィルタ
    リサイズ用フィルタ。 エンコードのみ行うなら必要ない。
    ResizeFilter

インストール

  1. AviUtl
    ダウンロードした AviUtl の zipファイルを解凍する。 解凍してできた aviutl.exe があるフォルダの下に Plugins フォルダを作る。 ここではデスクトップに aviutl というフォルダを作り、以下のような構成の場合で解説する。
    aviutl
        aviutl.exe
        aviutl.txt
        aviutl.vfp
        Plugins
    
    (斜体はフォルダ)
    
  2. x264guiEx または x265guiEx
    x264guiEx(またはx265guiEx、以下x265に置き換えて読む)のzipファイルを解凍する。 解凍したフォルダの中にある auo_setup.exe を実行し、インストールする。 auo_setup.exe実行後VCランタイムのインストールが始まり(インストール済みの場合は省略される)、その後表示されるウィンドウでaviutl本体があるフォルダを指定するとx264guiExなどのインストールが始まる。 最初のVCランタイムのインストール時、インストールの許可を求めるウィンドウが表示されている場合がある(ウィンドウが隠れている場合はタスクバーを見ると分かる)ので、その際はインストールを許可して進める。 詳しくは同梱の x264guiEx_readme.txt に書いてある。 このインストーラーを使うと、x264guiEx、x264、qaac、L-SMASH、VCランタイムなど必要なものがインストールされるので、別途x264などをダウンロードしてインストールする必要はない。 インストール時、自動的に x264、qaac、L-SMASH のダウンロードが始まるが、サーバのレスポンスが悪い場合はダウンロードに時間がかかる場合がある また、バージョン2.15から音声エンコーダがneroAacEncではなくqaacになった。 バージョン2.17はQuickTimeのライブラリを利用するようになり、自動的にインストールされるようになっているが、もし上手くいかない場合は予め手動でQuickTimeをインストールしてみる。
  3. DirectShow File Reader プラグイン for AviUtl
    DirectShow の lzhファイルを解凍する。 ds_input.aui を Pluginsフォルダに入れる。
  4. コーデックパック
    上述のCCCPをダウンロードした場合は、インストーラーをダブルクリックしてインストールする。 インストーラーの表示は英語だが、特に何もせず指示通りそのままインストールすれば良い。
  5. MPEG-2 VIDEO VFAPI Plug-In
    (※必要なければインストールしなくて良い) MPEG-2 VIDEO VFAPI Plug-In の lzhファイルを解凍する。 m2v.vfp、m2vconf.exe を Pluginsフォルダに入れる。 m2v.vfp のファイル名(拡張子)を変更し、m2v.aui にする。
  6. リサイズフィルタ
    (※必要なければインストールしなくて良い) ResizeFilter の zipファイルを解凍する。 ResizeFilter.auf、DLLフォルダ を Pluginsフォルダに入れる。

以上の作業で以下のようなフォルダ構成になる。 インストールされるファイルやフォルダ構成は x264guiEx のバージョンによって多少異なる場合があるが、特に問題ないのでそのまま作業を続ける。 x264_2744_x64.exe のファイル名はバージョンにより異なる。 exe_filesフォルダ と x264guiEx_stgフォルダ は x264guiEx のインストーラーにより自動的に生成される。 x265guiExの場合はx264をx265に置き換えて読む(若干ファイル名が異なるものもある)。

aviutl
    aviutl.exe
    aviutl.txt
    aviutl.vfp
    exe_files
        boxdumper.exe
        libsoxconvolver.dll
        libsoxr.dll
        muxer.exe
        qaac.exe
        refalac.exe
        remuxer.exe
        timelineeditor.exe
        x264_2744_x64.exe
    Plugins
        ds_input.aui
        x264guiEx.auo
        x264guiEx.conf
        x264guiEx.ini
        (m2v.aui)
        (m2vconf.exe)
        (ResizeFilter.auf)
        x264guiEx_stg
            PS3.stg
            PSP.stg
            【以下略】
        (DLL)
            (sse2filter.dll)
            (sse2filter_yuy2.dll)
            (wndfuncs.dll)

※斜体はフォルダ。
※( )内のファイルとフォルダは、MPEG-2 VIDEO VFAPI Plug-In と リサイズフィルタ を入れた場合のもの。

設定

設定は 上記 のL-SMASH Worksを使った方法と同じ。

MP4(H.264)でエンコード

基本は 上記 のL-SMASH Worksを使った方法と同じ。

エラーの原因

以下の点を確認する。

  • ds_input をインストールしていない。または正しくインストールしていない。
  • コーデックパックをインストールしていない。またはコーデックパックが正しくインストールされていない。 CCCP 64bit版は本警告が表示されてファイルが開けない場合があるので32bit版を使用する。

方法3(MP4Box、Nero AAC Codec)

以下はさらに古い方法である。 上記手順と重複するものは省略している。

ダウンロード

上記以外で使用していたもののみ記す。

  • x264.exe
    MP4(H.264)形式でエンコードするためのプログラム。 x264guiExで必要となる。
    http://www.x264.nl/x264_main.php からダウンロードする。 encoder (x264.exe): にある32bit 8bit-depthの「mirror 01」などからダウンロードする。 自分の環境に合わせて32bitや64bitを選ぶ。
    また、 http://www.videolan.org/developers/x264.html からもダウンロードできる。
    Binaries から自分の環境にあったバイナリー(コンパイル済み実行ファイル)をダウンロードする。
    Windows 32bit版なら win32/、Windows 64bit版なら win64/ ディレクトリへ進み、x264-r2377-1ca7bb9.exe 等をダウンロードする。
    日付が新しいものや rxxxx の番号が大きい方が新しいバージョン。
    10b と書いてあるファイルは、おそらく 10bit-depth 版で、10b なしは 8bit-depth。
  • MP4Box
    MP4マルチプレクサー(mux、複数の入力を1つにまとめるもの)。 x264guiExで必要となる。 「Download (direct link)」のリンクからダウンロードする。
    MP4Box
  • Nero AAC Codec
    AAC音声変換プログラムで、x264guiExで必要となる。 現在ダウンロードできない。
    Nero AAC Codec

インストール

  1. AviUtl
    ダウンロードしたAviUtlのzipファイルを解凍する。 解凍してできたaviutl.exeがあるフォルダの下にPluginsフォルダを作る。 ここではデスクトップにaviutlというフォルダを作り、以下のような構成の場合で解説する。
    aviutl
        aviutl.exe
        aviutl.txt
        aviutl.vfp
        Plugins
    
    (斜体はフォルダ)
    
  2. x264.exe
    x264.exeをaviutlフォルダに入れる。
  3. x264guiEx(拡張x264出力(GUI)Ex)
    x264guiExのzipファイルを解凍する。 auo_setup.exe を実行し、インストールする。 詳しくは同梱の x264guiEx_readme.txt に書いてある。 手動でインストールするには、auoフォルダ内にある x264guiEx_stgフォルダ、x264guiEx.auo、x264guiEx.ini をPluginsフォルダに入れる。 x264guiEx_stgフォルダ内にあるファイルもそのままコピーする(以下フォルダのコピーは同様)。
  4. MP4Box
    MP4Boxのzipファイルを解凍する。 解凍したフォルダ内の MP4Box.exe、js32.dll をaviutlフォルダに入れる。
  5. Nero AAC Codec
    Nero AAC Codecのzipファイルを解凍する。 win32フォルダ内にある neroAacEnc.exe をaviutlフォルダに入れる。
  6. リサイズフィルタ
    ResizeFilterのzipファイルを解凍する。 ResizeFilter.auf、DLLフォルダをPluginsフォルダに入れる。
  7. DirectShow File Reader プラグイン for AviUtl
    DirectShowのlzhファイルを解凍する。 ds_input.auiをPluginsフォルダに入れる。
  8. MPEG-2 VIDEO VFAPI Plug-In
    MPEG-2 VIDEO VFAPI Plug-Inのlzhファイルを解凍する。 m2v.vfp、m2vconf.exe をPluginsフォルダに入れる。 m2v.vfpのファイル名(拡張子)を変更し、m2v.auiにする。
  9. Microsoftのコンポーネント
    ダウンロードした各コンポーネントをインストールする。
  10. フォルダ構成
    以上の作業で以下のような構成になる。
    aviutl
        aviutl.exe
        aviutl.txt
        aviutl.vfp
        js32.dll
        MP4Box.exe
        neroAacEnc.exe
        x264.exe
        Plugins
            ds_input.aui
            m2v.aui
            m2vconf.exe
            ResizeFilter.auf
            x264guiEx.auo
            x264guiEx.ini
            DLL
                sse2filter.dll
                sse2filter_yuy2.dll
                wndfuncs.dll
            x264guiEx_stg
                PS3.stg
                PSP.stg
                (以下略)
    
    (斜体はフォルダ)
    

このエントリーをはてなブックマークに追加