x264guiEx 1.00ではひとつしか設定のない「その他の設定」だったのだけど、いまやいろいろ増えてきたので、まとめ。
その他の設定 タブ1枚目
設定ファイルの保存場所設定画面の上部から表示できるプロファイル設定(stgファイル)の保存場所。あそこで表示されるプロファイルの実体は、この「設定ファイルの保存場所」フォルダのなかのstgファイルのこと。指定されたフォルダの階層構造も反映して表示されている(1.34以降)。プロファイルを追加・削除するには、設定画面から操作するだけでなく、「設定ファイルの保存場所」フォルダに直接stgファイルをコピーしたり、削除したりでもOK。
この設定を変えることで、「設定ファイルの保存場所」を変更し、別のフォルダを見るようにすることができる。
出力するファイルの種類のデフォルトx264guiExのデフォルトでは、出力ファイル名を指定するときに拡張子を付けなかった場合、自動的に".mp4"を追加して、mp4形式で出力するようになっている。この設定で「デフォルトのファイルの種類」を変更する事ができ、いつもmkvで出力したい場合などで便利になる。
反映にはAviutlの再起動が必要。
自動フィールドシフト(afs)オンで初期化に失敗した場合、afsをオフにしてエンコードを続行を試みるx264guiEx側でafsをオンにしたものの、Aviutl側でafsをオンにしていない場合は、設定が矛盾しているため、本来はエンコードの初期化に失敗する。
このオプションをオンにすると、そういった場合に、x264guiEx側のafsを自動的にオフにすることで、エンコードを続行する。
x264guiExでの設定ミスによるエンコードの中断を防げる代わりに、本当はafsオンで出力したかった場合には意図した出力ができないので注意。
mux正常終了後、チャプターファイルを自動的に削除するオンにすると、エンコ後にチャプターファイルを自動削除する。
キーフレーム検出時、キーフレームリストを保持するAviutlからのキーフレーム検出機能を使用した時に影響。
オンにすると、作成したキーフレームリストをエンコ後も削除しないようにする。
ポップアップヘルプを抑制するx264guiExの設定画面でのポップアップヘルプを表示しないようにする。ポップアップが鬱陶しい場合に。
視覚効果をオフにするエンコ開始と同時にエラーで落ちる場合、このオプションをオンにするとエラーを回避できるかもしれない。
視覚効果をオフにすると、描画が汚くなるので、エラー回避以外では非推奨。
反映にはAviutlの再起動が必要。
ログウィンドウを最小化で開始するログウィンドウがうっとおしい場合に。ちなみに完全に非表示にはできない。
ログウィンドウの透過をオフにするログウィンドウの透過が嫌いな時、あるいは透過をオンにしていると不具合がある場合に。透過をオンにしていると、UltraVNC使用時にログウィンドウが表示されないとの報告を頂いたので、そうした場合にはここで切ってください。
設定画面でEscキーを有効化設定画面でEscキーを押すと、画面をキャンセルして閉じるようにする。
ダイアログから相対パスで取得する実行ファイルの場所、フォルダの場所などを可能なら相対パスで設定・記憶するようにする。
エンコ前後バッチ処理を最小化で実行これもうっとおしい場合に。
その他の設定 タブ2枚目
自動マルチパスについては、このあたりに詳しく書いているので、ぜひ読んでいただければと。
x264guiExの上限設定 (まとめ)自動マルチパス時、上限をオーバーしてしまい再エンコードする際に、上限オーバーの動画を削除しない上限をオーバーしてしまった動画も残していく設定。
自動マルチパス時、ステータスファイルを自動的に削除する自動マルチパス時に作成されるx264のログファイル、~.statsと~.stats.mbtreeを自動的に削除する。
上限映像レートに対する余裕説明が長くなってしまうため、
x264guiExの上限設定 (まとめ)を御覧ください。
その他x264guiExに関する記事のまとめとかも。
x264guiExの導入>
こんにちは、あるx264のModをつかっいます
http://tmod.nmm-hd.org/x264/x264_rev2274%2B704_tMod-v2.7z
このMod、単体での使用は確認しましたが、これをx264guiExとAviUtlを組み合わせて使うとき、なぜかプログラムがフリーズします。どうが調べていただけませんか。
試しに、tMod-FFmpeg-8bit-allで試してみましたが、問題なく動いてしまいました。
申し訳無いですが、
1. たくさん出てくる実行ファイルのうち、どれを使用していますか?
2. 指定したオプション(設定画面下部に表示されます)と追加コマンド
3. フリーズするタイミング (ログウィンドウが出る前 / 出た直後 / エンコ終了直前…など)
4. OSの種類 (Win XP/Vista/7/8, 32bit/64bit など)
などを教えていただけないでしょうか。
いつも使わせていただいてます!
ちょっと質問なんですが、さっきある動画をエンコードしようとしたらこんなのが出てきます
「auo [error]: 出力音声ファイルがみつかりません。NeroAacEnc での音声のエンコードに失敗しました。
auo [error]: 音声エンコードのコマンドラインは…
auo [error]: "D:\XX\XX\XX\aviutl99k2\neroAacEnc.exe" -ignorelength -lc -br 156000 -2pass -if "D:\XX\XX\XX.tmp.wav" -of "D:\XX\XX\XX_audio.m4a"
NeroAacEnc [error]: ERROR: could not open AAC encoder
NeroAacEnc [error]: *************************************************************
NeroAacEnc [error]: * *
NeroAacEnc [error]: * Nero AAC Encoder *
NeroAacEnc [error]: * Copyright 2009 Nero AG *
NeroAacEnc [error]: * All Rights Reserved Worldwide *
NeroAacEnc [error]: * *
NeroAacEnc [error]: * Package build date: Feb 18 2010 *
NeroAacEnc [error]: * Package version: 1.5.4.0 *
NeroAacEnc [error]: * *
NeroAacEnc [error]: * See -help for a complete list of available parameters. *
NeroAacEnc [error]: * *
NeroAacEnc [error]: *************************************************************
NeroAacEnc [error]: 」
というエラーが出ます。
音声だけ出力させても同じ結果になります
ほかの動画をエンコさせてみたら、普通にエンコできました
MP4BoxやX264やneroの場所の指定は間違っていません
どうすれば治るでしょうか お願いします
おそらく、音声のサンプリングレートの問題ではないでしょうか。
neroは 8kHz/11.025kHz/12kHz/22.05kHz/24kHz/32kHz/44.1kHz/48kHzなどのような、「よくある値」のサンプリングレートにしか対応していません(neroのヘルプにも出てこないので、具体的にはよくわかりませんが)。
なんとかして、そのような音声のサンプリングレートに変更すれば、うまくいくかと思うのですが…。
こちらはffmpeg-x264_32_tMod-8bit-all.exeをつかっています。いろいろ試した結果、Unicode対応のせいかもしれない気がしました。
実は僕は中国人で、中国語のWindows 7 32-bitをつかっていあす。つまりシステムローカルはGBKで、Unicodeに非対応の日本語ソフト(Shift-JIS)を開くと文字化けがでます。
AviUtilとx264guiExは完全にUnicodeに対応していないのでNTLEAというソフトをつかってプログラムのローカルを一時的にShift-JISに変えます。こうすると文字化けがなくなります。x264guiExのGUIはUnicodeに対応しているけど、同梱のx264guiEx.iniはShift-JISで書かれていて、ローカルを変えないとこちらで文字化けになります。
そしてローカルをかえた状態でプラグイン出力の保存ボタンを押すと、ログウィンドウが出た直後にフリーズします。もう一つ、x264.exeを指定したあと、再びビデオ圧縮ボタンを押すとフリーズしあす。どうやらx264guiExはexeを読み込もうとするようです。
が、ローカルをGBKのままでいくと問題なく動いてしまいました。 x264.nl で入手したx264.exeを使うとローカルを変えたって問題ありませんでした
時間を取らせて申し訳ありません、もうしかしてこれはx264guiExでなく、こちらのNTLEA、あるいはこのModの問題かもしれません
2013-03-16(21:47) : rigayaさんへ
サンプリングレートですか・・・
確かにエンコする動画には23種類のmp3やwav、動画ファイルが2つ入っている映像をエンコしようとしてるので
その中にサンプリングレートがおかしい音声がある可能性は高いですね
とりあえずすべてのサンプリングレートを44.1kHzか48kHzに統一してみます
明日あたりに結果を連絡させていただきますね
>ゼロ様
文字コードの問題ですか…。おっしゃるとおり、x264guiExでUnicodeなのはのGUI部のみで、基本的にはShift-JISです。これはAviutlも基本的にShift-JISなので、それを踏襲している、ということになります。
日本語OS以外でどうなるのかはよくわからないです。こちらでは確認しようがなく、申し訳ないです。
>bjpe0810様
お待ちしております。
2013-03-17(00:02) : rigayaさんへ
原因が発覚しました!
先ほど音声を1つずつエンコ、映像を1つずつエンコしていったら
1つ目の動画ファイルだけ同じエラーが出ました。
この動画ファイルに問題があるようです!
とりあえずこの動画のサンプリングレートを変えてみたいと思います
また連絡させていただきます
今度は音声エンコード中61%の所で「Aviutlは動作を停止しました」というエラーが出てしまうようになってしまいました
使っている映像、音声のすべてのサンプリングレートはすべて48000にしました
原因は何でしょうか
うーん、さすがにそれだけだとわからないです…。
読み込む動画、読み込む入力プラグインの種類、サンプリングレート変換方法、といったいろいろなことが関わってくると思うので、難しいところです。
ここでいいのかな?
音声にmp4alsRM23を使ってAviUtlで見て最終フレームの終わり頃まで音声信号がある動画をエンコすると
最後にノイズが混入してしまう現象が見られました。
MPC-BEとLAV Filtersで再生すると最後にブッとノイズが走りますし、
エンコした動画をAviUtlのL-SMASH_Worksで読み込んでも最後にノイズが出ていました。
最終フレームが無音の時はこの現象は見られません。
x264guiExが原因かわかりませんが報告のみ。
追加報告ですが、このノイズはMPC-BEとLAV Filtersだと
再生中に動画をシークして最後まで再生した時に出るようです。
最初から最後までシークせずに再生した時はノイズは出ませんでした。
また、VLCだとシークしてもしなくてこのノイズは出ませんでした。
デコーダ側の問題かも…?
mp4alsRM23でデコードしてWAVファイルフォーマットにしたものを再生したらどうなりますか?
mp4alsRM23 -x input.als output.wav
あなたが挙げているもの(MPC-BE, LAV Filters, L-SMASH Works)はどれもlibavcodecのALSデコーダで出力した結果に見えます。
もし、mp4alsRM23でデコードしたものにノイズが入らないのであれば、libavcodecのバグということになりますから、こちらで開発者の方に報告させて頂きますが、そこら辺はどうなのでしょうか。
確認、宜しくお願い致します。
おぅふ。リロード(汗)
シークか...
シークならデコーダではなくdemuxer側あるいはプレイヤー側の問題の可能性の方が高そうですかね。
プレイヤーの問題も疑って、WMPでLAVFiltersを使って再生するとどうなるかも見た方がいいかもしれません。
...mp4alsRM23, MP4ファイル読み込めないのは何なんだ。ヘルプでは読み込めるような感じなのに(苦笑)
>In decompression mode (-x), infile is the compressed file (.als or .mp4).
最後にノイズが出るmp4から音声のmp4を取り出して
mp4alsRM23 -xでwavに戻してそのwavを再生するとノイズは出ませんでした。
また、x264guiExを使わずにコマンドから直接
mp4alsRM23 -MP4 -r-1 "test.wav" "test.mp4"
としても、x264guiExでエンコした時のように再生してシークすると最後にノイズが出ました。
最終フレームが無音のwavの時はこの現象は見られないのも同じです。
当然エンコ元のwavの最後にノイズは無く、これを
mp4alsRM23 -x "test.mp4" "元に戻した.wav"
として元に戻して"test.wav"と"元に戻した.wav"のSHA-1は同じことから
mp4alsRM23でエンコしたmp4のデータの最後が壊れているわけでもなさそうです。
WMPについては、Windows7を入れてから一度も使ったことがなく、
起動もしたくないので申し訳ないのですが確認していません。
あとrigayaさんには申し訳ないです。
このようなことから、x264guiExが原因というのはまずなさそうです…。
とりあえず、再生側の何が原因なのかはサンプルが無いとなんとも言えない感じですね。
手元で最後の無音ではないものを作ってみましたが、ノイズが入ることはありませんでした(リピート無し)。リピート時のLAVFiltersではともかく、L-SMASH Worksでノイズが入ることはありませんでした。
リピートの場合、デコーダのバッファをフラッシュするときに、シーク前のデータが残っているデコーダがあったりするのですが、そういうデコーダの場合、リピート直後にノイズが入ると言うことはあります。
L-SMASH Worksはそういうことが起こらないように、シーク時には一度デコーダを閉じて再度開くという対策してあるのですが。
個人的にL-SMASH Worksでも同様の現象が起こるというのが気になります。
libavcodec側の問題を捨てきれない根拠なんですよねぇ。
GraphStudioでLAVSplitter->LAVAudio->WavDest->File writerで出力したWAVがどうなるかも興味深いところですねぇ。
これの出力が異なる場合は何かしらLAVFilters或いはlibavcodec/libavformatが問題を抱えていることになりますが。
http://www1.axfc.net/uploader/so/2842127.wav
サンプルをアップロードしました。このwavを
mp4alsRM23 -MP4 -r-1 "sample.wav" "sample_als.mp4"
のようにエンコしてMPC-BEとLAV Filtersで再生してシークすると最後プツッとノイズが出るはずです。
AviUtlのL-SMASH_Worksで読み込んでも最後にノイズが見られます。
lsmasinput.auiでLibav+L-SMASHだとノイズになりますね。
Libavのみだとノイズが入らない模様。ちょっと調べますね。
LAVFiltersは手元ではシーク如何に関わらずノイズが入ります。
OK.
Libav+L-SMASHのケースは直せました。
実データ以降の領域を0埋めしなかったのがあだになってしまったようです。
avcodec.hのドキュメントに書いてあったことを怠ってしまった所為ですねー。(棒)
早急に修正をpushしますね。
LAVAudioが同じミスをしているかどうかはちょっとコード見てみないと分からないですね。
気づいたら、コメントたくさんでびっくり…
muken様、解決してくださり、ありがとうございました!
mukenさんご確認ありがとうございます。
どうやら再生側の問題のようで、x264guiExやmp4alsRM23が原因ではないようで安心しました。
なーんかGraphStudio上でもLAVFiltersでシークした後、最初の一回のみノイズ入りますね-。
あと、MPCのstandalone filterのALSデコーダでシークしてから再生してみたら、ループして落ちますね。
ちょっと色々と開発者をつついてみますね。
こちらとしてもバグが見つかって助かりました。サンプルの提供、ありがとうございます。
報告したけど、なんか反応がアレなので、ちょっとソースコード見てみたんですが、これ、一番最初のフレーム以外にシークした場合、最後のALSフレームのサンプル数が不明な状態ですね。
不明且つ送り込んだパケットのサイズを考慮しないで、本来のサイズよりオーバーに読み進めてデコードしている感じです。
で、そのせいで、オーバーリード用の末尾のパディングを0埋めしないと誤読するケースがあるみたいで、それが原因でノイズが出てる感じです。
libavcodec側で対処すべきことなのかもしれません。
ちょっとパッチ送ってみますかね。