Avisynth 初心者質問スレ Part9 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
Avisynthの初心者質問スレです
・質問する前に
1.まずは、過去ログを読むか検索エンジンなどを使って調べましょう
2.次に同じような質問がないかCtrl+Fでスレッド内を検索しましょう
・VapourSynthの話題はできるだけ専用のスレでお願いします
・荒らし・煽りは綺麗にスルーしましょう
■前スレ
Avisynth 初心者質問スレ Part8
http://echo.2ch.net/test/read.cgi/avi/1463062591/
■関連スレ
・Avisynthを絶讃ιょぅょ Part32
http://echo.2ch.net/test/read.cgi/avi/1486535501/
・お前らのショボイAvisynthスクリプト貼ってください part4
http://echo.2ch.net/test/read.cgi/avi/1486693045/
・VapourSynth Part2
http://echo.2ch.net/test/read.cgi/avi/1488452387/
■外部リンク
・Avisynth wiki(英語)
http://avisynth.nl/index.php/Main_Page
・avisynth.info (旧 AviSynth Wiki、日本語)
http://www.avisynth.info/
・AviSynth ニュース
http://news.avisynth.info/ Its で24,30,60用の関数それぞれでKFMDeintを呼び出しているんだけど、
CUDA側のメモリ使い果たしてcache shrink してしまう
エンコードは進んでいるから無視する手もあるけど…
1050Ti の 4GB で足りてないんだけど、なんか上手い方法はないだろうか? >>524
KFMDeintに24p,30p,60pの3クリップを返すモード(mode=3)を追加した。
複数のクリップ返すからちょっと使い方が独特なので↓これ見て
https://github.com/nekopanda/AviSynthCUDAFilters/wiki/KFMDeint
あんまテストしてないから何か問題あった教えて >>525
多謝多謝
軽くテストしてみたけど、2.5GB以内で収まる感じでいけました
これからいろいろ試してみます 重複フレームを自動削除、フレームを解体して任意のFPSに
再構築できる? 1sec60fpsを解体して2sec30fpsで再構築とか 教えてチャソでスマソ。
24fpsのビデオの重複フレームをオートで検出して削除、
さらにfpsの概念を消去し、重複フレームを削除した後の、
fpsに拘束されていないフリーのフレームの集合体を新たに時間系列で
任意のfpsで再構築(re-packing)、ここまでAvisynthで出来るんじゃろか? >>532
よくわからんけど重複フレームを削除して可変フレームレートにしたいってこと? 同じ絵が続いても現代のエンコーダは効率よく圧縮してくれるのでやめたほうがいい
変態VFRは後で取り回しが非常にしづらい上に大して縮まない 重いフィルタリングさせたり、次世代の激重エンコーダに8kを処理させるなら、時間がそれなりに短縮できそう >>536
これTAS動画用のフィルタだし完全に同一フレームじゃないと駄目かもな ノイズと動きの区別って難しいからな
>>539
他のもあるんだし、いろいろ試せばよいのでは?
エンコード前に解析パスが必要になるケースが殆どだろうから、面食らうだろうけど
あと、VLCはvfrに弱いので、他のソフトで再生確認しましょう ハイスコアガールって24、60混合だけど
自動テレシネの方法が調べても出てこないです
簡単にテレシネする関数ないですか?
Tdeint、QTGMCを使うなどの方法があればいいのですが >>544
そこまでしてVFRしたいか?という・・・
QTGMCで60fpsでとっておけばいいじゃん・・・ >>544
KFMDeintでできるよ
Amatsukazeに突っ込むのが一番楽だけど >>546
ありがとう。
Amatsukazeは知らないので、ちょっと調べてみます。 24,60混合って言っても24の方が多いからVFRにすればフレーム数半分程度まで減るし
24部分はQTGMCより逆テレシネの方がきれいだしね
自動でやってくれるから手間もかからないし >>544
AutoVFRとかを利用してもいけるけど
>545と同じでそこまでしてVFRしなくてもいいんじゃ?って感じだけどね
あそこまで混在激しいと誤爆率もすごそうだし
60p、60i(インタレ維持)、VFR、カクついても気にしないなら30p、24p(自動系)も試して
自分の目で確かめてどれが一番妥協できるかどうかやってみたら?
細かいこと気にしないなら30p、24pでも妥協できると思うけどね
なんとしてでもVFRできれいにやりたいなら手動でやるのをお勧めしたいがそうじゃないしな > Aviutlでフィールドシフト
それVFRにならないから・・・ ハイスコアは全BOBでいいだろ
フレーム数多くてもエンコーダがうまくやってくれるし 自動判定はAmatsukazeが強いわ
自分の環境だと、何故かハイスコア3話と5話はエンコードそのものに失敗するけど、
その他は今の所うまく行ってる 誤爆率は高めでもいいなら
BOB().SelectEven
でも結構いけるけど上下のパンにかなり弱い
でも何も考えないで出来るから簡単
BOB()を他にすれば制度は上がるかもしれないけど Amatsukazeって強力なGPUないと
使えないんじゃ >>546
そういえば技術的には、あのVFRってどう実現しているんだろう?
俺が知らないだけだろうけど、タイムコードを出力しているようでもないし。
いやさ、Amatsukaze以外でKDeintのVFRっていけるのかしら? という疑問なんだけど そういやAmatsukazeがないとタイムコード出力できないからKFMDeintだけじゃVFRにできないね >>556
CPUでもできなくはないけど、QTGMCとか重いフィルタ結構使ってるから遅すぎるんだよね timecodeなら
avs2pipemod --info input.avs
ではダメ?
x64はまだ非稼動だから正直よくわからないですが誰でも思いつく手段ということで KFMDeintは2passすればできるって前に作者さんが言ってたけどまだ試してない
Amatsukaze経由じゃないとタイムコード出ないの? 2passは精度が少し上がるだけ。タイムコード出力するのと2passは関係ないよ
AviUtlの自動フィールドシフトとかは1passでタイムコード出力するし
タイムコード出力する機能はAmatsukazeにしかないから出ない
24や30の部分は同じフレームが重複して出力されるから
Amatsukaze使わなくても>>536のようなフィルタ使えばVFRにできるかも Amatsukazeのtempフォルダみると、v0-0-main.timecodeという mkv ver.2 形式のタイムコードがあるね
KFMDeintとかKFMCycleAnalyzeでも出てくるんだろうか
KFMDumpFMで出てくるテキストのバイナリだと聞いた気がするが それはAmatsukazeが出してるんだよ
KFMDeintのpass=2or3でフレーム継続時間を付加して出力するけど、
これを解釈してタイムコードに変換するプログラムをAmatsukaze以外知らない DumpでTFM+TDecimateみたいなのが出てくるかと思ったけど、60fpsの全然違う物が出てきて諦めた記憶 KFMDeint(pass=3)の後ろにExactDedup置けばAmatsukazeとほぼ同じタイムコード出力できたわ
これで大丈夫っぽい というわけで、Amatsukaze使わなくても、KFMDeint+ExactDedupでVFRいける TFMと同じく素直にタイムコード出せるようにしてほしいの VFRなんてよほどの事がなければやらんわ
60の部分は一旦bob化してから(5,0,2)みたいな感じで24fpsに間引けば概ね平滑に動く AvisynthはVFRにネイティブ対応してないからやりにくいよな
>>572
それだと若干カクカクになっちゃうから、真の24fpsにするのに
玄人はmvtools使って中間フレームを生成するんだよ >玄人はmvtools使って中間フレームを生成するんだよ
これは頭に「自称」を付け忘れてるね 素人な俺はivtc_txt60mc使ってるわ
これじゃなきゃカクカクして話しにならんし AviSynthPlus-r1576をインストールしてTemporalSoftenをつかってみたのですが
UVでは効果がありませんでした。
chroma_thresholdが引数にあってもUVには関係がないということでしょうか?
AVISource()
TemporalSoften(4,4,8,15,2)
return last
どこかおかしいでしょうか? まずr1576を使ってる時点でおかしいかな。最新はr2728-MTだし。
Avisynthplus/Downloads - Avisynth wiki
http://avisynth.nl/index.php/Avisynthplus/Downloads
Releases ・ pinterf/AviSynthPlus ・ GitHub
https://github.com/pinterf/AviSynthPlus/releases
TemporalSoftenは使ったことないので知らん。 公式の安定版だしr1576というのはおかしくないと思うけど… TemporalSoften動作?バグ?の修正がMTのほうで入ってたからそれかな?
自分、TemporalSoften使ってないから調べもなんもしてないけど >>579
r1576は「公式の安定版」ではなく、「公式のリリースがそこで途絶えただけ」でしょ。
そのあと色空間の拡張やら諸々の修正等が入ってるんだし、今更r1576をわざわざ使う意味もない。
そのへんをちゃんと理解した上で、それでもr1576を使うというなら止めないけど、
わざわざr1576の挙動を確認してくれる人なんて、まずいないと思うよ。
>>580が言うように、TemporalSoftenに関する変更もいくつか入ってるようだし。 >>576
そうそう、中間フレーム生成しなきゃカクカクして話にならんよな >>583
ivtc_txt60mcって、60iテロップ部分を24fps化した時に移動量が均等に見えるように
MVTools2を使って中間フレーム(補間フレーム)を生成して使うものだと思うんだが、
なにがアホなんだ・・・? VFRに対応してない環境がほとんどだった昔ならいざ知らず
今はテロップ部(or テロップのあるフレーム)のみBOB化してVFRにしてる人がほとんどでなかろうか
速度もBOB化するほうが早いし、テロップもとても滑らか >>583
君に同意って意味だったんだが、何がアホなんだ・・・
まぁ俺もそんな面倒なことしないでVFRにするんだけどね >>585
VFRで全く問題ないと思うけど、>>583のような初心者にはやっぱり敷居が高いんだと思うよ 最近VFR面倒くさくなって
Q(K)TGMC して SelectEven()
結果サイズもあんまり変わらないし・・・
あとまだ再生環境しょぼいから 60iテロップ類はavsを通さずにffmpeg(v4.0以降)に全部丸投げした方がヌルヌルするけどな w3difなどでbob化してるだけじゃね
ま、avisynthだとyadifmod2、TDeintで妥協するか、QTGMCで画質を追い求めるかの二択だから
その隙間は欲しいところではある D3DVP、CPU負荷は大きく減って大助かりだがあまり高画質とは思えんかったな。
他フィルタとの相性も微妙だし、Avisynth+でしか使えないのも不便 Avisynth+にせずに、Avisynthにとどまる理由というかメリットってなんだろ。 エンコ時間がかかるかもしれないが現状環境が安定していればそのまま安定でいける
入れ替えた場合のプラグイン相性や動作確認などで消費するであろう手間と時間がかからない
ハードウェアのドライバとかもそうだけど安定動作を求めるなら下手に更新しないのも手
時間が取れない場合は特にね
もちろん問題があってだましだまし使ってる場合は別だけどさ Avisynth+ r1576からpinterf版に更新したらTDeintでTMM使うとエラー出て使えなかったから今もr1576使ってるわ chikuzenさんが書き直してTMM2に転生したから、そっち使うといいと思う
ちなみにplus r2000あたりで互換性が無くなってるからr1576じゃ使えないと思うけど
>>595
互換性かな
ハードがSSE止まりとかあんまり重い処理しないとかなら無印のほうが安全だと思う 古い環境で安定してて満足してるならそのまま使うのは全然いいけど、
新しい機能やフィルタが使えないことに文句言うなってのはあるな
古いバージョンなんて誰もメンテしないし、開発者からしたら
新旧の両方に対応するのは、作業が増えて面倒になるだけ ちゃんと動作する_gpu25.dllのx64版があれば
avisynth+やavisynth64やavisynth3へスグにでも乗り換えるのに。
QTGMCとかWarpsharpとかfft3dgpuとか重めのフィルタもスイスイ動かせる
PrefetchAndCache()が重宝するからなかなか_gpu25.dllを卒業できない。 32bitはAviSynth
64bitはAviSynth+
って環境にしよう 32bitは最適化した自ビルドのAvisynthMT
64bitはAvisynthPlus Neoだな
32bitはAviUtlと組み合わせて使うときぐらいだけになってきた
でも遅くはない。ThreadRequeastとITSが安定して動くし 皆さんMT処理って何使ってるんです?
PCを2700Xに入れ替えたもののCPU使い切れなかったり使い切れないまま落ちたりでうまくいかなく... AVSは全体的なCPU負荷はせいぜい25%ぐらいで抑えたほうが複数エンコさせたときにいろいろ捗る。 >>603
32bit版AVSはThreadRequestだなぁ
デフォルトパラの10倍以上の数値入れると速い
MTは使わない
64bit版Plusはprefetchおまかせ
フィルタはみんな最適化自ビルドしてる plusのMT版はx86もx64もQTGMC・txt60mcHybridもすさまじく重くなる
少し前に出た人じゃないけどr1576(x86)使ったほうが速度はマシでThreadRequest入れてる
60iテロップが無ければMT版入れられるんだけど・・・ Neoじゃないやつはprefetch1つしか書けないからね・・・ _gpu25のやつは何個でも、フィルタごとにprefetchを割り当てれる。
追加個数が大漁に増えてもGPUへの負荷は微々たる量だし
x86でしか使えないから、avisynth.dll内で取り扱えるメモリアロケーションの上限がだいぶ厳しいけど >>602
なるほど、そういう住みわけも有りなのね
plusの64bit版はなんかのバグで結局使ってないや(確認したらawarpsharp.dllでエラー出るって書いてた
>>606
自分の場合はQTGMCのセットアップが簡単になっただけで値千金に思える
無印(というかSE't氏版MT)では相性だかなんだかでちゃんと動かないことが多かった 32bitAVSでThreadRequest使うときは
終始SetMTMode(5,1)だな
一番安定する 昔のアナログテレビっぽい感じを出したくて
地デジのソースを
crop( 180 ,0 , -180 ,-0)
AddGrain(23)
ReduceBy2()
AddGrain(23)
ReduceBy2()
blackmanresize(720,480)
とかやってみたんですけど、
ゴーストや縞模様や垂直同期ずれみたいなのって再現する方法ってありますか? >>611
ゴーストはLGhost使えばいんじゃね? 110CSの某番組をLWLibavVideoSourceで読み込んだらフレーム数が少ないんだけどなんで?
repeatフラグはtrueでソースにドロップはない。 >>613
それ、俺もなるは
popさんのL-SMASH Works r935 release2なんなんだけど
サンプルを提供するにしても旧verでの挙動を確かめてからのほうがいんだろかって考えたら
めんどくさくて元のDGIndexに戻っちゃった >>611
古いプラグインだけど、VirtualDubのOldCinema Filterってのがそのまんま使える気がする
LoadVirtualDubPlugin()で読み込めばsynthで使える
ゴーストはovelayで座標ずらしたクリップを透過率x%で重ねてしまうのはどうだろ >>613
MurdocCutterで頭少し切ってやると、ちゃんとならない?
たまにその症状になるけど、これで大丈夫なケースが多かった いろいろアドバイス頂いて
https://imgur.com/a/PHjSUn8
上がオリジナル
下が以下のスクリプトを書いた結果です。
crop( 180 ,0 , -180 ,-0)
ReduceBy2()
LGhost(1, 10, 30,1, 40, 50)
ReduceBy2()
NoiseGenerator( Gaussian = true ,Amount = 40 ,LumaOnly = false )
blackmanresize(720,540)
LoadVirtualDubPlugin("C:\vdub\msu_oldcinema_20.vdf","MSU_Oldcinema",0)
ConvertToRGB32()
MSU_Oldcinema(247, 223, 181, 0, 1, 10, 10, 15, 70, 3, 20, 5, 50, 150, 0, 3, 100)
ConvertToYV12()
ソースはフリーオ買って最初に取った10年前の地デジソースです。
画角が4:3にぴったりだったんで使ってみました。
ゴーストが出てるとアナログって感じがしますね サムネじゃ判らなさそうなので
http://k.pd.kzho.net/1540564353115.jpg
こんな感じです。
プラグインを教えて頂きありがとうございます。 つーか、なぜ事故の映像を選んだ?
なんども事故の映像みせられてもグロ扱いされるだけだろうに。 ■ このスレッドは過去ログ倉庫に格納されています