- x264guiEx 3.17以降、rgb出力時に色が入れ替わってしまう問題を修正。ご指摘いただいた問題を修正。
- qaacが使用できない場合、自動的にデフォルトの音声エンコーダに戻してエンコードを続行するように。現状のx264guiExはデフォルトでは音声エンコーダとしてffmpegのAACエンコーダを使用しているけど、なぜかqaacを使用しようとしてインストールが正常にできておらず失敗するケースがあるみたい。(過去のx264guiEx導入方法の記事を参考にして導入してしまった?)
そこでそうした場合に自動的にデフォルトの音声エンコーダに切り替えてとりあえず出力自体は完了するよう変更した。
- mp4出力できない音声エンコーダを選択した場合、デフォルトの音声エンコーダに戻してエンコードを続行するように。mp4出力に対応しない音声エンコードを選択した場合、これまではエラー終了してしまっていたのを、自動的にデフォルトの音声エンコーダに切り替えてとりあえず出力自体は完了するよう変更した。
- ログ出力に映像と音声の長さを表示するように。エラー発生時の参考となるように、Aviutlから渡される情報をそのまま表示。
- 一時ファイルの削除・リネーム失敗時にその原因を表示するように。一時ファイルの削除・リネーム失敗はないとは思いたいのだけど、やはりたまにあるようで、これまでそのあたり細かくエラーメッセージを出していなかったりしたので、きちんと表示してエラー原因をつかみやすくした。
- mux後ファイルがない、ファイルサイズが小さすぎる等のエラーメッセージで、対象のファイル名を表示するように。- 一時ファイルがない、サイズが0、あるいはドライブがない、空き容量がないなどのエラーメッセージで、対象のファイルないしドライブ名を表示するように。具体的にどこファイル・ドライブが問題なのか、きちんと表示してエラー原因をわかりやすく。
- 自動フィールドシフト(afs)を使用しない際、不要なメモリ確保を行わないように。不必要なメモリ確保を行っていたのを削除。
- 映像用のメモリ確保をplaneごとに行い、メモリ確保エラーを起こりづらいように。映像フレームは場合によっては大きなサイズになるため、メモリ確保に失敗することがある。Aviutlの仮想メモリ空間は4GBだけど、こうした大きなサイズのメモリ確保の失敗は、Aviutlが確保したメモリが4GBまで到達していなくても起こることがある。
これは仮想メモリ空間上で、大きなサイズの
連続したメモリ領域を確保できない場合があるため。そこで、映像フレームを輝度(Y)と色差(UV)に分けて確保することで、少しでもメモリ確保がしやすいように変更した。
※x264guiEx 3.00から導入方法が変更されていますのでご注意ください。ダウンロード>>x264guiEx 3.xxの導入方法x264guiExのエラーと対処方法