Avisynthを絶讃ιょぅょ Part32at AVI
Avisynthを絶讃ιょぅょ Part32 - 暇つぶし2ch964:名無しさん@編集中
19/08/07 00:33:17.51 4cPIL4Pe0.net
エンコード時にD&Dするbatで
echo Import("前処理avs.avs") >>本エンコavs.avs
みたいにして本エンコavsファイル作れば?

965:961
19/08/07 00:48:10.94 Q/+S+KhY0.net
>>964
「前処理avsファイル」で使用した書式のうちいくつかは「本エンコavsファイル」では使用してはいけないので、
共通部分だけまとめたavsファイルを別途作成してImport(しかも複数箇所)しないと実現できなそうです。

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

967:名無しさん@編集中
19/08/07 12:46:58.05 4cPIL4Pe0.net
>>965
その本エンコavsに不要な書式は固定なんか?

968:名無しさん@編集中
19/08/07 15:16:52.69 e5VChF56M.net
タブ移動すれば済む話では

969:名無しさん@編集中
19/08/07 15:22:31.26 f1lY9/KR0.net
>>965
前処理用にリネームしたavs2pipemodを用意して、
スクリプト内ではGetProgramName()で分岐させるのが良いと思う

970:名無しさん@編集中
19/08/07 16:01:32.14 +t/GJ1En0.net
フラグになる変数定義して if 文でどうのとかはだめなん?
俺は AvsPmod でトリミングするときは処理を軽くするためにフィルタを解除したり、
編集おわったらフィルタ全適用したりってやるのに変数適当に定義して if 文でまわしてる。
どういう処理されてるかさっぱり分からないからみんな「それならこうした方が良い」ってのが
言い出せないかと思う

971:961(1/2)
19/08/07 19:42:22.70 Q/+S+KhY0.net
いろいろコメントありがとうございます>各位
GetProgramName()で分岐とか環境変数で制御とか思いつかなかったなぁ。
無理に呼び出し元バッチで何とかしようとせず、avsファイルを一つに
まとめて、スクリプト内で制御した方が賢いかもしれない。
ちなみに現在使用している環境のイメージとしては以下のような感じです。
(作業が発生する度共通部分をpre→mainに転記している)
前処理用フィルタは固定ですが、共通部分とかメイン用フィルタは
都度内容や使用件数が変わるものとお考え下さい。
# pre avs
MPEG2Source("source.d2v", upConv=1)
AssumeTFF()
UserDef1() #共通部分1
UserDef2() #共通部分2
UserDef3() #共通部分3
PFilterA() #前処理用フィルタ
return last

972:961(2/2)
19/08/07 19:43:07.55 Q/+S+KhY0.net
# main avs
MPEG2Source("source.d2v", upConv=1)
AssumeTFF()
UserDef1() #共通部分1
MFilterA() #メイン用重いフィルタ
UserDef2() #共通部分2
UserDef3() #共通部分3
MFilterB() #メイン用スゴク重いフィルタ
return last
>>968
ホンマそれ。だけどメンドイし、手動によるミスも多いです…

973:名無しさん@編集中
19/08/07 20:22:56.48 +t/GJ1En0.net
>>972
そういうスクリプトだとしたら俺ならこうするかなー
変数切り替えて使う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

974:名無しさん@編集中
19/08/07 23:28:25.07 4cPIL4Pe0.net
同時編集する必要性が分からないんだけど・・
普通にメイン部分を無効で登録しておき編集して「前処理フィルタ」実行
処理が終わったら「前処理フィルタ」を無効にして「メイン用重いフィルタ」の調整としたほうが
流れるように作業できラクなはず

975:名無しさん@編集中
19/08/07 23:41:43.34 4cPIL4Pe0.net
自分は高度なこと分からない人だから
type pre.avs | find /v "PFilterA" >pre2.avs
type pre2.avs | find /v "return" >pre3.avs
みたいに転がして後は文字列の置き換えてメインフィルター追記して
main.avsで出力みたいなのしか発想できない

976:名無しさん@編集中
19/08/17 22:15:08.09 EXUVhN660.net
Anime4K使ったプラグインないの?

977:名無しさん@編集中
19/08/17 22:34:07.74 wdvnfH0u0.net
Anime4kはリアルタイムでアップスケールして再生するためのものだから
Avisynthにかませる理由があまりないでしょ
nnedi3_rpow2でも使えばよい

978:名無しさん@編集中
19/08/17 22:38:09.10 EXUVhN660.net
nnedi3_rpow2より速そうだし出来も良さそうだなって思ったんだけど
やっぱないかあ

979:名無しさん@編集中
19/08/17 22:48:01.17 wdvnfH0u0.net
早いだろうけど出来は及ばないでしょ
あくまでもリアルタイムにしてはすごいってだけで

980:名無しさん@編集中
19/08/17 23:01:27.89 3fk5MzRI0.net
avisynthのプラグインは「調整が決まれば」という但し書きが付くけどね

981:名無しさん@編集中
19/08/17 23:03:52.89 wdvnfH0u0.net
それはAnime4Kはもっとそうで
得意な映像なら、なんだよ
不得意なパターンも報告されてるわけでね
リアルタイムだからどうしようもない部分はある

982:名無しさん@編集中
19/09/17 09:50:57.39 B6Q9oG8u4
age

983:名無しさん@編集中
19/10/27 14:47:44.95 t4FFKrMxj
シーンチェンジ検出について質問です。
輝度情報の変化をベースとしてシーンチェンジしてるであろうフレームリストを出力したいのですが
何かいい方法はあるでしょうか?
AutoFrameDifferenceというものが似たような機能があるようですが現在公開されてないようなので。

984:名無しさん@編集中
19/10/27 14:51:02.43 t4FFKrMxj
すいません、思いっきりスレ間違えました。
質問すれ行ってきます


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch