x264guiEx 0.10

・Aviutlのキーフレーム検出の進捗表示が等間隔になっていないことがあったので修正。お恥ずかしいミスであった。

ダウンロード>>


スポンサーサイト



コメントの投稿

非公開コメント

No title

ようやくひと段落というか追いつけました。

自分の008の機能盛りVerはqpfile開きっぱなしだし誤字ありだし、009での提案は0で割る可能性ありのままだったし…お手数をおかけしましたorz
(ちなみに&8は0,1,2,3,4,5,6,7,16,17,18,...でした。個人的にはビット演算の勉強になりました。)

で、あと考えていたのが(Yan氏版では問題なしの)出力ファイル名ダメ文字問題なのですがアイデアだけ。
mp4boxやtc2mp4Modでmuxするときのファイル名はexample-hoge.mp4なりダメ文字を含まない適当なファイル名に置き換えておいて、
muxが終わったらそのファイルをoip->savefileなファイル名に置き換えるというのはどうでしょうか。

Re: No title

>ビット演算
&0, &1, &3, &7, &15, &31のどれかでやるようにしようかとも思ったんですが(そうすれば等間隔になる)、書いてみるとどう考えても読みにくいコードになるので、多少遅くても余りのほうがわかりやすくていいかな、と思って余りにしました。ビット演算は難しいですね。

>ファイル名置き換え
個人的に、よくわからんファイル名が(一時的にでも)勝手に登場するってのが好きじゃないんですよ…なのでやってないんです。解決策としてはそれしかないとは思うのですが。

No title

ファイル名のアイデアですけど、元はx264outのmuxのやり方(以下抜粋)

# %5 pid プロセスID
set PID=%5
set TMPF=tmp%5__

:mp4
mp4box -add "%TMPF%.m4a" "%TMPF%.mp4"
if exist "%CHAP%" mp4box -chap "%CHAP%" -lang jpn "%TMPF%.mp4"
if exist "%CHAP%" del "%CHAP%"
move /y "%TMPF%.mp4" "%OUT%.mp4"
del "%TMPF%.m4a"
exit

なら、ほんの少しの変更だけでスマートな回避ができるかなぁと思っての発言だったのですが、
丸投げよくないと思って自分でやってみようとしたところ、mux前からかなりの部分でoip->savefileを使っていて大改修になっちゃいそうだったので、提案は一旦取り下げということでお願いします。
x264guiでもダメ文字でmp4box使用時はNGですね。

なんといいますか、2passのログ(x264.statsやx264.stats.mbtree)はx264.exeのあるフォルダに生成されますよね。
同様に、そのx264.exeのあるフォルダに、最終出力以外の(一時)ファイル全部(強いて言えばqpfileやtimecodeなども?)を生成して、
最終出力ファイルだけを出力指定フォルダに指定ファイル名で生成すれば、
それらの一時ファイルをいらない(または謎のファイルが出てくるのはまずい)と思う方にも問題ないのではないか?なども思ったりはしました。(そういう出力をしてるx264プラグインあったような・・・?)

そういう構想だけなら簡単にできるんですけど、プログラミング力が追いついておりません。
いつか自分でやってみたいなとは思っております…。




MP4boxのダメ文字が無くなればいいですね!(ぇ



>>ビット演算
>&0, &1, &3, &7, &15, &31のどれかでやる
>書いてみるとどう考えても読みにくいコードになる

& 2 ^ ( (oip->n / 100)を 0 になるまで÷2(ビット右シフト?)した回数 ) - 1

で合ってるだろうか不安、というかこの演算に時間がかかって余り演算より遅くなる悪寒ががががが


>等間隔
> int info_interval = MIN(oip->n / 100, 15) + 1; //更新間隔の調整

+1したことで0割りは回避しているものの微妙な間隔になっているのが少し気になってしまっております。
x264のcommon.hにあった

static inline int x264_clip3( int v, int i_min, int i_max )
{
return ( (v < i_min) ? i_min : (v > i_max) ? i_max : v );
}

を改変して(intじゃなくてもいいように?)、

> int info_interval = clip3(oip->n / 100, 1, 16) 1; //更新間隔の調整

みたいな形にしたら綺麗になるかなぁなどと思ったりしました。
ただこれだけの為に0.11なんてしないでください。



駄文長文失礼しました。取り込みどうもありがとうございます。

Re: No title

>MP4boxのダメ文字が無くなればいいですね!
まったくです!
なんで""でくくってもだめなんでしょうね…

>& 2 ^ ( (oip->n / 100)を 0 になるまで÷2(ビット右シフト?)した回数 ) - 1

info_interval = oip->n / 100;
int i;
for (i = 0; i < 5; i++)
 if ((info_interval>>i) == 0)
  break;

info_interval = 1<<i - 1;

それで
if ((i_frame & info_interval) == 0)
 //表示

ですね。たぶん。これで高速化できます。

>等間隔
うーん、気になりますか。
clip3のほうがきれいなので、次はそうします。

>0.11
もうやることあんまりないです。いや、ないほうがいいですけどね、バグが少ないってことで。一時ファイルについては、せっかく構想していただいたのですが、「そこまでせんでも…」という思いが先に立ちまして…すみません。
プロフィール

rigaya

Author:rigaya
アニメとか見たり、エンコードしたり。
連絡先: rigaya34589@live.jp
github twitter

最新記事
最新コメント
カテゴリ
月別アーカイブ
カウンター
検索フォーム
いろいろ
公開中のAviutlプラグインとかのダウンロード

○Aviutl 出力プラグイン
x264guiEx 3.xx
- x264を使用したH264出力
- x264guiExの導入紹介動画>
- x264guiExの導入
- x264guiExのエラーと対処方法>
- x264.exeはこちら>

x265guiEx
- x265を使用したH.265/HEVC出力
- x265guiExの導入>
- x265.exeはこちら>

QSVEnc + QSVEncC
- QuickSyncVideoによるHWエンコード
- QSVEnc 導入/使用方法>
- QSVEncCオプション一覧>

NVEnc + NVEncC
- NVIDIAのNVEncによるHWエンコード
- NVEnc 導入/使用方法>
- NVEncCオプション一覧>

VCEEnc + VCEEncC
- AMDのVCE/VCNによるHWエンコード
- VCEEnc 導入/使用方法>
- VCEEncCオプション一覧>

svtAV1guiEx
- SVT-AV1によるAV1出力
- svtAV1guiExの導入>
- SVT-AV1単体はこちら>

VVenCguiEx
- VVenCによるVVC出力
- VVenCguiExの導入>

ffmpegOut
- ffmpegを使用した出力
- ffmpegOutの導入>


○Aviutl フィルタプラグイン
自動フィールドシフト (ミラー)
- SSE2~AVX512による高速化版
- オリジナル: aji様

clfilters 
- OpenCLベースの複数のGPUフィルタ集
- 対応フィルタの一覧等はこちら

エッジレベル調整MT (ミラー)
- エッジレベル調整の並列化/高速化
- SSE2~AVX512対応
- オリジナル: まじぽか太郎様

バンディング低減MT (ミラー)
- SSE2~AVX512による高速化版
- オリジナル: まじぽか太郎様

PMD_MT
- SSE2~AVX512による高速化版
- オリジナル: スレ48≫989氏

透過性ロゴ (ミラー)
- SSE2~FMA3によるSIMD版
- オリジナル: MakKi氏

AviutlColor (ミラー)
- BT.2020nc向け色変換プラグイン
- BT.709/BT.601向けも同梱

○その他
Amatsukaze改造版
- AmatsukazeのAV1対応版

x264afs (ミラー)
- x264のafs対応版

aui_indexer (ミラー使い方>)
- lsmashinput.aui/m2v.auiの
 インデックス事前・一括生成

auc_export (ミラー使い方>)
- Aviutl Controlの
 エクスポートプラグイン版
 エクスポートをコマンドから

aup_reseter (ミラー)
- aupプロジェクトファイルの
 終了フラグを一括リセット

CheckBitrate (ミラー, 使い方, ソース)
- ビットレート分布の分析(HEVC対応)

チャプター変換 (使い方>)
- nero/appleチャプター形式変換

エッジレベル調整 (avisynth)
- Avisynth用エッジレベル調整

メモリ・キャッシュ速度測定
- スレッド数を変えて測定
- これまでの測定結果はこちら

○ビルドしたものとか
L-SMASH (ミラー)
x264 (ミラー)
x265 (ミラー)
SVT-AV1 (ミラー)

○その他
サンプル動画
その他

○読みもの (ミラー)
Aviutl/x264guiExの色変換
動画関連ダウンロードリンク集
簡易インストーラの概要

○更新停止・公開終了
改造版x264gui
x264guiEx 0.xx
RSSリンクの表示
リンク
QRコード
QR