・
自動マルチパス時に、ステータスファイルを自動で削除するオプションを追加。 設定画面右上、「その他の設定」から。
念のため書いとくと、afsのエラー時自動解除もそうだけど、これらの設定はx264guiEx.confに保存される。(バッチ処理ごとの保存ではない)
・YC48->NV12/NV16/YUV444のSSSE3版/SSE4.1版をいじった。わずかに高速化。
が、(色形式変換とかたいして重くもないのであたりまえだが)エンコ時間に差はほぼない。
ダウンロード>>x264guiExの導入>
スポンサーサイト
http://rigaya34589.blog135.fc2.com/blog-entry-119.html#cm
で音声関連、ビットレート計算関連の要望を出した
tneです。
要望の反映ありがとうございます。
また要望なのですが、
レンダリングの際に指定したビットレート、動画サイズでレンダリング
した時に、指定サイズ以下だった場合は自動でビットレートを
足し引きして自動再レンダリングできるように出来ませんか?
-------------------
当方15分の動画を作り、40.00MBで書き出しする時には
あらかじめ計算機で計算後書き出しし、その値から
1Kビットあたりに増える動画サイズを算出、その後
1Kビットあたりの動画サイズ/余裕がある動画サイズ
と計算して出した値を+させています。
-------------------
なので実装するとしたら、
出力サイズが指定値より増減していた場合
自動で映像ビットレートor音声ビットレートを
差分分増減させて再レンダリングする。
また、その動画で出力した物は最後に
_adjust
をつけるとか。
ご検討宜しくお願いします。m(__)m
ステータスファイル自動削除機能の追加ありがとうございます。
まさかこんなに早く対応していただけるとは・・・。
ありがたく使わせていただきます。
>tneさん
自分が言うのもなんですが、x264は指定にかなり近いサイズで出力してくれますし
率直に言ってそんな細かい微調整をしてもあまり意味があるとは思えないような・・・・。
レート再調整というのはどのぐらいで妥協するのかといった要素もあり、音声のほうで調整するなど様々な方法もあるので、やはりその都度判断したほうがいいと思います。
ビットレートの再調整について、もう少し書くと…
エンコォォォ様のおっしゃる通り、ある程度長い動画ではx264の2passエンコはなかなか指定値を外さないと思います。1kbpsもずれないでしょう。
Aviutl0.99j + x264guiEx 1.10 + x264r2085の自動マルチパス(2pass)でやってみましたが、
例1
31201frames, 23.976fps, 21分41秒
--bitrate 250 → 出力 249.79kbps
例2
33943frames, 23.976fps, 23分35秒
--bitrate 500 → 出力 500.22kbps
x264さすがですね。ほぼぴったり。
もちろん、短い動画では「はずす」こともあります。
1092frames, 24.000fps, 45秒
--bitrate 400 → 出力 416.23kbps
このように「はずした」場合、わたしなら音声のレートを削って「音声のみ出力」を行って調整します。一番確実ですから。(muxは手動になるけども)
動画のレートを合わせたい場合、tne様の方法もありますが、違った方法があるので書いておきます。(ご存知なら流してください)
他の設定をそのままにして「自動マルチパス」から「マルチパス - N pass」に切り替えて、3pass目を行います。(2pass目までのステータスファイルを使うので、1.10で追加したステータスファイルの自動削除はオフにしておきます。)
3pass目
--bitrate 400 → 出力 405.97kbps (ぐっと近づいた)
調子に乗って4pass目
--bitrate 400 → 出力 403.02kbps
さらに調子に乗って5pass目
--bitrate 400 → 出力 401.12kbps
もっと調子に乗って6pass目
--bitrate 400 → 出力 401.47kbps (あら…?)
がんがん調子に乗って7pass目
--bitrate 400 → 出力 401.96kbps (およ…?)
まあ、こんな感じでNpassにより、より指定レートに近づける事ができます。上の場合だと4pass目ぐらいでもう十分じゃないでしょうか。あんまりやっても逆に外れて行ったりします。
こちらの方法なら、Aviutlで編集プロジェクト(aup)を保存しておけば、あとは「自動マルチパス」から「マルチパス - N pass」に切り替えるだけのお手軽な方法です。その時ついでに音声のほうも少しいじってやることなども出来ます。neroなら1kbps単位でいじれます。
ただ注意して欲しいのは、これで画質が向上したりはしないことです。10passとかしても画質的にはほぼ意味はないです。画質が気になるなら--me tesaとか--ref,--merange,--submeあたりを増やす/上げるとかして2passのほうが時間的にも効率いいはずです。
了解です。承知しました。
以後教えていただいた情報でチャレンジしてみます。
書き込み失礼します
x264guiEX_1.10-2passエンコ中で、エンコ開始直後に終了してしまいます
auo [error]: x264が予期せず途中終了しました。x264に不正なパラメータ(オプション)が渡された可能性があります。と表示されていました。
なにか解決方法はありますか?
x264とAviUtlは最新のバージョンです
過去記事の方法も試してみましたが、だめでした
>過去記事の方法も試してみましたが
とあるので1pass目から失敗する、ということだと思いますが、
ログの
auo [info]: arguments passed...以下を教えていただけると助かります。
auo [info]: arguments passed...
--preset slower --tune animation --bitrate 200 --pass 3 --stats "C:\Users\kazuo\Desktop\test.stats" --qpstep
12 --qcomp 0.7 --min-keyint 4 --slices 4 --deblock -2:-2 --partitions p8x8,b8x8,i8x8,i4x4 --ref 5
--no-fast-pskip --no-dct-decimate --colormatrix smpte170m --colorprim smpte170m --transfer smpte170m --sar 1:1
--level 3 --videoformat ntsc --frames 34987 --input-res 512x288 --input-csp nv12 --fps 24380323/1000000 -o
"C:\Users\kazuo\Desktop\test.mp4" "-"
raw [info]: 512x288p 1:1 @ 24380323/1000000 fps (cfr)
mp4 [info]: audio muxing feature is disabled.
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 Cache64
x264 [error]: ratecontrol_init: can't open stats file
x264 [error]: x264_encoder_open failed
これでいいでしょうか・・・?
ログを見せてもらいどうもです、原因がわかりました。
ステータスファイルがないとのことなので…
「マルチパス - Npass」を選んでいましたら、とりあえず「自動マルチパス」にしてみてください。それできちんとマルチパスエンコードできるはずです。
詳しくは
http://rigaya34589.blog135.fc2.com/blog-entry-146.html
の「マルチパスについて」のあたりを読んでみてください。
言われたとおりにしてみたら解決しました
初歩的なことでお騒がせして申し訳ありませんでした
ありがとうございました
要望です。
x264.exeなどの指定に関してなのですが、
絶対パスじゃなくて相対パスも指定可能にしていただきたいです。
それから提案なのですが、
GUI側からアップデートチェックも出来ればいいですね。
以上です。
開発ありがとうございました。
>相対パス
分かりました、なんとかしてみます。
アップデートチェックは、せっかくご提案頂きましたが、やり方が(プログラムをどう書くのかが)よくわからないですし、配布場所なりブログの場所なりを変えたりしたくなったときに困りそうなのでやめておきます。今のところそんな予定はないですけどね。
ありがとうございます。
アップデートの件了解しました。
出来そうな感じはするのですがね。
もし実装するとしたら
・クライアント→サーバverファイルの内容をロード
・一致した場合、更新用プログラムを起動
・x264(GUI)のハンドルを停止
・拡張x264の存在する場所にダウンロード(上書き)
・終了ウィンドウ表示
ってところでしょうか。
Vectorに登録すれば5MBのみのスペースでレンタル可能ですので
そちらをアップデートサーバにしてしまうっていうのもありかもしれないですね。