X



Avisynthを絶讃ιょぅょ 避難所 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
垢版 |
2017/01/23(月) 19:55:57.16ID:Si5omxLk0
「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

過去スレ、プラグインの検索はWiki参照

初歩的な質問は初心者質問スレへ
0002名無しさん@お腹いっぱい。
垢版 |
2017/01/23(月) 21:16:42.67ID:Si5omxLk0
訂正
×初歩的な質問は初心者質問スレへ
○Avisynth 初心者質問スレの避難所も兼ねてるので質問もOKです
0007名無しさん@お腹いっぱい。
垢版 |
2017/01/23(月) 23:31:38.41ID:nop1DxVi0
私はこの板に迷惑にならないならここでも良いと思ってるんだけどどうだろう?
AviUtlのスレもこの板にあるよね?
0012名無しさん@お腹いっぱい。
垢版 |
2017/01/24(火) 04:57:13.14ID:4P0v0mNh0
DTVだけ一方的に設定厳しくされてないか?
あー潰してぇなネ実とかいう屑板
どこ叩けばいい?
0017名無しさん@お腹いっぱい。
垢版 |
2017/01/29(日) 10:36:52.69ID:yHQUM7vM0
AとBのクリップを用意して
4の倍数のフレームのみBのクリップの映像で置き換えるには
どうしたらいいんでしょか?
0019名無しさん@お腹いっぱい。
垢版 |
2017/01/29(日) 15:18:19.13ID:yHQUM7vM0
>>18
ありがとうございます!
まだそこまで(クリップとして読み込むところまで)いけてないので
まだ先になりそうですが、やってみます
0020名無しさん@お腹いっぱい。
垢版 |
2017/01/29(日) 17:22:47.88ID:n0dphC1G0
ここしばらくAvisynthやフィルタのことを色々考えてるんだけど、
Avisynth自体の主流はPlusに移りつつあるのかな?

オリジナルのAvisynthはインラインアセンブラとかSoftwireとか使いまくりで、
64bit化どころかAVX化も困難な状況になってると思うんだよね。
フィルタに関しても同様なんだけど、特に本体は10bit以上のフォーマットとかも含めて
今後どういった方向に進むんだろ?

MSの規定してる10bit以上のフォーマットはAvisynth+MTでも直接対応するものが無くて、
16bitを意識したスケーリングを行って保存するようになってるから、10bitか16bitか意識せずに
フィルタが作れるんだけど、32bitで処理するから整数処理だとかなりコードを変えなきゃいけない
(これはAvisynthの8to16のフォーマット変換でも同じ)。
こうなるといっそ浮動小数点で処理するのがいいのかとも思ったりするんだけど、
どうなんだろうね…
0021名無しさん@お腹いっぱい。
垢版 |
2017/01/30(月) 21:24:51.94ID:ila5R3kg0
>>18
> Trim(0,-1)++Trim(2,0).

をSelectEvery(8,0,2,4,7)の前に付けると"splice: video framerate doesn't match"というエラーが出るのですが
これはどういう動作をするものなんでしょうか?
002221
垢版 |
2017/01/30(月) 22:15:15.35ID:ila5R3kg0
あ、周期的なビデオクリップの切り替えは行うことができています
ありがとうございました
trimを行わないことによる弊害についての質問です
0023名無しさん@お腹いっぱい。
垢版 |
2017/01/31(火) 00:35:23.35ID:wWrGHajP0
Trim(0,-1)はA.Trim(0,1)に修正
「A.」が抜けてた

4の倍数というのが、最初のフレームを
"0番目のフレーム"として数えた場合の"4の倍数番目のフレーム"(@)なのか、
"1番目のフレーム"として数えた場合の"4の倍数番目のフレーム"(A)なのかで変わってくる

Trim()を使わないとこうなる↓
0123456789…(最初のフレームを0番目として数えた場合)
AAABAAABAA…(出力されるクリップの並び)
123456789…(最初のフレームを1番目として数えた場合)

Aの場合ならTrim()は必要ないけれど、
@の場合にはTrim()がないと"(4の倍数-1)番目のフレーム"がBになってしまう

最近、久しぶりに最初のフレームを"1番目のフレーム"として数える人に遭遇したので長々と書いてしまった
長文、申し訳ないm(_ _)m
0024名無しさん@お腹いっぱい。
垢版 |
2017/01/31(火) 00:57:49.49ID:haG55CLI0
>>23
詳しくありがとうございます

> 最初のフレームを"1番目のフレーム"として数える人

はい、その通りです
頭では分かってるんですが、なかなか切り替えが・・
本当にありがとうございました
0027名無しさん@お腹いっぱい。
垢版 |
2017/02/08(水) 00:21:20.72ID:5c5ZQso50
>>16 うおお お久し振りです ありがとうございます!
Avisynth+MT r2420 で x86/x64 共に動作するのを確認しました。

使用メモリの制約で x64版 が使えないと
処理を分割して複雑になってしまうので とても有り難いです。

MosquitoNR が使えない間は代わりに TBilateral を x64 に移植して
MCTemporalDenoisePPから呼び出してモスキートノイズ対策をしようかと考えたのですが、
TBilateral のソースコードがインラインアセンブラだらけで即撃沈しました。
優秀なデノイザなので 多少処理が遅くても x64 で使えたら嬉しいと思ったのですが
TBilateral の x64版がググっても見当たらないのはコレが原因なんですね…。
0028名無しさん@お腹いっぱい。
垢版 |
2017/02/08(水) 22:27:52.89ID:Gm35zmu90
今までL-SMASH works読み込みのavsを自動で作る手段が無かったからDGIndex使ってたけど
力づくでavsを作るようにしたらavs生成も早いしストレージの必要容量も増えないしで
音声の再エンコードさえ許容すればかなり良いのかもしれないと思った
003128
垢版 |
2017/02/09(木) 13:05:18.91ID:Oe85B8CI0
>>29
それそれ
AutoVFRのbatを流用したらできるんでね?って思い至るまでに年単位で必要だった
0033名無しさん@お腹いっぱい。
垢版 |
2017/02/19(日) 01:53:23.01ID:9bKaXu3Z0
>28-31
他力本願で情けないですが、よろしければLWLibavAudioSourceでの
avs自動生成のbat内容教えていただけないでしょうか?
0034名無しさん@お腹いっぱい。
垢版 |
2017/02/19(日) 04:36:16.19ID:crS7gVzf0
>>33 こんな感じの内容でtxtファイルを.batに変えてhogehoge.tsをD&Dするだけ。
tsのファイル名に全角スペース(は工夫次第で何とかなる)とbatで使えない文字があれば無理だからリネームしてね。

echo V1 = LWLibavVideoSource("e:\video\hogehoge.ts", cache=true, stream_index=-1, threads=0).AssumeFPS(30000,1001)>#34;%~n1.avs#34;
echo A1 = LWLibavAudioSource("e:\video\hogehoge.ts", av_sync=true)>>#34;%~n1.avs#34;
echo AudioDub(V1, A1)>>#34;%~n1.avs#34;

exit /b
0036名無しさん@お腹いっぱい。
垢版 |
2017/02/19(日) 04:54:41.61ID:crS7gVzf0
&抜けてましたorz

修正版

echo V1 = LWLibavVideoSource("e:\video\hogehoge.ts", cache=true, stream_index=-1, threads=0).AssumeFPS(30000,1001)>"%~n1.avs"
echo A1 = LWLibavAudioSource("e:\video\hogehoge.ts", av_sync=true)>>"%~n1.avs"
echo AudioDub(V1, A1)>>"%~n1.avs"

exit /b
0038名無しさん@お腹いっぱい。
垢版 |
2017/02/19(日) 05:13:25.92ID:crS7gVzf0
>>37 LSMASHSourceのReadme.txtから引っ張ってきたので
変えるの忘れてました。

また修正
echo V1 = LWLibavVideoSource("%~dpnx1", cache=true, stream_index=-1, threads=0).AssumeFPS(30000,1001)>"%~n1.avs"
echo A1 = LWLibavAudioSource("%~dpnx1", av_sync=true)>>"%~n1.avs"
echo AudioDub(V1, A1)>>"%~n1.avs"

exit /b

これで大丈夫なはず。
0040名無しさん@お腹いっぱい。
垢版 |
2017/02/20(月) 16:37:17.95ID:kPrhYrfF0
画素の位置が0.5ピクセルくらい左上にずれてる気がするんですが補正する方法はありますか?
nnedi3_rpow2のcshiftの処理を単独で行いたい感じです。
0041名無しさん@お腹いっぱい。
垢版 |
2017/02/20(月) 17:31:51.72ID:kPrhYrfF0
多分自己解決しました。
Spline36Resize(1280, 960, -0.5, -0.5, -0.5, -0.5)
で同じような処理になるっぽいです。
間違ってたら指摘してください。
0042名無しさん@お腹いっぱい。
垢版 |
2017/02/21(火) 21:51:07.45ID:zb1U/BP+0
>>39
おおまかな作り方は紹介されてたし、まだ作りかけだったから書かなかったけど
自分は↓な感じで振り分けるようにした

:start
IF "%~x1"==".ts" (
GOTO libav
) else IF "%~x1" == ".mp4" (
GOTO lsmash
) else IF "%~x1" == ".err" (
GOTO next
) else IF "%~x1" == ".txt" (
GOTO next
) else IF "%~x1" == "" (
GOTO end
)

:libav
#libavを使ったスクリプト

goto next

:lsmash
#L-SMASHを使ったスクリプト

:next
SHIFT
GOTO start
exit /b

:end
exit /b
0043名無しさん@お腹いっぱい。
垢版 |
2017/02/21(火) 22:21:47.91ID:zD3fWUfW0
そんなやり方もあるんすな
自分は拡張子判別関数組んでavsiにしてる

function LoadClip(string Path) {

#拡張子判定
Ext = Rightstr(Path,5 - Findstr(Rightstr(Path,5),"."))

#縦解像度調整
w0 = width(LWLibavVideoSource(Path))
h0 = height(LWLibavVideoSource(Path))

#ソースフィルタ選択
S = SelectByString(Ext,
\ "avi" , "AviSource(Path).ConverttoYV12",
\ "mpg" , "AudioDub(MPEG2VideoSource(Path),LWLibavAudioSource(Path))",
\ "vob" , "AudioDub(MPEG2VideoSource(Path),LWLibavAudioSource(Path))",
\ "mpeg", "AudioDub(MPEG2VideoSource(Path),LWLibavAudioSource(Path))",
\ "ts" , "AudioDub(MPEG2VideoSource(Path),LWLibavAudioSource(Path))",
\ else = "AudioDub(LWLibavVideoSource(Path,dr=true).crop(0,0,w0,h0),LWLibavAudioSource(Path))")

#読込実行
Eval(S)
}
0045名無しさん@お腹いっぱい。
垢版 |
2017/02/22(水) 02:46:42.91ID:bGYq+zWx0
拡張子判定はPathで指定されたクリップの拡張子部分を文字列で取得

縦解像度調整はLWLibavVideoのdr=trueで出るゴミ列をクロップする準備

ソースフィルタ選択は取得したExt文字列によって返される文字列

読込実行はソースフィルタ選択で返された文字列を評価して実行
0046名無しさん@お腹いっぱい。
垢版 |
2017/03/01(水) 12:19:42.89ID:AurMqUoN0
Avisynthで特定の関数やプラグインが有効になってたら処理を切り替える妙案ってありますか?
とりあえず一番のネックだったMT有効でTDecimateが落ちるのは↓で回避できましたが
もうちょっとエレガントに切り替えれば、と

お前らのショボイAvisynthスクリプト貼ってください part4 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/avi/1486693045/22
0047 ◆muKFSmhJnHip
垢版 |
2018/02/25(日) 07:50:03.56ID:R2DGwOLo0
      ∧_∧  
    ⊂( ・ω・;)  (妻)つ  ボコボコにしてやんよ
.     ヽ ⊂ )  (つ(
     (⌒) |  |(.)
        三 `J   ∪三
0048名無しさん@お腹いっぱい。
垢版 |
2018/09/25(火) 20:53:55.86ID:0MJ87x9Y0

板復帰(NG!:Gather .dat file OK:NOT moving DAT 719 -> 719:Get subject.txt OK:Check subject.txt 719 -> 719:fukki NG!)2.30, 2.37, 2.44
age Maybe not broken
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況