Avisynthを絶讃ιょぅょ Part32 [無断転載禁止]©2ch.net

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名無しさん@編集中 (ワッチョイWW 5979-fgRd)2017/02/08(水) 15:31:41.08ID:2mxlUPLa0
「AviSynthを絶賛」というのは、聞いたら答えたり報告したりなどギブアンドテイクな作業を指す。
厨と呼ばれて当然の事を、調べもしないで訊くバカが住み着くスレではないので、
avisynth.infoぐらいは読んでおくように。

【前スレ】
Avisynthを絶讃ιょぅょ Part31
http://echo.2ch.net/test/read.cgi/avi/1383985211/

【日本語による解説】
avisynth.info
http://www.avisynth.info/

【実家】
AviSynth
http://avisynth.org/mediawiki/Main_Page

0929名無しさん@編集中2019/06/20(木) 08:13:12.33ID:X+hMk6kj

0930名無しさん@編集中 (ワッチョイ 4101-FJaM)2019/06/24(月) 16:14:11.78ID:W7kLGrnu0
Neo r2824+AviSynthCUDAFilters 0.5.0の組み合わせで、
OnCPU(2)
KMergeStatic(KTGMC(Preset="Slower", TR2=2, SourceMatch=3, Lossless=2), last, KAnalyzeStatic(last))
OnCUDA(2)
とやると、AvsPmodでプレビューしようとするとフリーズする。

ので、r2822+0.4.6の組み合わせに戻した。
Amatsukazeだと、r2822+0.5.0っぽいんだけどね

0931名無しさん@編集中 (ワッチョイ 510f-uxod)2019/06/24(月) 18:24:16.52ID:mvBBO4nx0
>>927
> K(Q)TGMCは単品で使うと結構情報が欠落しちゃう

どういう情報が欠落するの?
単品で使ってたので気になる

0932名無しさん@編集中 (ワッチョイ 6d01-f41m)2019/06/27(木) 06:42:25.72ID:wcH9uM1V0
DGIndexだけでなく、UnsharpHQやTIVTC、dfttestのmod版があったのか・・・
https://github.com/299792458m?tab=repositories

作者ブログ
http://299792458m.blogspot.com/

0933名無しさん@編集中 (ワッチョイ d95f-5hf/)2019/06/27(木) 09:16:04.92ID:ngxDGNNr0
>>931
https://i.imgur.com/bhoxmSQ.png
片フィールド補完のnnedi3をベースに使ってるから、こういうふうに細かいところがたまにおかしくなる
EdiModeを片フィールド補完じゃないTDeintとかにすれば大丈夫だけど、そうすると全体的に汚くなるから、
KMergeStaticの方がいいと思う

0934名無しさん@編集中 (ニククエ 6d01-f41m)2019/06/29(土) 20:29:10.05ID:kxD9zxCO0NIKU

0935名無しさん@編集中 (ワッチョイ 8abd-3te8)2019/06/30(日) 03:44:40.35ID:3Lhkcog70
>>469
DLLはどこにあるの?

0936名無しさん@編集中 (ワッチョイ 150f-kB4y)2019/06/30(日) 07:51:11.03ID:n+jQD7td0

0937名無しさん@編集中 (ワッチョイ 8abd-3te8)2019/06/30(日) 10:24:04.73ID:3Lhkcog70
>>936
あんがとお

0938名無しさん@編集中 (ワッチョイ 937d-mVFY)2019/07/04(木) 03:19:10.79ID:4uX2Aw5v0
amatsukazeのdelogoフィルタとかデブロックが試した感じかなりいいけど
普通のavisynth版がないのが残念だなぁ
amaのロゴデータでそのままdelogo出来るプラグイン欲しい
既存のに比べて凄く精度良い気がする

0939名無しさん@編集中 (スプッッ Sd1f-cBvm)2019/07/04(木) 08:41:05.00ID:PBrRgnvFd
>>938
同感
これができればaviutlと卒業できるのに

0940名無しさん@編集中 (ワッチョイ a316-rgZK)2019/07/04(木) 14:58:45.58ID:gLtDJH9k0
ロゴなんて一度取得するだじゃん

0941名無しさん@編集中 (ワッチョイ 937d-mVFY)2019/07/05(金) 05:24:01.68ID:7TI95Xf90
いや取得の楽さの話をしてるんじゃなくて
ログ除去の適用性能が高いって言ってるんだよ
今のAvisynthにあるdelogoだと一律にかけることしかできないけど
Amatsukazeのdelogoは状況によって強弱かけてるでしょ

0942名無しさん@編集中 (ワッチョイ a316-rgZK)2019/07/05(金) 13:48:52.96ID:S9et3Yv90
ああ、"ama"って"amatsukaze"のことだったのね
amaっていうロゴ配布サイトでもあるのかと思ってたわ

0943名無しさん@編集中 (ワッチョイ bf7d-mVFY)2019/07/06(土) 02:23:12.16ID:jI+x49b70
変な略してすまん

0944名無しさん@編集中 (ワッチョイ 6f71-Pv24)2019/07/08(月) 19:39:54.50ID:axpVVrMn0
Ryzen Zen2がエンコ方面も爆速になってるのを見ていよいよ買い替えの機運が高まってきたけど、どのモデル買うか迷う。
エンコーダーはスレッド数に応じてほぼリニアに速度あがるけど、どう考えても先にネックになるのは
常用してるシングルスレッドしか対応してないAvisynthフィルタのどれかなんだよな。

0945名無しさん@編集中 (スッップ Sd1f-9dh2)2019/07/08(月) 20:23:14.16ID:qWlGVFsrd
フィルタがボトルネックになる分、エンコ設定重くできるよ!

0946名無しさん@編集中 (ワッチョイ 6f71-Pv24)2019/07/08(月) 20:38:21.29ID:axpVVrMn0
(・∀・)ソレダ!!

0947名無しさん@編集中 (スッップ Sd1f-KpCZ)2019/07/08(月) 21:21:24.64ID:MJNZ0kibd
cuda対応のvapoursynth neoなんて出ないかな?

0948名無しさん@編集中 (ワッチョイ ff7d-mVFY)2019/07/09(火) 06:28:51.61ID:oT0+q7n90
同時にいくつもエンコすれば良いと思う。

0949名無しさん@編集中 (ワッチョイWW 4f90-kZMB)2019/07/24(水) 23:49:44.29ID:sqwIGdUM0
neoとCUDAフィルタ入れてみた
PV4ファイルエンコにKFM使えるなんて胸熱

0950名無しさん@編集中 (ワッチョイ 0671-JDM+)2019/07/29(月) 00:59:53.20ID:nuI3e4G00
KFMDeint(mode=2, cuda=true)とSelectField()併用すると、画が壊れる事がある。よくわからん。

0951950 (ワッチョイ 0671-JDM+)2019/07/30(火) 00:09:33.21ID:7U3nE92Y0
ちょっとだけわかってきた。SelectField()使うとフィールドオーダーがKFMDeintに渡らなくなるのか
全編で動くシーンの画が壊れるけど、SelectField()の後に再度フィールドオーダー明示してやると
ちゃんとインタレ解除してくれる。
オリジナルのQTGMCでも若干画が壊れるけどKFMDeintの方が圧倒的に顕著。他のデインタレフィルタだと
こうした症状は無いっぽいです。

0952名無しさん@編集中 (ワッチョイ 0a16-wm0+)2019/07/30(火) 10:10:30.08ID:C+YQ+loG0
ちょくちょく指摘されてるやつだね

0953950 (ワッチョイ 0671-JDM+)2019/07/30(火) 20:03:54.81ID:7U3nE92Y0
>>952
初めて聞きました。ソース情報もらえますか?

0954名無しさん@編集中 (ワッチョイ 8e23-/0C9)2019/07/30(火) 20:16:24.37ID:gKtLIFBR0
SelectField()ってこれ?
function SelectField(clip clip, int num, string "order") {
fc=clip.framecount-1
order=Default(order,"bottom")
T1=clip.Trim(0,num-1)
T2=clip.Trim(num,-1).SeparateFields()
T2=order=="top"?T2.SelectEven().nnedi3(dh=true):T2.SelectOdd().nnedi3(dh=true)
T3=clip.Trim(num+1,0)
return (num>=fc)?T1++T2:(num>0)?T1++T2++T3:T2++T3
}
当然この関数自体フィールドフラグがなくなると思うが

0955950 (ワッチョイ 0671-JDM+)2019/07/30(火) 21:10:11.58ID:7U3nE92Y0
すいません、SelectField()がユーザー定義関数なことすっかり失念してました(Avisynth内部関数だとばかり…)。
SelectField()を使う場合デインタレの直前にフィールド指定するか、SelectField()自体をフィールドオーダー
引き継げるよう改造するしか無さそうですね。

0956名無しさん@編集中 (ワッチョイ 0a16-wm0+)2019/07/30(火) 22:03:37.68ID:C+YQ+loG0
DoubleWeave()にまつわる話かと思ったら違った・・

0957名無しさん@編集中 (ワッチョイ a3b0-ZVB1)2019/07/30(火) 22:21:26.50ID:wBMcfUPT0
多分SeparateFields()とnnedi3のdh使わないようにするだけで望みの挙動になると思う

function SelectField(clip clip, int num, int "order”) {
fc=clip.framecount-1
order=Default(order,clip.GetParity() ? 1 : 0)
T1=clip.Trim(0,num-1)
T2=clip.Trim(num,-1)
T2=T2.nnedi3(field=order)
T3=clip.Trim(num+1,0)
return (num>=fc)?T1++T2:(num>0)?T1++T2++T3:T2++T3
}

これで問題おきなくなるんじゃないかな。orderは1でtop、0でbottom、省略でクリップのTFF、BFFの設定引き継ぎ

0958950 (ワッチョイ 0671-JDM+)2019/07/30(火) 22:35:12.61ID:7U3nE92Y0
おぉ自分で改悪したの添削してもらおうと思ったら、先に優れたものを作ってくださったお方が。かたじけないです orz

供養
function SelectField(clip clip, int num, string "order") {
fc=clip.framecount-1
orgorder=clip.GetParity()
order=Default(order,"bottom")
T1=clip.Trim(0,num-1)
T2=clip.Trim(num,-1).SeparateFields()
T2=order=="top"?T2.SelectEven().nnedi3(dh=true):T2.SelectOdd().nnedi3(dh=true)
T3=clip.Trim(num+1,0)
joinclip=(num>=fc)?T1++T2:(num>0)?T1++T2++T3:T2++T3
return (orgorder==true)?joinclip.AssumeTFF():joinclip.AssumeBFF()
}

0959名無しさん@編集中 (ワッチョイ a3b0-ZVB1)2019/07/30(火) 22:58:09.15ID:wBMcfUPT0
俺のテストしてないんで供養せずにそっち使ってください
なんか出過ぎた真似してしまって申し訳なす

>>956
多分理屈は同じじゃないかな

0960名無しさん@編集中 (アウアウエー Sa82-VTRQ)2019/07/31(水) 06:49:45.86ID:tqJYOKcMa
>>952
初めて聞きました

0961名無しさん@編集中 (ワッチョイ 9b71-Ybim)2019/08/06(火) 21:25:43.60ID:IVplQrvg0
エンコードする場合の前処理と本エンコード用のavsファイルを分けて使用しているんですが、
「前処理avsファイル」上で手書きした処理のうち共通部分を「本エンコavsファイル」ファイルに都度転記するのは
面倒なので共通部分だけ「共通avsファイル」に切り出して上記2つのavsファイルにImportしようと思ってます。
ただそうすると今度は編集時に「前処理avsファイル」と「共通avsファイル」の2つを同時に開いて作業することに
なるので、それはそれで面倒です。
編集作業にはAvsPmodを使用していますが、理想としてはImport部分の中身をエディタ上展開/編集できるようになると
嬉しいです。そういった機能はありませんか?

↓この画像の5番みたいなイメージです
https://support.content.office.net/ja-jp/media/dbc7679a-443d-4297-8601-38664e8c740d.gif

0962名無しさん@編集中 (ワッチョイ 2316-7p+E)2019/08/07(水) 00:33:17.51ID:4cPIL4Pe0
エンコード時にD&Dするbatで

echo Import("前処理avs.avs") >>本エンコavs.avs

みたいにして本エンコavsファイル作れば?

0963961 (ワッチョイ 9b71-Ybim)2019/08/07(水) 00:48:10.94ID:Q/+S+KhY0
>>962
「前処理avsファイル」で使用した書式のうちいくつかは「本エンコavsファイル」では使用してはいけないので、
共通部分だけまとめたavsファイルを別途作成してImport(しかも複数箇所)しないと実現できなそうです。

0964名無しさん@編集中 (ワッチョイWW ad35-xBuU)2019/08/07(水) 02:46:58.59ID:65uoyFNn0
どんなavsか分からないから何に困ってるのかよくわからないけど、前処理+共通の全部書いたテンプレのavs作って
状況に応じて行頭コメントアウトしたり文字置換等をバッチ若しくは手動でするのは無理なの?

0965名無しさん@編集中 (ワッチョイ 2316-7p+E)2019/08/07(水) 12:46:58.05ID:4cPIL4Pe0
>>963
その本エンコavsに不要な書式は固定なんか?

0966名無しさん@編集中 (オイコラミネオ MM93-77sx)2019/08/07(水) 15:16:52.69ID:e5VChF56M
タブ移動すれば済む話では

0967名無しさん@編集中 (ワッチョイ cbaa-fS5d)2019/08/07(水) 15:22:31.26ID:f1lY9/KR0
>>963
前処理用にリネームしたavs2pipemodを用意して、
スクリプト内ではGetProgramName()で分岐させるのが良いと思う

0968名無しさん@編集中 (ワッチョイ 0d70-0ks1)2019/08/07(水) 16:01:32.14ID:+t/GJ1En0
フラグになる変数定義して if 文でどうのとかはだめなん?
俺は AvsPmod でトリミングするときは処理を軽くするためにフィルタを解除したり、
編集おわったらフィルタ全適用したりってやるのに変数適当に定義して if 文でまわしてる。

どういう処理されてるかさっぱり分からないからみんな「それならこうした方が良い」ってのが
言い出せないかと思う

0969961(1/2) (ワッチョイ 9b71-Ybim)2019/08/07(水) 19:42:22.70ID:Q/+S+KhY0
いろいろコメントありがとうございます>各位

GetProgramName()で分岐とか環境変数で制御とか思いつかなかったなぁ。
無理に呼び出し元バッチで何とかしようとせず、avsファイルを一つに
まとめて、スクリプト内で制御した方が賢いかもしれない。

ちなみに現在使用している環境のイメージとしては以下のような感じです。
(作業が発生する度共通部分をpre→mainに転記している)
前処理用フィルタは固定ですが、共通部分とかメイン用フィルタは
都度内容や使用件数が変わるものとお考え下さい。

# pre avs
MPEG2Source("source.d2v", upConv=1)
AssumeTFF()
UserDef1() #共通部分1
UserDef2() #共通部分2
UserDef3() #共通部分3
PFilterA() #前処理用フィルタ
return last

0970961(2/2) (ワッチョイ 9b71-Ybim)2019/08/07(水) 19:43:07.55ID:Q/+S+KhY0
# main avs
MPEG2Source("source.d2v", upConv=1)
AssumeTFF()
UserDef1() #共通部分1
MFilterA() #メイン用重いフィルタ
UserDef2() #共通部分2
UserDef3() #共通部分3
MFilterB() #メイン用スゴク重いフィルタ
return last

>>964>>966
ホンマそれ。だけどメンドイし、手動によるミスも多いです…

0971名無しさん@編集中 (ワッチョイ 0d70-0ks1)2019/08/07(水) 20:22:56.48ID:+t/GJ1En0
>>970
そういうスクリプトだとしたら俺ならこうするかなー
変数切り替えて使うww

HOGE = 1 # 1 = Pre, 2 = Main

MPEG2Source("source.d2v", upConv=1)
AssumeTFF()
UserDef1() #共通部分1

if ( HOGE == 2 ) {
MFilterA() #メイン用重いフィルタ
}

UserDef2() #共通部分2
UserDef3() #共通部分3

if ( HOGE == 2 ) {
MFilterB() #メイン用スゴク重いフィルタ
} else if ( HOGE == 1 ) {
PFilterA() #前処理用フィルタ
}

return last

0972名無しさん@編集中 (ワッチョイ 2316-7p+E)2019/08/07(水) 23:28:25.07ID:4cPIL4Pe0
同時編集する必要性が分からないんだけど・・

普通にメイン部分を無効で登録しておき編集して「前処理フィルタ」実行
処理が終わったら「前処理フィルタ」を無効にして「メイン用重いフィルタ」の調整としたほうが
流れるように作業できラクなはず

0973名無しさん@編集中 (ワッチョイ 2316-7p+E)2019/08/07(水) 23:41:43.34ID:4cPIL4Pe0
自分は高度なこと分からない人だから

type pre.avs | find /v "PFilterA" >pre2.avs
type pre2.avs | find /v "return" >pre3.avs

みたいに転がして後は文字列の置き換えてメインフィルター追記して
main.avsで出力みたいなのしか発想できない

0974名無しさん@編集中 (ワッチョイ 8bb0-dCD9)2019/08/17(土) 22:15:08.09ID:EXUVhN660
Anime4K使ったプラグインないの?

0975名無しさん@編集中 (ワッチョイ b102-dCD9)2019/08/17(土) 22:34:07.74ID:wdvnfH0u0
Anime4kはリアルタイムでアップスケールして再生するためのものだから
Avisynthにかませる理由があまりないでしょ
nnedi3_rpow2でも使えばよい

0976名無しさん@編集中 (ワッチョイ 8bb0-dCD9)2019/08/17(土) 22:38:09.10ID:EXUVhN660
nnedi3_rpow2より速そうだし出来も良さそうだなって思ったんだけど
やっぱないかあ

0977名無しさん@編集中 (ワッチョイ b102-dCD9)2019/08/17(土) 22:48:01.17ID:wdvnfH0u0
早いだろうけど出来は及ばないでしょ
あくまでもリアルタイムにしてはすごいってだけで

0978名無しさん@編集中 (ワッチョイ 1316-5lTj)2019/08/17(土) 23:01:27.89ID:3fk5MzRI0
avisynthのプラグインは「調整が決まれば」という但し書きが付くけどね

0979名無しさん@編集中 (ワッチョイ b102-dCD9)2019/08/17(土) 23:03:52.89ID:wdvnfH0u0
それはAnime4Kはもっとそうで
得意な映像なら、なんだよ
不得意なパターンも報告されてるわけでね
リアルタイムだからどうしようもない部分はある

レス数が950を超えています。1000を超えると書き込みができなくなります。