いつものしらべてもでてこない

調べた事を書きます

aviutlでh264のmuxに失敗した際に手動でx264とm4aをmuxする方法。

aviutlでmuxに失敗しましたと出た。
フォルダを見ると264ファイル(Video)とm4aファイル(Audio)があった。
これらをmuxする方法。

muxer.exeを使ってmuxする

muxはmp4コンテナに動画や音声を詰め込む作業です。
aviutlはmux出来ません、よってx264guiや拡張NVENC等は外部のmuxerでmuxしています。
aviutl上からコマンドラインで実行しているだけですので同様にコマンドラインで実行します。

yambと言うGUI操作でmuxが出来る簡単なフリーソフトもあります。
こちらは20GBを超える場合に"io error"を出して読み込めないのでここでは割愛します各自検索してみてください。
http://yamb.unite-video.com/download.html

command.exeを起動する

Windowsキーを押して検索欄にcommandと入力するとcommand.exeが候補に出るのでEnterで起動します。
フォルダ名>
と表示されると思います。
コマンドを入力する際は
>
を先頭に付けて説明します。

ここから先はファイルがどこにあるかで変わってくるのでファイルの場所を以下の様に仮定します。
aviutl
c:\aviutl\aviutl.exe

hoge.264,hoge.m4a
c:\My Video

ファイルの場所が分からない場合はエクスプローラーで場所を調べて下さい。
コマンドラインの操作はわからないかもしれませんが少しだけ説明します。

muxer.exe

さて、muxerはどこにあるかと言うとaviutlをインストールした場所で変わります。
ここでは"c:\aviutl"と仮定します。

コマンドを入力します。
>c:\aviutl\exe_files\muxer.exe

と入力してENTERを押してもだらだらと長いヘルプが出てこない場合はaviutlがどこにインストールされているか探してください。
分かった場合は次の「muxする」の項目へ進んでください。
muxerの名前はx264guiの画面を開いて右下の外部muxerのファイル名を見たり次の操作で調べてください。

コマンドは一行入力したらENTERキーを押して実行してください
>cd c:\aviutl\exe_files
>dir

dirコマンド

dirは現在のフォルダにあるファイルの一覧を表示します。
そこにmuxerがあればその名前を使ってください。

cdコマンド

cdは現在のディレクトリを移動します。
先頭の一文字を入力してからTABキーを押すと、候補がある場合は自動で次々と選択してくれるのでこれを利用しましょう。

c:\aviutlと言うフォルダがある思う場合は、
cd c:\a
と入力したらTABを何回か押す、と行った具合です。
行き過ぎた場合はSHIFT+TABで逆順になります。

muxする

muxer.exeと入力するとヘルプが出てきます。
形式的には次のように使います。
muxer.exe -i input.264?fps=60 -i input.m4a -o ouput.mp4

通常、fpsは明示する必要は無いので?fps=60は無くても構いませんがmux後にずれたりする場合は明示してください。
29.97fpsの場合は?fps=30000/1001と明示しないと駄目な場合もあります。
23.976fpsの場合は?fps=24000/1001となります。

実際には次のコマンドを入力します。
改行されている様に見えるかもしれませんが1行になっています。
>c:\aviutl\exe_files\muxer.exe -i "c:\My Video\hoge.264" -i "c:\My Video\hoge.m4a" -o "c:\My Video\output.mp4"

フォルダ名に半角スペースが混じっているのでダブルクォートで囲っていますが先に説明したカーソルキーによる入力補完を使うと自動で囲ってくれます。
-oは出力ファイル名ですが、場所を明示しないでoutput.mp4とすると現在の作業フォルダに作成されるので探さなくて済むように明示しています。

mux途中で失敗した場合

mux出来ない場合は打ち間違いかディスクスペースが一杯だと思うのでエラー表示を見て確認してください。


以上。