12/11/04 15:04:43.59 ZoxplnA3
ITSで60fps->30fpsにフレームレートを切り替えたら、
30fpsの部分がスローモーションのようにカクカクなります
24fps->30fps、30fps->60fpsのときは正常です
遅くなるときはITSのDebugでDelta値がすごい勢いで増えていきます
遅くても30fps分のフレームはあるみたいです
どうかよろしくお願いします
x264option
--level 4.1 --crf 21 --qcomp 0.9 --bframes 3 --subme 8 --keyint 250
--tcfile-in Its.tmc --timebase 1001/120000
619:名無しさん@編集中
12/11/04 15:05:43.20 ZoxplnA3
function AUTO24(clip clip) 関数
clip
AssumeTFF()
Auto24FPS(true, 24, 16, "", false)
return last
}
function BOB60(clip clip)
{
clip
AssumeTFF()
TDeint(mode=1)
return last
}
function ORI30(clip clip) #遅くカクカクになる30fps
{
clip
AssumeTFF()
IT(fps=30, ref="TOP", blend=false, diMode=1)
return last
}
defファイル
set [24] DEINT24 = 'AUTO24()'
set [60] BOB = 'BOB60()'
Set [30] ORI = 'ORI30()'
default 24 = DEINT24
default 60 = BOB
default 30 = ORI
mode fps_adjust = on
0-[30]
300-[60]
600-[30] ここでスローになりカクカクに
620:名無しさん@編集中
12/11/04 17:31:47.80 ac5Z17/w
srcってeasyVFRとかで記述してるけど、実際どんな役割があるの?
621:名無しさん@編集中
12/11/04 17:44:04.73 Iq1ktw+s
にーやんのアーカイブ: AviSynthの文法
URLリンク(niiyan.s8.xrea.com)
622:名無しさん@編集中
12/11/04 18:18:34.86 ac5Z17/w
ありがとう、理解できた
623:名無しさん@編集中
12/11/05 20:45:43.00 RyiB3TsZ
>>618>>619
解決しました
でふふぁいるを
0-[30]
300-[60]
600-[30] ここでスローになりカクカクに
↓
0-[30]
300-599[60]
あるいは
0-299[30]
300-599[60]
600-[30]
624:名無しさん@編集中
12/11/06 00:49:56.99 ZJzY1GNc
Vapoursynthの話題ってここでいいのかな?
625:名無しさん@編集中
12/11/06 00:56:08.55 ZJzY1GNc
Vapoursynthのwikiが登場していないので、リンク集みたいなもの
Vapoursynth
URLリンク(www.vapoursynth.com)
紹介など
URLリンク(csbarn.blogspot.jp)
URLリンク(soranikakaruhashi.blog.fc2.com)
URLリンク(matome.naver.jp)
626:名無しさん@編集中
12/11/06 01:00:20.75 PYSzli6L
無いなら自分でスレ立てろよ
627:名無しさん@編集中
12/11/06 01:20:54.23 ZJzY1GNc
立てようか悩んでたけど、情報量の少なさで…
628:名無しさん@編集中
12/11/06 01:21:53.22 ZJzY1GNc
追加
>>627
今いきなり立てても過疎スレになるし
629:名無しさん@編集中
12/11/06 02:13:47.34 RsSfv049
>>623
ITSで30->60は可能でも60->30へきりかえるのは無理。
ただし物理的にavsを分割すれば可能。それがイヤならこんな風にすればいい。
0-[30]
300-[60]
600-[24]
720-[30]
なぜ720にしているのかという理由は
600に+24を加算していって末尾が5か0で終わる数字にあわせただけ。
そうしないとITSでタイムコードを吐くと後々におかしな所でノイズが混じったり
音声のつながりが悪くなったりする。値は電卓片手にフレーム番号をさがすと簡単。
これがイヤなら
part1.avs
trim(0,300)
part1.def
0-[30]
300-[60]
part2.avs
trim(600,framecount)
part1.def
0-[30]
こんな風に分ければいい。
ただしあとでmuxするときに分割分をマージさせる必要があるが
630:名無しさん@編集中
12/11/06 02:15:02.12 RsSfv049
訂正
> part1.avs
> trim(0,300)
part1.avs
trim(0,600)
うっかり凡ミスしたw
631:名無しさん@編集中
12/11/06 03:03:39.66 1VGjAeR5
ちゃんと終わりのフレーム番号も指定すれば正しく切り替えられるよ
632:名無しさん@編集中
12/11/06 05:46:10.67 iBMIn8kW
>>624
VapourSynthはAviSynthとPythonがある程度わかるものなら5分で理解できるが
そうでない者にはどうしようもないと思うよ
いったい何を話題にするんだ?
633:名無しさん@編集中
12/11/06 08:38:22.02 /jgn1R0B
>>629
さんくす
24を間にかませばなんとかいけるのですが、ちょっとムズムズしそうで
avs分割ですか、やったことないけどなかなか使えそうですね
>>631
さんくす、終わり指定して様子見てみます
ありがとうございました
634:名無しさん@編集中
12/11/07 20:12:13.13 QVaQ6M15
ivtc_txt60mc 60iテロが24pでヌルヌル動かなくても成功してます?
635:名無しさん@編集中
12/11/07 20:18:28.21 WSyUja1R
日本語で頼む
636:名無しさん@編集中
12/11/09 00:36:11.30 c1CBXnze
FadeOut()
白くしたい場合はどうしたら
637:名無しさん@編集中
12/11/09 00:51:40.86 GWcvp254
Dissolve()あたりを使う
クロスフェード avisynth
で検索
638:名無しさん@編集中
12/11/09 09:47:22.79 CyxPvUbI
>>636
color=$FFFFFF
639:名無しさん@編集中
12/11/10 00:44:02.93 NAhZBf8r
>>638
カラーつかえるじゃん・・
.infoに書いてないから使えないのかと
BlankClipとかDissolveで無理矢理やってたわ
ありがとうございます
640:名無しさん@編集中
12/11/10 06:29:38.85 DUJA3GP+
いや、普通に書いてあるし
641:名無しさん@編集中
12/11/10 11:10:38.91 1l31L7/1
取説を読まずに質問する奴が多いこと
他人に意見を乞う前にもっとやることがあるだろうにな。
642:名無しさん@編集中
12/11/11 02:22:51.90 rcbHg9xP
URLリンク(www.avisynth.info)
ここ見たから書いてなかった
643:名無しさん@編集中
12/11/11 05:49:05.78 OZUZKg5G
>>642
URLリンク(www.avisynth.info)
ちゃんとこっちも読めよ
644:名無しさん@編集中
12/11/11 19:39:50.54 BVnAcqG7
MTSファイルがうまく読み込めません。正しい読み込み方を教えて下さい。
■ソース
家庭用ビデオカメラで撮影した動画。
真空波動研での詳細↓
[00045.MTS]192Pct [MPEG2-TS] 00:00:00.000 (0.000sec) / 97,050,624Bytes
■やった事
MPEG2-TS、AviSynthなどのキーワードでググって以下を試す。
1.以下のプラグインをダウンロード
・warpsharpパッケージ
・MPEG-2 VIDEO VFAPI Plug-In
2.以下のスクリプトを書いた。
LoadPlugin("~~\warpsharp.dll")
LoadAviUtlInputPlugin("~~\m2v.vfp", "MPEG2VIDEO")
return MPEG2VIDEO("00005.MTS")
3.3行目のMPEG2VIDEOがエラーメッセージを出力して読み込めない。
エラーメッセージは文字化けしており、理解できない。
Windows Media Playerでこのファイルを無理やり開くと映像、音声ともに再生されます。
DirectShowSourceで開くことはできるのですが、どこかのサイトであまり使用しない方が良いというのを見かけたので別の方法を探しております。
環境はWindows XP SP3 Professionalです。よろしくお願いします。
645:名無しさん@編集中
12/11/11 19:44:55.31 BVnAcqG7
644です。
申し訳ありません。
ソースファイル名が00045.MTSだったり、00005.MTSファイルだったりしていますが、
実際は00005.MTSです。ファイル名が違うので読み込めないという訳ではありません。
646:名無しさん@編集中
12/11/11 19:44:58.97 jp5bD4On
格納されているのがH.264であればm2vで読み込めるわけないよね
その"真空波動研での詳細"が全く詳細でもなんでもないのでわからないけど
647:名無しさん@編集中
12/11/11 19:49:30.42 x/0N7D8k
>>644
GeForceを取り付けて、DGIndexNVで開く。
648:名無しさん@編集中
12/11/11 19:51:03.49 B/Pp+yRx
なぜこうも真空波動研を使う人が多いのか
649:名無しさん@編集中
12/11/11 19:51:05.41 ZozkpwO6
Mediainfoをインストールしてファイルを右クリックMediainfoを選択して"ビデオ"の"フォーマット"を確認
"全般"の"フォーマット"はコンテナだからここでは関係ないから注意
たぶん"フォーマット:AVC"だと思う
650:名無しさん@編集中
12/11/11 19:59:18.47 BVnAcqG7
>>646
ビデオカメラの説明書を見てみたら以下のように書いてありました。
AVCHD 規格準拠
(映像)MPEG4 AVC/H.264(AVCHD規格基準)
(音声)Dolby Digital 2ch
おっしゃる通りH.264で圧縮されているようです。これはm2v.vfpでは読み込めないという事ですか。
大変恥ずかしながら、MPEG4やMPEG2というのがなんなのか、あまり理解できていません。勉強中です。
651:名無しさん@編集中
12/11/11 20:06:27.63 jp5bD4On
じゃあ勉強してそれでもわからなかった来てね
652:名無しさん@編集中
12/11/11 20:08:59.80 ZozkpwO6
m2v.vfpでは読み込めない
無料ならDGAVCIndexでインデックスを作成、.dgaをavisynthからAVCSource()で読み込む
DGAVCIndexに同梱されている同バージョンのDGAVCDecode.dllをプラグインフォルダにぶち込むのを忘れずに
音声はDolby Digital 2chだけじゃaacかac3かlpcmか分からんからテキトーに
653:名無しさん@編集中
12/11/11 20:11:05.86 BVnAcqG7
>>646さんへの返信を書いている間に他の方からの返信がありまして、失礼しました。
>>647
GeForceというとビデオカードですか?新しくビデオカードを取り付けないといけないのですか?
>>648
ググったら引っかかったので使用したのですが、使わない方がいいのですか?
>>649
インストールしました。表示→ツリーで表示される情報ですか?
フォーマット:AVCと表示されます。
654:名無しさん@編集中
12/11/11 20:15:37.17 BVnAcqG7
またしても>>647-649さんへの返信を書いている間に、新たな返信がありまして失礼しました。
>>651
大変申し訳ありません。勉強します。
>>652
>>649さんより教えて頂いたMediaInfoでのオーディオ情報のフォーマットはAC-3と表示されます。
DGAVCIndexというのを使用するのですか?ググって試してみます。結果はまた報告いたします。
655:名無しさん@編集中
12/11/11 20:22:02.94 7p6mNsqw
L-SMASH worksとやらを使ってみてはどうだろうか
656:名無しさん@編集中
12/11/11 20:25:08.02 jp5bD4On
というかavs使わないといけないのか?
657:名無しさん@編集中
12/11/11 20:31:39.05 x/0N7D8k
>>653
>GeForceというとビデオカードですか?新しくビデオカードを取り付けないといけないのですか?
URLリンク(www.avisynth.info)
658:名無しさん@編集中
12/11/11 21:17:04.74 9uNBzet5
LSMASHSource.dllを使うのは駄目なの?
659:名無しさん@編集中
12/11/11 21:24:26.89 BVnAcqG7
>>652
この方法で映像が読み込めました。音声はこれからまた調べてみます。ありがとうございます。
>>655
>>658
ググってこの方法も試してみましたが、failed to lsmash_open_movieと表示され、うまくいきませんでした。
せっかく教えて頂いたのに、申し訳ありません。
>>656
絶対使わないといけないという訳ではありませんが、AviSynthを使えると便利だと思ったものですから。
>>657
こんなのがあるんですね。ただ、現在NVIDIA社製のグラフィックカードの環境が無いので試せません。
せっかく教えて頂いたのに、申し訳ありません。
皆さん、色々教えて頂いてありがとうございます。>>652さんの方法でうまくいきそうなのでこの方法で作業していきたいと思います。
どうもありがとうございます。
660:名無しさん@編集中
12/11/11 21:41:22.40 jp5bD4On
>>658
LSMASHSourceはL-SMASHで扱えるフォーマットで尚且つ8bit depthしか扱えない
aviutlのlsmashinputでいうL-SMASH+Libav Readerのようなもの
Libav Readerのavs版ではない
よく知りもしないで素人に教えるなよ
661:名無しさん@編集中
12/11/12 00:44:40.18 9mZDpZT5
>>660
これは玄人さんでしたか、こんにちわ
662:名無しさん@編集中
12/11/12 00:45:55.33 wSxEO1em
>>661
ID変わるまでわざわざ待ってご苦労様です
663:名無しさん@編集中
12/11/12 00:47:08.47 O02IAQPh
>>660=>>661
664:名無しさん@編集中
12/11/12 19:01:32.62 06YgN0f5
VapourSynthの話題はこちらで
VapourSynth Part1
スレリンク(avi板)
665:名無しさん@編集中
12/11/14 00:49:03.81 Zu+s/gQy
MPASourceでmp3読み込もうとすると
「system exception access violation」っていうエラーがでるけど何なの?
普通に読み込めるのとそうでないのがある
666:名無しさん@編集中
12/11/14 09:09:09.51 rxs4Ls+2
何なの?って言われてもお前が間違ってるとしか言いようがないよ
mp3はwavヘッダ付きかそうでないか?
チャンネル数は?
どういうコマンドで読見込むつもりだったの?
質問したいならこれらの情報を添えて「お願いします」だろ普通
667:名無しさん@編集中
12/11/14 10:48:02.27 1BohzvjY
>>665
ffms2で読み込めよ。
668:名無しさん@編集中
12/11/14 22:32:48.68 cv/+aFKr
xhmikosr氏ビルドしたプラグイン一覧
特に理由がない限りここからダウンロードしたほうがいいかも
URLリンク(xhmikosr.1f0.de)
669:名無しさん@編集中
12/11/17 01:34:49.07 Dg/hyjpW
>>126にはないプルダウン周期を見つけましたがこれは何なのでしょう?
?は不明箇所
????110101
縞の状態であらわすと、???PPになります
670:名無しさん@編集中
12/11/17 02:03:06.90 tPCnfpIJ
PAL > NTSC にしたものじゃね?
671:名無しさん@編集中
12/11/17 02:20:34.79 Dg/hyjpW
>>670
それは違うと思います
これ以降から終わりまでプルダウン周期は0010100101(PIIPP)になります。
672:名無しさん@編集中
12/11/17 02:25:01.61 kyqvLIwu
単なる周期不定だろ
手動で解除すればいい
今は少ないかもしれんけどそんなのいっぱいあるぞ
673:名無しさん@編集中
12/11/17 02:32:57.81 Dg/hyjpW
後出しになってしまいましたが、????110101(???PP)以前の周期パターンは0100101001(PPIIP)でした
674:名無しさん@編集中
12/11/17 04:04:14.24 Dg/hyjpW
>>669
>>673
どうやらこの区間は、2-3プルダウンでなく2-3-3-2プルダウンみたいです
675:名無しさん@編集中
12/11/17 14:40:59.90 XtQMJU+h
keyframes{
0 "chap_a"
100 "chap_b"
}
def内に上記のような記述をせず
avsp_modのマクロでchapter出力したtxtをmuxするだけでは
チャプターを指定していた箇所がキーフレームにならないんでしょうか?
676:名無しさん@編集中
12/11/17 14:45:54.73 kyqvLIwu
何でエンコードしてるかしらんけどx264の場合qpfileで指定しないといけない
677:名無しさん@編集中
12/11/17 18:30:50.80 XtQMJU+h
今までx264でエンコしたもので再生時にチャプターにとぶと
直前のフレームが表示される場合があったりしたんですが
それはキーフレームがチャプター指定した箇所に設定されていなかったから
近くのIフレームにとんだって解釈でいいんでしょうか?
プレイヤーによるかもしれませんが
678:名無しさん@編集中
12/11/17 18:51:56.84 kyqvLIwu
qpfileを指定しなかったらx264が判断してキーフレームにするかどうか決める
明らかなシーンチェンジとかじゃなく尚且つ直前のキーフレームからkeyint内ならキーフレームにはならない
aviutlに読み込ませてキーフレームになっているかどうか確認すればいい
679:名無しさん@編集中
12/11/17 19:35:06.38 XtQMJU+h
理解できました
ありがとうございます
680:名無しさん@編集中
12/11/18 04:47:15.41 +NOlargu
fmtconv
URLリンク(forum.doom9.org)
作者は、ditherでおなじみのcretindesalpes氏
VapourSynth版dither
681:名無しさん@編集中
12/11/18 04:58:28.17 +NOlargu
誤爆...orz
682:名無しさん@編集中
12/11/21 01:37:08.96 fO/zKA/H
>>1
乙
>>4-5
ID:fo8cmi5Eの罪は重いな。
683:名無しさん@編集中
12/11/21 01:46:39.08 fO/zKA/H
すまぬ AviUtlスレと誤爆した
684:名無しさん@編集中
12/11/22 22:40:38.06 F2l9vVLn
ffms2でMPEG2Source("project.d2v", info = 1)のような情報を出すにはどうすればいいのでしょうか
具体的にはffms2でIフレームやPフレームの位置が知りたいです
685:名無しさん@編集中
12/11/23 00:07:22.89 3joUevnc
LoadPlugin("ffms2.dll")
Import("ffms2.avsi")
FFVideoSource("video")
FFInfo()
686:名無しさん@編集中
12/11/23 01:55:52.03 8qH0X/2w
今までずっとCプラグイン版で四苦八苦してました通常版だと問題ないんですねありがとうございます
687:名無しさん@編集中
12/11/24 03:08:22.49 /OLqga1y
60iソースでフレーム数が1498と972のフレーム数の映像を別々に逆テレシネして後から結合すると1フレーム不足する
本来ならば総フレーム数が2470(1498+972)のソースを逆テレシネするとフレーム数が1976にでないといけないのに、フレーム数が1975になってしまう
総フレーム数が5の倍数なら別々にやらないで一括で処理したほうがよさそうだな
688:名無しさん@編集中
12/11/24 06:37:38.51 vAWhOzm7
必ず4/5にしなければいけないというルールは無いが
綺麗なfpsにしたいというのなら好きなようにすれば良い
689:名無しさん@編集中
12/11/25 00:14:13.10 VaL6GZSd
逆テレシネで周期パターンがPIIIPというのを見つけましたが、この場合はどうしたらいいのでしょうか?
690:名無しさん@編集中
12/11/25 01:13:20.18 LwJO2T3n
>>689
doubleweave.pulldown(0,3)
691:名無しさん@編集中
12/11/25 02:54:19.67 VaL6GZSd
thk!
692:名無しさん@編集中
12/11/25 22:43:53.80 MsEsnczD
元動画が悪くて、映像が途中で一瞬乱れて、そこから音ズレも起きるんですが、
乱れた映像は Trim で削れたんですが、途中から音ズレを修正する方法はありますでしょうか?
693:名無しさん@編集中
12/11/26 00:51:04.28 gp9xGvmg
DelayAudio()
694:名無しさん@編集中
12/11/26 19:36:29.82 GeLMPrVV
avisynthで特定のフレームを水増しするということはできますか?
695:名無しさん@編集中
12/11/26 19:47:16.79 wCD4F0eP
Loop()
696:名無しさん@編集中
12/11/26 20:40:16.72 EJ2sjQYR
>>694
dup.avsi
function dupFrames(clip c,clip c2,int cnt){
# フレームを複製する
# 要 LGhost.dll
c2=default(c2,c)
cnt=default(cnt,1)
last=c2
GScript("""
for(i=0,cnt-2,1){ last ++ c2 }
""")
return last
}
sample:
hoge.mpgの3210番目のフレームを120枚複製するデモ
DirectShowSource("hoge.vob", fps=29.970))
dupFrames(trim(3210,3210),120)
return last
697:名無しさん@編集中
12/11/26 20:41:25.76 EJ2sjQYR
あ、mpgとvobがごっちゃになっとるw
ファイル名は無視していいから訂正しなくていいよな
698:名無しさん@編集中
12/11/26 20:51:00.93 wCD4F0eP
>>697
URLリンク(www.avisynth.info)
>hoge.mpgの3210番目のフレームを120枚複製するデモ
DirectShowSource("hoge.vob", fps=29.970))
Loop(120,3210,3210)
return last
699:名無しさん@編集中
12/11/26 21:09:31.65 ufi1XHpZ
>>694
trim(100,120)++trim(100,120)++trim(100,120)
700:名無しさん@編集中
12/11/27 00:20:19.69 XXdw6Za9
>>699
感動した
701:名無しさん@編集中
12/11/27 09:20:39.85 8Iiwp4Oi
>>698
ふむ。そんなに悔しかったのか。
やりかたは色々あるし代案があってもいいと
思えない人は結構いるんだよな
702:名無しさん@編集中
12/11/27 10:23:16.17 GyKXugah
悔しいんじゃなくてバカにしてるんだろ
たかがこれだけのことにGScriptとかGavino氏もあきれるわ
703:692
12/11/27 14:08:31.47 28fYR2Gb
>>693
ありがとうございます。途中からの音ズレを修正する場合はどうしたらいいでしょう?
Trim(580,117110)
DelayAudio(+0.5)
Trim(117253,0)
DelayAudio(+1.0)
と、やったら、フレーム117253 からの映像が静止するだけのプレビューになってしまいました。
117110~117253 の間にノイズがあったので、
Trim(580,117110)+Trim(117253,0)
DelayAudio(+0.5)
と、やると、117252までは綺麗に再生できますが、
117253からは音がズレたまま最後まで再生されます。117253以降も、もう1秒ほど音声を遅らせたいです。
704:名無しさん@編集中
12/11/27 14:24:54.06 8z46EedM
例えば200フレームのクリップがあって、0から50フレームの音を0.5秒遅らせて、100フレームから最後までの音を1.0秒遅らせて
0から50フレームのクリップに100から199フレームのクリップをくっつけるなら
a = Trim(0,50)
a = a.DelayAudio(+0.5)
b = Trim(100,0)
b = b.DelayAudio(+1.0)
a++b
705:692
12/11/27 14:46:05.80 28fYR2Gb
>>704
素晴らしく分かりやすい説明をありがとうございました!!
できました。
706:名無しさん@編集中
12/11/27 21:36:53.22 8Iiwp4Oi
>>702
>たかがこれだけのことにGScriptとかGavino氏もあきれるわ
じゃぁおまえはどんなときにGScriptを使うんだ?
まさか高級言語顔負けな超ロングコードを埋め込む気じゃないよな?
707:名無しさん@編集中
12/11/27 22:19:27.15 GyKXugah
んなもん内蔵フィルタ等では書けない/書きにくい時に決まってるだろ
内蔵のLoop()1行で済むものを10倍に水増しってアホらしいにもほどがあるわ
708:名無しさん@編集中
12/11/27 22:27:06.28 GbNV10cE
そもそも「素人に」説明するのに内蔵で済むものを
まったく同じ処理の自作avsiを引っ張りだしてくる方がどうかしてる。
教える気ないだろ
709:名無しさん@編集中
12/11/27 22:32:07.36 utpZ3OgT
100歩譲ってLoop使わずに自作関数でやるとしてもその程度でGScriptなんて要らない
function dupFrames(clip copyframe,int cnt){
function hoge(clip c,clip _c,int cnt,int crnt){(crnt>=cnt)?c:hoge(c++_c,_c,cnt,crnt+1)}
copyframe.hoge(copyframe,cnt,1)
}
710:名無しさん@編集中
12/11/28 00:15:05.91 G5JrUWyE
玄人思考
711:名無しさん@編集中
12/11/28 00:39:14.83 dCwQ6RMJ
2.6.1だがLoopが使えない。どういうこと?
2.5.8に戻せってことなのか?
712:名無しさん@編集中
12/11/28 00:48:43.46 RkeogiOX
AviSynth2.6 2012.08.28版 x86 SEt氏
これで普通に使えるよ
最新版だと思うけど合ってる?
713:名無しさん@編集中
12/11/30 06:57:42.80 fnerN6Am
ものすごく今更なレスですが・・・
>>557
>>561
参考になりました、ありがとうございました。
>>559
エンコ自体は数年やってますし>aviutlだけでは出来ない 一応できますよね・・
割れアニメにお詳しいんですね。
ちなみに、この質問時は全体の処理はAviutlで、テロップのフレーム部分だけAvisynthで処理させてました。
結合時に音声が一瞬途切れるので、別途音声エンコしてMP4 Boxで音声を付け替えてでやっていました。
714:名無しさん@編集中
12/11/30 09:08:13.83 JO8SKYP9
>>713
おいおい。数年エンコしてて、音声途切れるって・・・。
どんだけバカなの。
715:名無しさん@編集中
12/11/30 09:23:15.59 X6bWURMf
>>714
文脈を嫁w
解決してるように見えるけど、後で「分割数を増やしたらだんだん音がズレます」という質問が来る気がする。
素直にEazyVFRかITSを使ったほうが後々幸せになれる。
716:名無しさん@編集中
12/11/30 11:46:07.97 JO8SKYP9
>>713
必要なのはタイムコードだけ
分割して同時エンコしたいなら>>715の追加だけで十分
エンコ時間も変わらんし、avsが1枚増えるだけ
717:名無しさん@編集中
12/12/01 17:57:29.07 hWhP5LjI
字幕焼き込みの映画とかについてなんですが、
24fps→30fps→字幕焼き込みとやっているやつなんかだと、
周期一定でもDoubleWeave().Pulldown(x,y)とやると
どうしても字幕が出たり消えたりするタイミングで
字幕がすだれになってしまうシーンが多々あります。
処理の仕組み上、どうしてもそうなってしまうのは仕方ないと分かるのですが、
これを何とか字幕がすだれになるタイミングだけ、うまいこと別の処理をかまして
字幕にすだれが出ないようにしたいのですが可能でしょうか?
素直にTIVTC24P2とか使うしかないですかね?
718:名無しさん@編集中
12/12/01 19:36:38.50 mnHMZaPY
>>717
それはフレームレートスレで「解除縞」と言われてるものだな
誤爆上等ならTIVTC24P2でおk
SelectEvery()で違う候補が使える「解除縞可能性」のパターンなら該当区間のみ別パターンにする
違う候補が使えないなら縞を我慢するかvinverse()やAviUtlのインタレ縞低減++のようなプラグインで二重化する
719:717
12/12/01 22:17:34.71 hWhP5LjI
>>718
おお、ありがとう。
今テストしてる動画が、
Pulldown(2,4)かPulldown(1,4)のどっちでも絵はOKだが字幕は縞になっちまうんで
現実的な解決策はご提示頂いたvinverse()で行くことにしました。
フレーム単位で見ると二重化してるんで字幕の色が薄くなってるけど
実際に動画として見れば大して違和感ないし縞に比べりゃ全然マシなんで。
720:名無しさん@編集中
12/12/02 02:07:14.07 V79VM33n
字幕箇所をConditionalFilter+IsCombedTIVTCで
縞判定してやれば自動で出来るけど
721:717
12/12/02 05:29:29.58 lJptAfe0
>>720
お、すげーありがとう。
とりあえず即興で以下のスクリプト書いたらめちゃいい感じでした。
DoubleWeave().Pulldown(2,4)
MyAutoCombReduce()
return last
function MyAutoCombReduce(clip clip){
Deinted=clip.QTGMC( Preset="Fast").SelectEven()
ConditionalFilter(clip,Deinted,clip,"IsCombedTIVTC(cthresh=6,MI=60,blockx=8,blocky=32)","=","true")
}
722:720
12/12/02 23:44:58.89 s32VnncB
そこまで作れるなら、もう一つアドバイス
cropしてから縞判定するとで誤爆を減らせ
overlayで画質の維持が出来る
参考は、前に書いたafterTelopでggってね
723:名無しさん@編集中
12/12/03 03:30:30.32 qWLo6lcp
>>722
YV12ならoverlayよりmasktoolsのほうが速くてオススメ
724:717
12/12/03 23:03:40.81 euv+H8/q
>>722
>>723
さらにありがとうございます。
つまり、どうせ縞になるのは字幕部分だけなんだからcropして縞判定すりゃ
誤爆も減るし、判定エリアが狭いから速度的にも有利と。
ついでに字幕部分だけでマスク作ってオーバーレイしてやった方が、
縞発生以外のエリアは元の絵を保持できるんだから画質的にも有利と。。。
afterTelopはググったら絶賛スレの過去ログが出てきて
どうも親切な人が作ってくれた関数みたいっすね。
やろうとしてることはなんとなく理解したんで、ちょっと試してみます。
725:名無しさん@編集中
12/12/03 23:20:48.99 nNiMUUSo
作者さんがいらっしゃるみたいなのでafterTelopについて2点ほど質問です
・AssumeFrameBased()でボトムファーストにして判定してますがComplementParity()そ付けなくて問題ないでしょうか?
・途中でYUY2に変換されるときConvertToYUY2()が無指定でのデフォルトのinterlaced=falseになっています、trueにするべきと思うのですが何か意図がおありでしょうか?
726:名無しさん@編集中
12/12/03 23:23:37.26 nNiMUUSo
タイプミスしまくってますね・・・読みにくくてすみませんorz
727:720
12/12/03 23:52:39.73 jjmIL2MJ
前に、30分程度ででっち上げた物なので作りはいい加減です
うろ覚えですが、2版(Part28の647)でAssumeTFFに変えたはずで
AssumeTFFした段階でinterlaced=trueに変わってるんじゃなかったかな
728:名無しさん@編集中
12/12/03 23:57:52.62 nNiMUUSo
>>727
古いバージョンだったんですね・・・
新バージョンを確認しました、ありがとうございますつかってみます
729:717
12/12/04 01:58:12.97 mfgIipes
とりあえず書いてみた
DoubleWeave().Pulldown(2,4)
MyAutoCombReduce(left=120,top=800,right=-120,bottom=-64)
function MyAutoCombReduce(clip clip,int "left",int "top",int "right",int "bottom"){
c1 = clip.crop(left,top,right,bottom)
Deinted=clip.QTGMC( Preset="Fast").SelectEven()
ConditionalFilter(c1,Overlay(clip,Deinted,x=left,y=top),clip,"IsCombedTIVTC(cthresh=6,MI=60,blockx=8,blocky=32)","=","true")
}
IsCombedTIVTCのパラメータは正直良くわかってないので、
どっかからか適当に拾ってきた設定ではありますw
まあ、お蔭様でやりたいことはほぼできるようになりました。
730:名無しさん@編集中
12/12/05 00:42:44.64 NVlK/EZN
背景部分の高精細度成分のみを潰せるフィルタを探しています
歌番等のソースで、ステージの後ろ(稀に+足元)に巨大スクリーンなどが設置されている場合
格子状のスクリーンに映る映像に多くのビットレートが割かれているようです
強めにボカシ→シャープネスを掛けたり、
縮小→nnedi3で拡大してみたりと試してみたのですが効果が余りなく
時には切り出したtsより巨大になってしまう事もあり、又ならばと固定レートで試すと前面の歌手の輪郭が崩れたりと
納得のゆく策が見つかりません
手前の被写体のキメ細かさを維持したまま背景成分を抑えたい場面では
どのようなフィルタor関数で解決すれば良いのでしょうか?
731:名無しさん@編集中
12/12/05 18:08:32.52 9AFoKZqf
民生用じゃ無理ジャマイカ?
背景とそうでない部分をどうやって区別するのかが最大の課題
追尾できるモザイクフィルタのような機能が必要な気がする
縮小→アプコン→WarpSharpのような油絵化も試しているだろうし
Utlの低周波成分保護フィルタ+ぼかし→エッジレベル調整のようなものも試しているかもしれないし
732:名無しさん@編集中
12/12/05 18:54:16.38 7a59zTnB
試してみたいんだけど、なんという番組か教えてくれないかな
それか該当するシーンのスクショとかでも
733:名無しさん@編集中
12/12/05 19:23:46.46 N96fz+Rt
よしもと新喜劇か宝塚ドリーミングシアターとかでためしてみるといい
動きの多い部分と、まったく動かない部分でいい感じに比較できるから
734:名無しさん@編集中
12/12/05 19:50:01.08 7a59zTnB
舞台で背景が動かないのだったらモーションマスクか何かで
動かない部分を大雑把にアタリを付ければ無理やりにでも何とかできそうだが、
巨大スクリーンってことは背景も動いてるんじゃないか?
735:名無しさん@編集中
12/12/05 23:44:53.16 NVlK/EZN
>>731
ありがとうございます
やはり難しいですか…
>Utlの低周波成分保護フィルタ
Utlのフィルタは使用した事がありませんでしたので、ご紹介頂いたプラグインを早速試してみたいと思います
>>734
直近のソースでは、ベストアーティスト2012のステージが参考になるかと
※グーグル画像で検索したところ同番組のSSがありましたので貼り付けておきます
livedoor.blogimg.jp/livegems7799/imgs/8/8/88dd34e0.jpg
ご指摘の通り、多くの場合格子状のスクリーンに投影されるのはCGや風景でそれ自体が独立?して動いてます
ちなみに、背景のスクリーンがノッペリタイプだったり、或いは
格子状のスクリーンでも投影されているCGが動かない場合は上記の問題は起こらないようです
736:名無しさん@編集中
12/12/06 01:14:58.28 LDPmyJEl
人物判定のマスクあるといいのにね
737:名無しさん@編集中
12/12/06 01:37:06.17 Iv69A69N
video1 = MPEG2Source("OP.d2v")
video1 = DoubleWeave.SelectEvery(5, 0, 3)
とするとエラーが出るのですがどうすればいいのでしょうか?
「video1 = 」となっているのは後で「video1 ++ video2 ++ video3 ++ video4 ++ video5」とするためです
738:名無しさん@編集中
12/12/06 01:41:03.36 7XP684dR
>>737
video1 = MPEG2Source("OP.d2v")
video1 = video1.DoubleWeave.SelectEvery(5, 0, 3)
739:名無しさん@編集中
12/12/06 01:52:12.37 Iv69A69N
>>738
ありがとう
うまくいけました
740:名無しさん@編集中
12/12/08 11:02:49.60 aLm1E8z/
xhmikosr氏のサイトで配布されているavisynthプラグインに同梱されているソースコードを使って色々ビルドしてたんだけどmasktoolsとRemoveGrainのビルドがうまくいかなかった
前者はyasmが必要で、後者はslnファイルからだとRemoveGrainしかビルドできず(Repair・Rsharpenがビルドできない)
別のサイトだが、AddGrainC 1.7.0のソースを調べてみたが、RelSymという謎のソリューション構成があったけど一体なんだろう?
741:名無しさん@編集中
12/12/08 12:48:06.52 hzqMmA4k
RelSymはRelease with Symbolsの略
742:名無しさん@編集中
12/12/08 16:59:11.13 aLm1E8z/
>>741
RelSymの意味解説乙!
743:名無しさん@編集中
12/12/08 21:39:22.86 aLm1E8z/
追記
mt_masktoolsのビルドにはyasmだけでなくboostという奴も必要
yasm
URLリンク(yasm.tortall.net)
boost
URLリンク(www.boost.org)
744:名無しさん@編集中
12/12/08 21:47:16.20 sfs1xDy4
今さもうどちらも過疎だしあれだけど、
その手の話題は
Avisynthを絶讃ιょぅょ
スレリンク(avi板)
の方が良いのじゃないか?
745:名無しさん@編集中
12/12/08 23:00:02.38 aLm1E8z/
ようやくmt_masktoolsのビルドができたので、そのメモ(かなり適当だが…)
1.masktools.slnを開く
2ツールバーにある緑色の横向き三角ボタンの右側にあるプルダウンメニューを『.release-avs25』または『release-avs26』にする
3.ソリューションエクスプローラー上の『common』ファイルを右クリックして『プロパティ』
4.『構成プロパティ>C/C++>全般>追加のインクルードディレクトリ』の先頭に以下を追記
『(環境によって異なる)\boost_1_52_0;』
5.4の設定が終わったらソリューションエクスプローラー上の『common』を右クリックして『ビルド』
6.ソリューションエクスプローラー上の『masktools』ファイルを右クリックして『プロパティ』
7.4と同じようにboost_1_52_0のパスを追記
8.7.ソリューションエクスプローラー上の『masktools』ファイルを右クリックして『ビルド』
この時、『functions.asm.obj』がないので必ずエラーが出る
9.『common』をビルドした時に『(環境によって異なる)\src\common\build\Win32\release-avs25(またはrelease-avs26)』というフォルダが作成されているので、その中から『functions.asm.obj』というファイルをコピーする
10.『(環境によって異なる)\src\masktools\build\Win32\release-avs25(またはrelease-avs26)\obj』というフォルダがあるはずなので、その中に貼り付けする
746:名無しさん@編集中
12/12/08 23:07:58.45 aLm1E8z/
>>745続き
>>745に書き忘れたが、一旦、VisualStudioを終了させる
場所は8.と9.の間
11.再度masktools.slnを開いてソリューションエクスプローラー上の『masktools』ファイルを右クリックして『ビルド』
しかし、LNK関連のエラーが出てしまいビルドできないので、後述のbatファイルを作成する必要がある
12.ソースファイルに同梱されている『compile_help.txt』を参考にしてbatファイルを作成
13.後はソースファイルの中にbatファイルを入れて実行する
成功すればビルドできるはず
747:名無しさん@編集中
12/12/09 01:27:11.67 1jZjTbCm
>>746
乙カレ
748:名無しさん@編集中
12/12/09 06:32:29.20 xM9nQH+q
RemoveGrainのRepairとRSharpenのビルド方法分かる人いる?
流石にこれだけはお手上げ...orz
749:名無しさん@編集中
12/12/09 12:58:55.44 2zWr4F1g
何のためにビルドしたいのか意味わからんけどRemoveGrain.cpp内で定義を切り替えればいいだけ
750:名無しさん@編集中
12/12/09 20:36:01.13 xM9nQH+q
>>750
定義の切り替えはこれかな?
//#defineMODIFYPLUGIN1// creat Repair plugin instead of RemoveGrain, 0 = compatible with RemoveGrain
//#defineSHARPEN1
//#defineBLUR 1
//#defineSSE2_TEST// ISSE2 version that can be used side by side with the SSE version
//#defineDEBUG_NAME// for debugging
//#defineISSE2// P4, Athlon 64, Sempron 3100
//#defineISSE3// Prescott P4
//#defineCVERSION// for debugging only
ちなみに、MODIFYPLUGINを有効にすると、SHARPENまたはBLURの定義は使用できなくなる(どっちも有効にするとエラーが出る)
751:名無しさん@編集中
12/12/09 22:26:40.30 xM9nQH+q
>>749
速度がどれだけ向上するかだけど、実際に測ってみたら誤差の範囲内だった
xhmikosr氏そのまま…12.25fps
xhmikosr氏のソースを自ビルド…12.21fps
どちらもRemoveGrainとRepair
スクリプト内容
MPEG2Source("E:\test.d2v")
DoubleWeave.SelectEvery(5, 0, 3)
LSFmod(defaults="slow")
752:名無しさん@編集中
12/12/09 22:40:34.51 xM9nQH+q
>>750
Repairをビルドしたい場合は
//#define MODIFYPLUGIN 1の//を削除すればOK
RSharpenをビルドしたい場合は
//#define SHARPEN 1の//を削除すればOK
ただし、>>750の通り、MODIFYPLUGINとSHARPENを同時に有効にするとエラーが出るので、どちらかに絞ろう
また、ファイル名はRemoveGrainのままなのでリネームする必要もある
SSE2を有効にしたい場合は//#define ISSE2、SSE3を有効にしたい場合は//#define ISSE3の//を削除する
両方の//を削除すると警告が出るので、どちらかに絞ろう
753:名無しさん@編集中
12/12/09 23:17:01.58 KVDQHmPd
>>751
で、一番肝腎な本家(kassandro氏)との比較はないの?
754:名無しさん@編集中
12/12/09 23:34:27.54 xM9nQH+q
>>751
1の値間違ってたのでもう一度
オリジナル版?(SSE3のバグ修正版)…13.24fps
xhmikosr氏そのまま…13.25fps
xhmikosr氏のソースを自ビルド…13.21fps
スクリプト内容は>>751と同じ
755:名無しさん@編集中
12/12/11 20:26:33.34 RsA1bZGX
次世代フレームサーバー、VapourSynthを流行らせよう!
スレリンク(avi板)
756:名無しさん@編集中
12/12/11 23:40:41.11 rjc9JaH9
VapourSynthなんてみんな知ってるし
いちいち出張してこなくてもいい
興味があれば自分から調べる
757:名無しさん@編集中
12/12/14 10:39:41.51 1hLTNfdK
放送局のロゴ解除について質問があります
↓の手順でロゴデータを作成し透過性ロゴフィルタでロゴを消しているのですが
一部の放送局(サンテレビ)では綺麗に解除出来なくて、悩んでおります
ロゴデータは3時間分のアニメを閾値8で作成しています。
他の放送局では非常に綺麗に解除されているので、不思議でなりません
動くようなロゴでもなく、フィードin,outがある訳でもない、ロゴなんですが謎です
対処、対策などあればよろしくお願いします
1)以下のようにしたavsをAviUtlで読み込む
※YV12toYUY2は、tritical氏の「ddcc」フィルタに含まれる関数です。
DGDecode_MPEG2Source("???.d2v")
YV12toYUY2(itype=0,interlaced=true,cplace=0)
2) 4:2:0化フィルタ(設定:縦1 横1 プログレッシブ・オフ)をオンにしてロゴ解析をする
※色変換の設定は、入力出力ともデフォルトのBT.601のままにしておけばよいです。
758:名無しさん@編集中
12/12/14 11:21:59.59 Yu7PyP0d
サンテレビは 1920x1080 なのが原因とか
通常は 1440x1080
759:名無しさん@編集中
12/12/14 11:34:32.13 1hLTNfdK
BS11も1920x1080ですがこちらは綺麗に解除できているんですよね
760:名無しさん@編集中
12/12/14 11:40:43.96 tjOTbPrD
サンテレビっていうかデジタル放送ソースは709だろ?なんで601なんだ。バカじゃないの?
761:名無しさん@編集中
12/12/14 11:45:15.57 1hLTNfdK
BT.709なのに入力をBT.601にする理由はEraseLOGOがBT.601で処理することを前提にしているかららしいです
ただ、もちろん709でもロゴデータは作り試しましたが結果は同じでした
762:名無しさん@編集中
12/12/14 12:03:10.81 h2oXzHRQ
>>757
こんな物で、妥協をすると言う手はある。
URLリンク(www.nmm-hd.org)
763:名無しさん@編集中
12/12/14 12:03:22.79 ceE7Rj/F
サンテレビのロゴがどんななのか(濃淡とか)は知らないけど、むしろロゴスキャンしすぎではなかろうか
俺はロゴデータスキャンする時は・・・
・スキャン範囲がなるべく単一色になる部分だけ残してTrim
・なるべくいろんな色を各100フレームくらい拾えるようにする(黒白赤緑青が基本)
・トータルで1000~2000フレーム程度
これで綺麗に消せる
764:名無しさん@編集中
12/12/14 12:04:19.09 vqgX4Ih/
>>761
サンテレビでうまくいかないのは単純にノイズが多すぎるからだと思うので
logoNR使ってみて
765:名無しさん@編集中
12/12/14 12:08:15.57 tjOTbPrD
ていうかaviutilで読み込んでインタレ解除された状態でロゴ解析してるとかじゃないのかい?
avs側からdelogo経由でロゴ抜きするときはとりあえずインタレ解除前に処理するのがセオリー
766:名無しさん@編集中
12/12/14 12:11:33.95 Yu7PyP0d
>綺麗に解除出来なくて
具体的に
ロゴの位置がずれる、ロゴの大きさが合わない、うっすらロゴが残る、など
>3時間分のアニメ
解析ソースに問題はないのか?
全フレームにロゴが表示されてないとダメだけど
途中でCMが入ったりしてロゴが消えたりしてるとか
あとは、フィルタの適用順がおかしいとか
AviUtlでよけいなものをONにしてるとか
色々あるよ
767:名無しさん@編集中
12/12/14 12:11:36.52 tjOTbPrD
書き忘れ
ていうかaviutilで読み込んでインタレ解除された状態でロゴ解析してるとかじゃないのかい?
avs側からdelogo経由でロゴ抜きするときはとりあえずインタレ解除前に処理するのがセオリー
aviutilでロゴ解析するときも解除前の映像で解析しないとつじつまが合わない。
768:名無しさん@編集中
12/12/14 12:27:44.61 1hLTNfdK
>766
具体的にはシーンによってうっすら残ったり、透明にくり抜いたような状態です、完全に消えているシーンもあります
解析ソースはCM部分、フェード部分は全て削除しています
フィルタの適応順はロゴ解析が先頭で、他の4:2:0化フィルタ以外すべてOFFです
>767
おっしゃる通りもちろんロゴ解析においてインタレ解除はしていません
769:名無しさん@編集中
12/12/14 12:31:52.78 1hLTNfdK
>762>764
↓のようにavspmodでマクロ出力した記述に
logoNRをどう差し込んで良いのか分からず断念してました
DGSource("hoge.dgi")
AudioDub(last, WavSource("hoge.wav"))
AssumeFrameBased.AssumeTFF()
Trim() ++ Trim() ++ Trim()
audio = KillVideo()
EraseLOGO(logofile=".lgd",pos_x=0, pos_y=0, depth=128, yc_y=0, yc_u=0, yc_v=0, start=0, fadein=0, fadeout=0, end=, interlaced=false)
EraseLOGO(logofile=".lgd",pos_x=0, pos_y=0, depth=128, yc_y=0, yc_u=0, yc_v=0, start=0, fadein=0, fadeout=0, end=, interlaced=false)
Src = KillAudio()
oldcount = Src.FrameCount
oldfps = Src.FrameRate
T1 = Src.Trim()
.
.
T2 = Src.Trim()
.
.
改行が多いと叱られたで一部のみ記載します
770:名無しさん@編集中
12/12/14 13:00:12.70 1hLTNfdK
とりあえず
logoNRを
src = DGSource("hoge.dgi")
dlg = src.EraseLOGO(logofile="hoge.lgd",pos_x=0, pos_y=0, depth=128, yc_y=0, yc_u=0, yc_v=0, start=1, fadein=0, fadeout=0, end=0, interlaced=false)
logoNR(dlg, src, chroma=true, GPU=true, l=0, t=0, r=-0, b=-0)
return last
こんな感じで使ってみましたが変化なしでした
771:名無しさん@編集中
12/12/14 15:24:07.98 pUv206Ay
>>770
GPU=trueならFFT3DGPU()が動くか確認。
動かないならdllを入れるか nr="" でTNLMeans等の好きなNRを登録すればOK
あと、範囲指定を忘れてる。SUNなら l=1716,t=66,r=-98,b=-984 くらい?
元々破綻したフレームにロゴ消しを試みてるので綺麗に消えるワケないから諦めも肝心だよ。
釣りだと思うが ID:tjOTbPrD をマネしちゃダメだぞ。
772:名無しさん@編集中
12/12/14 16:12:32.44 1hLTNfdK
>771
指摘どうもです
FFT3DGPU()は正常に動いてます
範囲指定ってロゴの座標ですよね
この座標の指定値をどこから取得してくるのかわからかなかったので
レスして頂いた値でlogoNRを適用してみましたが、改善はしませんでした
SUNの話ををしている時点で関西だとお気づきでしょうが、地デジ、BS、CS
全チャンネルの中でSUN、KBS京都この2局のロゴだけはうまく消せません
元々消しにくい局なのか、そうではないのか・・・
773:名無しさん@編集中
12/12/14 16:22:01.56 yYw9BP+W
綺麗に消えないのは完全にレート不足
その2局は地デジなのに1920x1080なんてアホなことやってるから
ちょっと動いただけで映像が破綻するので諦めるしかないよ
774:名無しさん@編集中
12/12/14 16:25:42.41 1hLTNfdK
ぁ、なるほどやっぱり局の問題なんですね
その答えが頂けてスッキリしました
775:名無しさん@編集中
12/12/15 01:07:13.61 vawui5LZ
>>773
アホ具合で言うなら、地デジでフルセグ1920x1080+1セグをマルチ編成してる奈良テレビが優勝だと思う。
776:名無しさん@編集中
12/12/15 01:33:46.47 fs3DRk+O
自局の放送映像見て何も思わないんだろうか
内部の人は
責任というかプライドというか大事なものがすっぽりと欠落してる
と見る度に思う
777:名無しさん@編集中
12/12/15 01:49:57.38 vawui5LZ
(話振っといて何だけど、奈良テレビに関しては見るものが無いので何とも思わない。)
778:名無しさん@編集中
12/12/15 03:20:38.15 tDYwJK9c
SUNのプライドは、阪神戦ホーム7回裏の応援でも音割れしない音質と、
バックスクリーンのカメラから撮ったバッターボックスの画質(選手以外ほとんど静止画)だッ!
779:名無しさん@編集中
12/12/15 08:59:35.17 DUz1VduA
あー確かに音はいいんだよなーSUN
ヘッドフォンで聴いてると違いが分かる
780:名無しさん@編集中
12/12/15 14:33:33.88 rrR2VUK9
そういえば今度サンテレビで巨人の星の特別版を放送するんだな
巨人のアニメなんて需要無いのに何を考えてんだか。
781:名無しさん@編集中
12/12/15 14:41:42.50 tDYwJK9c
クリケット巨人の星への布石か?
782:名無しさん@編集中
12/12/15 15:31:25.49 Us6TCRbe
でも巨人の星って、つまるところ負け組巨人選手と勝ち組他球団選手達の話でしょ
姉と、昔は自分を好きだった女を寝取られ、相棒と親父も他球団で大活躍
783:名無しさん@編集中
12/12/15 16:49:35.87 sbQKhVQh
特別編は花形メインでしょ
784:名無しさん@編集中
12/12/15 23:09:46.20 IWzaWPhz
MPEG2Source("hogehoge.d2v", cpu=0)
AudioDub(last, WavSource("hogehoge.wav"))
AutoDeint()
Zoom(false,114514,893893,30,30,206,0,0,154)
#~ ここで24fps化する何か
Spline36Resize(1280,720,0,0,-0,-0)
return last
Zoom関数でL字解除する時にAutoDeintしてから24fps化したいんですけど、ここで何を使えばいいか教えてください。
785:名無しさん@編集中
12/12/16 04:36:27.44 65Ya2lUm
>>784
あなたのやりたいことは、とにかくL字を消したいってことだよね?
だとしたらそれ用の関数が作られているので、それを使うのが一番簡単
URLリンク(anibin.blogspot.jp)
ただし、L字の始点・終点部分はフレームがダブったり欠けたりするのは防ぎようがない
当然周期ズレを起こすので、L字部分だけ別処理をして最後にくっつけるのがいい
786:名無しさん@編集中
12/12/16 13:40:16.64 Ix57bxYq
>>785
ありがとうございます、説明不足でした
・本編は24fps
・L字開始終了部分が30fps
・Zoom関数の前ににAuto24FPS()を使うと干渉縞が出る
・Zoom関数の後ににAuto24FPS()を使うとかくつく
ので、これをきれいに解除するにはどうすればいいかと考えてました
787:名無しさん@編集中
12/12/16 13:41:29.96 Ix57bxYq
訂正:
・Zoom関数の後ににAuto24FPS()を使うと干渉縞が出る
・Zoom関数の前ににAuto24FPS()を使うとかくつく
788:名無しさん@編集中
12/12/16 14:03:22.80 9crH/NfE
Autoを使う限りカクツキは避けられない。
L字の入りと出が60iで映像も微妙に欠け具合が変わってるからね。
なので手動で分割するかDeLetterL系を使うしか無い。
789:名無しさん@編集中
12/12/16 14:06:50.12 Ix57bxYq
ありがとうございました、精進します。
790:名無しさん@編集中
12/12/16 14:20:16.55 Ix57bxYq
すいませんちょっと言い訳します
AutoのかくつきそのものっていうよりL字開始終了のところのです
>784で書いた
AutoDeint()
Zoom()
の順だとL字解除は満足いくので、そのまま24fps化できないかなと考えてました
791:名無しさん@編集中
12/12/17 00:32:58.62 r9lUXmKn
SelectEvery(5,,,,)でも使えば
792:名無しさん@編集中
12/12/17 02:33:34.12 WyJ/vVJl
>>791
ありがとうございます
Trim毎に適したプルダウン設定を当てればいいんですね、検索しながらやってみてます
793:名無しさん@編集中
12/12/17 03:09:32.96 WyJ/vVJl
\++Trim([,).AutoDeint().Zoom(false,,,,,,,,).SelectEvery(5, 0,1,2,4)
こんな感じにできました、本当にありがとうございました。
794:名無しさん@編集中
12/12/25 22:53:03.84 NZRaeL+A
ユーザー定義関数の中で外部プラグインて使えますか?
delogo(EraseLogo )を使いたいんだけど引数のエラーでうまくできない。
795:名無しさん@編集中
12/12/25 23:20:23.61 S0nsm3xZ
使えますよ、自作の関数の中にEraceLogoを入れて設定を楽に出来るようにしてます
796:名無しさん@編集中
12/12/26 02:08:53.90 9RZbB8tO
デジカメの時間軸ノイズ除去で出た残像を後から軽減するようなフィルタありませんよね?
797:sage
12/12/26 06:01:59.74 60m0Q35Z
>> 795 ありがとうございます。
無事、ユーザー定義関数内でEraselogoが使えるようになりました。
使えているという言葉に励まされ、試行錯誤&ぐぐっていたら↓↓こんなの見つけまして
お前らのショボイAvisynthスクリプト貼ってください part4
74 :名無しさん@編集中:2010/04/07(水) 07:35:18 ID:VC766J+4
# ロゴ表示開始又は終了地点でトップかボトムのどちらかの
# フィールドしかロゴがかかってないフレームのロゴを除去し
# クリップ全体でなくその単一フレームのみ返す関数
function HalfFieldDeLogo(clip clp, int "framenumber", bool "topfieldlogo", string "logofile"){
c=clp.Trim(framenumber,framenumber)
d=c.EraseLOGO(logofile=logofile,interlaced=true)
dc = d.SeparateFields() + c.SeparateFields()
cd = c.SeparateFields() + d.SeparateFields()
weaved = (topfieldlogo == GetParity(clp)) ? dc.SelectEvery(4,0,3).Weave() : cd.SelectEvery(4,0,3).Weave()
return weaved.AssumeFPS(Framerate(clp))
}
引数の""が必要ということだったようです。プラス上の74氏のもパク・・参考に1フレームのみの
片フィールドロゴ消しも関数に合成。avsの方の記述が非常に簡略化できました。
ありがとうございます。
798:名無しさん@編集中
12/12/27 02:16:52.18 RhaP3lNq
>>797に書かれている関数って
具体的にどうやって使うの?
EraseLOGO()の後にHalfFieldDeLogoを使うのですか?
厚かましいですが
使用例をお願いします
799:名無しさん@編集中
12/12/27 02:43:26.74 febelYdl
片フィールドロゴ消しなんてfadein=1/fadeout=1でいいんじゃないの?
普通に考えたら濃度はフィールド単位で増減させてるはずだから
fadeout=1なら0フィールド目100%、1フィールド目0%になるんじゃね?
800:名無しさん@編集中
12/12/27 03:22:00.85 0usd2WtL
>>798
HalfFieldDeLogo(適用したいフレームナンバー, トップフィールドならtrue, ロゴファイルのパス)
単純にこう
片フィールドだけ除去したいならEraseLOGO()は不要ってこと
(関数内でEraseLOGOを使ってるから、DLLを消してはダメ)
2つ目の引数については、要はロゴの出始めで片フィールドならトップ=trueでロゴの終わりで片フィールドならボトム=false
俺は片ロゴ除去にはDwShift()・UnDwShift()を使ってるからこの関数は使ってないけどね
具体例・・・1フレームが片フィールドロゴ、2-10フレーム目が普通のロゴ、11フレーム目が片フィールドロゴ
HalfFieldDeLogo(framenumber=1, topfieldlogo=true, logofile="logodata")
EraseLOGO(start=2, fadein=0, fadeout=0, end=10, depth=128, logofile="logodata", interlaced=true)
HalfFieldDeLogo(framenumber=11, topfieldlogo=false, logofile="logodata")
DwShift使用だと
EraseLOGO(start=2, fadein=0, fadeout=0, end=10, depth=128, logofile="logodata", interlaced=true)
DwShift(true)
EraseLOGO(start=1*2-1, fadein=0, fadeout=0, end=1*2-1, depth=128, logofile="logodata", interlaced=true)
EraseLOGO(start=11*2, fadein=0, fadeout=0, end=11*2, depth=128, logofile="logodata", interlaced=true)
UnDwShift(false)
801:名無しさん@編集中
12/12/27 07:38:29.40 6hXboJCZ
trueとfalseが逆だと思ったので、確かめてみた
上ふたつが表示はじめ、下二つが終わり際の片フィールドロゴに対する処理
c = HalfFieldDeLogo(framenumber=527, topfieldlogo=false, logofile=Lfile) #ok
d = HalfFieldDeLogo(framenumber=527, topfieldlogo=true, logofile=Lfile) #だめ
a = HalfFieldDeLogo(framenumber=6818, topfieldlogo=false, logofile=Lfile) #だめ
b = HalfFieldDeLogo(framenumber=6818, topfieldlogo=true, logofile=Lfile) #ok
TFFなら出始めはfalseで終わり際がtrueということかと。
あとこれは1フレームしか返さないので後で他のフレームと結合する必要があり,ちょっとめんどいかも。
そのへんをまとめてユーザー定義関数にしておくとEraseLOGOと手間があまり変わらずに片フィールドロゴの
処理までできてお手軽です。
(ていうかみなさんはスクリプトとかで自動化してたりするものなのかな?)
802:名無しさん@編集中
12/12/27 07:40:36.17 6hXboJCZ
初めて書いてみたものでお目汚しですが、こんな感じ。
function simpleErsLOGO(clip clip, int "start", int "end", int "apS", int "apE", string "logofile")
{
apS = default(apS,0)
apE = default(apE,0)
#通常ロゴ消し
clip =clip.EraseLOGO( logofile=logofile, start=start, end=end, interlaced=true)
#片フィールドロゴ消し
# 最終フレーム番号の取得
final_frame = clip.FrameCount() - 1
#開始地点片フィールド ロゴ消し
framenumber = (apS == 1) ? start-1 : nop()
Sfr = (apS == 1) ? clip.HalfFieldDeLogo(framenumber,topfieldlogo = false, logofile=logofile) : nop()
clip = (apS == 1) ? Trim(clip,0,framenumber-1) ++ Trim(Sfr,0,0) ++ Trim(clip,framenumber+1,final_frame) : clip
#終了地点片フィールド ロゴ消し
framenumber = (apE == 1) ? end+1 : nop()
Sfr = (apE == 1) ? clip.HalfFieldDeLogo(framenumber,topfieldlogo = true, logofile=logofile) : nop()
clip = (apE == 1) ? Trim(clip,0,framenumber-1) ++ Trim(Sfr,0,0) ++ Trim(clip,framenumber+1,final_frame) : clip
return clip
}
#### start end は普通の(片フィールドではない)ロゴの開始終了フレームを入力
# apS apE は前後の片フィールドロゴの有(1)無(0)
# 書き方例
#simpleErsLOGO( start=526, end=6817, apS=1, apE=1, logofile=Lfile)
#simpleErsLOGO( 526, 6817, 1, 1, logofile=Lfile)
803:名無しさん@編集中
12/12/27 10:59:21.37 FNUh8h/P
>>802
良い関数ですね。
うちでは通常のロゴ消しと半ロゴ消しは個別に別で扱いたいので
DwShift/UnDwShiftと併用して、こんな感じししています。
function EraseHalfLOGO( clip clip, string "logofile",int "Frame", int "Field" ){
clip = default(clip, "last")
field = default(field, 0)
clip = (Field==0) ? clip.EraseLOGO( logofile=logofile, start=(Frame-1)*2-1, end=(Frame-1)*2-1, interlaced=true ) : \
(Field==1) ? clip.EraseLOGO( logofile=logofile, start=(Frame+1)*2 ,end=(Frame+1)*2, interlaced=true ) : \
Assert( field < 2, "'field' choice is invalid" )
return clip
}
・使い方
logofile = ”hoge”
EraseLOGO(logofile=logofile, start=100, end=200 , fadein=0, fadeout=0, interlaced=true)
↑普通に片フィールドロゴでない範囲のロゴ消しをする。
仮に、その前後両方のフレームが片フィールドロゴだった場合の例↓
DwShift(true)
EraseHalfLOGO(logofile=logofile, Frame=100, Field=0) # 片ロゴ開始
EraseHalfLOGO(logofile=logofile, Frame=200, Field=1) # 片ロゴ終了
UnDwShift(false)
804:名無しさん@編集中
12/12/27 12:25:06.47 RhaP3lNq
>>799-803
皆さん具体的な使用例から、新たな関数までご親切にどうもありがとうございます
805:名無しさん@編集中
12/12/27 13:57:32.91 HE7FizUv
次回からロダにavsアップしてそれでやりとりしろ。
806:名無しさん@編集中
12/12/27 16:33:21.82 70okRzkS
ログに残った方が役に立たね?
ソース貼り付けるようなものだろ
807:名無しさん@編集中
12/12/27 16:41:09.34 k5bwRhoK
>>802
これ頂き
楽になりそうだわ
808:名無しさん@編集中
12/12/27 17:12:38.40 RhaP3lNq
>>802
私もこれにfadein,fadeoutを追加して使用したところ
大変満足のいく結果となりました
809:名無しさん@編集中
12/12/29 01:24:07.77 RwmedKM5
>>805-806
しょぼスレに投下してここでリンクでもいい気もするが?
お前らのショボイAvisynthスクリプト貼ってください part4
スレリンク(avi板)
810:名無しさん@編集中
12/12/29 23:29:33.37 xygWW/8P
この程度のスクリプトを態々ショボスレに貼る必要もないだろ
811:名無しさん@編集中
12/12/29 23:48:53.75 HnLgE3IH
お前ら本当に小さな事にこだわるな
812:名無しさん@編集中
13/01/01 16:54:52.99 o4sYoGWi
音声多重の放送TSの音声をすべてdemuxする方法教えてくれ。
どうやっても最初の音声しかdemuxできないんだが。
使用ツールはmurdoc+dgindex
放送TSは第63回 紅白歌合戦.ts
813:名無しさん@編集中
13/01/01 17:00:53.94 +sEF8EgC
>>812
ts2aac
814:名無しさん@編集中
13/01/01 17:26:55.45 Iyn7aXqM
dgindexのメニューのstream→detect PIDとかset PIDで
他のaacのトラックを選べると思うけど違法だしスレ違い
815:名無しさん@編集中
13/01/01 17:54:26.50 o4sYoGWi
>>813-814
どうもありがと。
色々やってるうちにどうやら自己解決できたっぽい。
murdocで無劣化カットする際に
optionのclippingの"PID is the minimum select"が有効になってたのが原因で
生成したtsファイルに複数の音声が含まれない設定になってたようだ orz
あとは814の言うように-AP=audioPIDで主音声と副音声のPIDを指定すれば個別抽出できるようだね
816:名無しさん@編集中
13/01/05 08:41:48.51 wNEx9gUP
Avisynthで動画のフィールドオーダーを自動判別することはできますか?
BSJAPANなどではTFFとBFFが混在していて、それをいちいち確認するのが手間なので自動化できないかなと
817:名無しさん@編集中
13/01/05 13:48:12.83 5bCqRjOu
元動画がmpge2のとき限定だけど、m2v_vfp使えばフィールドオーダーを固定できるよ。
818:名無しさん@編集中
13/01/05 14:56:24.81 58JP75it
AssumeFrameBased()
AssumeFrameBased().ComplementParity()
AssumeBFF
AssumeTFF
で強制することは出来るけど素材のフィールドオーダーを確実に判定する方法は無かったんじゃないかな?
いちおうこうすれば「現在の」フィールドオーダーは分かるけど、フレーム単位での処理以外に使うのはオススメしない。
ConditionalFilter(last,TFFクリップ,BFFクリップ,"GetParity(current_frame)","=","true")
819:名無しさん@編集中
13/01/05 15:30:51.14 IxpdJrB2
>>817
DGIndexにだってFix D2Vあるじゃん
avisynth使いがまるも使う意義ってほぼゼロなんですけど
820:名無しさん@編集中
13/01/05 18:13:00.18 BIbjh2jb
BSJAPANはRFFだからフィールドオーダー固定すんなよ
そもそもavisynth使ってるならdgindex使ってるだろ
d2vにフィールドオーダー情報入ってるからavs内で決め打ちしなきゃ何の問題も無い筈なんだが
821:名無しさん@編集中
13/01/06 00:17:04.86 Acv0J+Df
こまけーやつだな。ハゲるぞおまえw
822:名無しさん@編集中
13/01/06 03:04:40.88 xojgG6Ju
DGIndexの最大の弱みはメンテ放棄されてることだな。
ま、現状で特に問題ないが。
823:名無しさん@編集中
13/01/06 10:59:30.84 VrC+yDhT
DGIndexだとなぜかCPU使用率が上がらず
エンコ遅いからまるも使ってる。
824:名無しさん@編集中
13/01/06 11:15:52.76 6JMjhjl+
>>823
それならFFMS2はもっと速い。
825:名無しさん@編集中
13/01/06 11:19:50.58 ltHkzscM
YV12でデコードしててdgdecodeの方が遅いって言うならマジで環境腐ってる
826:名無しさん@編集中
13/01/06 12:09:45.07 qUHJMLF3
avisynthでまるも使うメリットなんて全く無いからな
827:名無しさん@編集中
13/01/06 13:23:44.06 NNzEQ8pU
最近Avisynthに手を出したにわかだが、何故そこまでまるもが嫌われてるのか逆に知りたい
828:名無しさん@編集中
13/01/06 13:27:33.34 ltHkzscM
別に嫌うも何も単にYV12でデコードする上では全くこれっぽっちもメリットがないからなだけ
829:名無しさん@編集中
13/01/06 14:53:48.56 X5GROkdt
本家純正だとDGDecodeはシングルスレッドだからな
MT版を使えばそこそこ速くなる
SynthオンリーでYV12しか使いたく無い人はまるもを使う意味は全くないし
Utlを併用する自分の使用法では双方でベンチとったら
MT版DGの方が速かったからこっちを使ってる
別にまるもが嫌いなわけではない
830:名無しさん@編集中
13/01/06 15:01:05.06 X5GROkdt
間違えた
MT版じゃないSSE版だった
URLリンク(hank315.nl)
831:名無しさん@編集中
13/01/06 15:22:00.67 cw0/vhgu
DGIndexNV使え
爆速だぞ
832:名無しさん@編集中
13/01/06 15:25:43.39 X5GROkdt
ゲフォ板挿す気はさらさら無いので使えません(キリッ
833:名無しさん@編集中
13/01/06 15:29:56.70 qXdGjkhC
俺もそうなんだよなー
今は不満なく使えてるからいいんだけど
834:名無しさん@編集中
13/01/06 15:46:26.46 NNzEQ8pU
へー、そうなんだー。Aviutl使ってた頃にBS11で問題が発生するようなことを小耳に挟んで以来、何となくまるも使い続けていたケド
もう問題も解決できてるみたいだし、DGIndexに乗り替えてみようかな
835:名無しさん@編集中
13/01/06 16:08:06.45 qUHJMLF3
言っとくけど皆使ってるのはmod版だからな
836:名無しさん@編集中
13/01/06 17:25:33.02 Acv0J+Df
>>835
なにを今更。
>>827
スグに調子に乗って売名するから
837:名無しさん@編集中
13/01/06 18:35:49.24 X5GROkdt
>>836
黒い奴とか柔らかい奴の存在を不必要に広めて
厨房以下を煽ってDTV板に呼び込んだり
TSツール界隈の発展を阻害したのは間違いないな
まあTSツール界隈の発展の功労者でもあったわけだがな
838:名無しさん@編集中
13/01/06 18:47:33.67 ZTk2sJzZ
DGIndexNV使うだけが目的だとしたらグラボってGT210とかでもパフォーマンス出ます?
検討中です。
839:名無しさん@編集中
13/01/06 18:59:52.32 6JMjhjl+
>>838
この表でVP5となっているGT 520やGT 610のデコードが速い。
URLリンク(en.wikipedia.org)
840:名無しさん@編集中
13/01/06 19:14:35.48 Zu2dh7oV
同じくcuda経由で叩いてるのはデコーダーユニットだから
VPxの世代で性能が大きく変わると聞いたことがある
ちなみに俺の9800GTX+がVP2なんだけど、avs2avi -c null -o n 、リサイズ・フィルタ無し設定で
1440x1080i 地デジソース デインタレース無が 155~160fps GPUデインタレース有で 90~100fps くらいに収まってる
GF210ならVP4世代だしもちっと行くんじゃね?
841:名無しさん@編集中
13/01/06 19:39:49.09 ZTk2sJzZ
>>839
>>840
返信ありがとうございます。
GT610が3000円前後で種類がいくつかあるみたいなんでそれらで検討します。
842:名無しさん@編集中
13/01/06 19:55:45.64 ltHkzscM
因みにGTX660で1440x1080iをデインタレ無しでavs2pipemodの-benchmarkオプションで測ると
360fpsくらい
843:名無しさん@編集中
13/01/07 00:24:16.46 imWbjRE4
奴は所詮デジコン側のスパイだしな。自業自得
844:名無しさん@編集中
13/01/11 14:26:41.38 96NCOIW/
最近avisynthについて調べてるんだけど
Decombってどうなの?
Decomb使うぐらいならコレ使っとけ、みたいなのありますか?
845:名無しさん@編集中
13/01/11 14:40:30.63 5CTRrrWe
TIVTC以後、Decombの存在価値はなくなったと思ったが
846:名無しさん@編集中
13/01/11 15:41:47.69 96NCOIW/
>>845
thx
調べてみます
847:名無しさん@編集中
13/01/14 19:56:39.29 SfiPrX7D
現在、1280x720、YV12、BT.709のプログレッシブソースをレターボックスありの640x480、YV12、BT.601に変換しようとしています。
最終的な出力はAviUtlかVirtualDubModでやろうと思います。
今のところこんなスクリプトになっているのですが、なにかおかしいところはあるでしょうか?
avisource("test.avi")
lanczos4resize(640,360)
colormatrix(mode="Rec.709->Rec.601")
addborders(0,60,0,60,$000000)
また、AviUtlにavsを読み込ませる場合、converttoyuy2()は必要なのでしょうか?
AviUtlにはavsinp.aui経由でavsを読み込ませます。
848:名無しさん@編集中
13/01/14 20:00:04.36 ajY9Tkz+
必ずってわけではないが個人的にはリサイズの前にcolormatrixを持ってくる
ConvertToYUY2はChikuzen氏のavsreaderを使えば自動的に挟んでくれるので必要ない
849:名無しさん@編集中
13/01/14 20:15:38.44 SfiPrX7D
>>848
書き込みありがとうございます。
参考にさせてもらい、このような形になりました。
avisource("test.avi")
colormatrix(mode="Rec.709->Rec.601")
lanczos4resize(640,360)
addborders(0,60,0,60,$000000)
converttoyuy2()
とりあえず入力プラグインは今あるものを使うことにしたので、converttoyuy2()をつけました。
850:名無しさん@編集中
13/01/16 10:58:05.31 SoOXYymZ
ところで、クローン版_gpu25.dllのソースコードってないの?
851:名無しさん@編集中
13/01/16 13:19:25.37 TuLjfX7k
スクリプトでコマンドライン引数は扱えますか?
例えば、
>foo.avs file1.avi
のように引数を渡したいです。
852:名無しさん@編集中
13/01/16 15:28:34.81 5Mi+dEdM
そりゃavsを渡すプログラムによるだろ
avisynth自体はdllであって実行ファイルじゃないぞ
853:851
13/01/16 16:08:47.66 oe8K3qhI
勘違いしていました。
具体的には、GOM Player, KMPlayer, VirtualDubModに渡しています。
そして、foo.avsに動画の情報をテキストファイルに書き出す関数があって、
writeInfo("C:\movie\bar.avi")
で書き出せます。しかしこれだとハードコードなので、ファイルパスを指定したいんです。
ファイラー上でフォーカス中の動画を処理するためです。
どうすれば実現できますか?
854:名無しさん@編集中
13/01/16 16:22:02.27 5Mi+dEdM
だったらavs自体を生成するコマンドなりスクリプトなりをavisynth以外の言語で書けばいいだろ
avisynth自体はファイルのパスはハードコードするか、グローバル変数として他のavsで設定された
文字列をimportするくらいの機能しか持ってないぞ
855:851
13/01/16 16:43:45.20 oe8K3qhI
ああそうなっちゃいますか。やってみます。ありがとうございます。
856:名無しさん@編集中
13/01/18 17:46:06.59 ncRpt1zU
インタレ保持エンコって結局
テレシネ化しながら再生すると30FPS部分も24FPS相当の動きになるし
テレシネ化しないなら30FPS部分は良くても、24FPS部分がカクカクになるし
サイズも増えて、一番中途半端だと思う
しいて言うなら、作品ごとに再生するときに、30FPSの動き重視か24FPSの動き重視か選べる利点はあるが
857:名無しさん@編集中
13/01/18 17:52:39.48 TAgE/VDH
頭大丈夫か?
858:名無しさん@編集中
13/01/18 18:38:09.74 ncRpt1zU
ああ間違った
30FPS部分は背景が24FPSでも動きがあるから30FPSとして処理されるんだっけ?
字幕のフェードとかは無理だけど
859:名無しさん@編集中
13/01/18 18:44:19.51 pRks3DK1
インタレだから全部60FPS処理だが
860:名無しさん@編集中
13/01/18 18:51:53.87 ncRpt1zU
60は24の公倍数じゃないからカク付く
倍速液晶なら120fps化して滑らかになるかもしれないけど
861:名無しさん@編集中
13/01/18 18:57:08.38 GbpWHZfo
インタレ保持を120fpsで再生したってハードテレシネなら同じだろ
862:名無しさん@編集中
13/01/18 22:45:16.85 oX96hOz8
テレビで観るのと同じ動きになるわけだが、それがカクカクというならば仕方がない
863:名無しさん@編集中
13/01/18 22:59:51.27 fBCTTT1t
バカには触れないで下さい
864:名無しさん@編集中
13/01/19 12:22:20.09 tHH1nyp6
テレビはCMに入ったら24FPS化やめるだろ
常時、24FPS部分と30FPS部分を見極めながら処理してる
PCはデインターレスのフィルター次第だろ
強制24FPSに決め打ちしてデインターレスしてるフィルターは
30FPS部分の動きは24FPSになるよ
865:名無しさん@編集中
13/01/19 12:50:44.59 +IaiU1ab
横スクロールテロップとか混じらなけりゃ全部24fpsでも平気じゃね?
別にエンコした動画を誰に見せるわけでもないだろうしな。
866:名無しさん@編集中
13/01/19 12:57:43.92 UmF5xGkM
> 誰に見せるわけでもない
これだけでもう好きにやれとしか
867:名無しさん@編集中
13/01/19 19:00:26.21 wAEkrwux
HDからSDへダウンコンバートについて
PT2で録画したtsをdvd(市販のデッキで見れる奴)にしたいのですが
以下の方法でエンコードすると実写ソースなどで動きがある部分が
縞々になったり線がギザギザになってしまいます。
何か解決策はありませんか?
入力.avs
Yadif(mode=1) またはTDeint(mode=1, type=3, full=false, tryweave=true)
ColorMatrix(mode="Rec.709->Rec.601",interlaced=false)
Spline36Resize(704,480)
AssumeTFF()
SeparateFields()
SelectEvery(4, 0, 3)
Weave()
avs2pipemod.exe -y4mt=40:33 入力.avs |ffmpeg -y -i - -threads 6 -target ntsc-dvd
-flags ilme+ildct -top 1 -vcodec mpeg2video -s 704x480 -aspect 16:9 -r 29.97 out.mpg
868:名無しさん@編集中
13/01/19 20:47:48.41 ViJyTLHh
PT2からスクランブル解除して録画した時点でそれ法律違反だから…
ゆえに幇助する事はできないから回答いたしかねる
869:名無しさん@編集中
13/01/19 20:54:05.35 UmF5xGkM
いつ録画したかにもよるけどな、遡及処罰は出来ないし
870:名無しさん@編集中
13/01/19 21:28:11.58 DqlBy9hX
>PT2からスクランブル解除して録画した時点でそれ法律違反だから…
このように法改正した戦犯って誰なの?
マジで氏ね!
871:名無しさん@編集中
13/01/20 03:09:29.91 B4PRPy0a
>>867
ffmpegではなくHCencでやっているけど、別に問題はない。
872:名無しさん@編集中
13/01/20 16:17:21.82 qmoiHabV
>>867
-y4mtじゃなく
-y4mpに
873:名無しさん@編集中
13/01/21 20:12:01.44 Kzdma2Gm
>>868
BDレコーダーで録画したものをエンコするのも法律違反になるのか?
874:名無しさん@編集中
13/01/21 20:31:28.81 +eeOHgtT
スレチ
875:名無しさん@編集中
13/01/22 18:48:25.87 ldA1ku3d
特定のフレームをフレームレートの違う別のクリップの特定のフレームで置換する関数やプラグインって何かないですか?
avisynth.info見るとdrって関数があるようですがリンクが死んでいてぐぐっても見つからない状態です。
drをUPしていただくか代替となる何かを教えて下さい。
876:名無しさん@編集中
13/01/22 18:56:10.71 8qC+e41h
AssumeFPSでFPS揃えればいいだけじゃね
877:名無しさん@編集中
13/01/22 19:26:55.11 isDmieSh
RemapFrameがちょうどそんな感じのフィルタだったような
878:名無しさん@編集中
13/01/23 08:19:14.26 np6CceMX
1フレームだけ入れ替えたいってこと?サブリミナル?
879:名無しさん@編集中
13/01/23 09:37:55.02 e6fDGUuH
>>877
調べてみます。
>>878
そうです。1フレームだけ入れ替えたいです。
880:名無しさん@編集中
13/01/23 11:41:10.56 feuFvz+E
だからこれじゃダメなの?
a=AVISource("aaa.avi")
b=AVISource("bbb.avi")
target=b.Trim(500,-1)
a.Trim(0,499) ++ target.AssumeFPS(a) ++ a.Trim(501,0)
881:名無しさん@編集中
13/01/24 07:35:55.34 1eHPeDhc
それだと音途切れそう
882:名無しさん@編集中
13/01/24 09:46:35.39 HP1ujgvK
aviutlとかVirtualDubでコピペしたら?
出力でつまずくかも、だが
883:名無しさん@編集中
13/01/24 10:39:55.51 PhAoIbPn
音に関しては適当な変数にKillVideoしたのを入れておいて
処理が終わったらそれをAudioDubすればいいと思う
884:名無しさん@編集中
13/01/24 12:50:40.54 1Avna+wn
つーかシーンチェンジごとにtrimすればいいだけじゃね?
きりのいい数字にあわせて音が途切れたら笑えんぞw
885:名無しさん@編集中
13/01/25 04:11:57.63 tqj5Rowc
1フレームだけoverlayでもしたほうがよくね
886:名無しさん@編集中
13/01/26 02:15:05.13 93WOzBQz
超てきとー
a=AVISource("aaa.avi")
b=AVISource("bbb.avi")
a++b.AssumeFPS(x,y)
FreezeFrame(500,500,100000)
Trim(0,z)
887:名無しさん@編集中
13/02/01 23:42:55.86 XKduXnFP
実写ソースでビットレート不足のブロックノイズが出てる場合のでブロックには何使ってます?
aviutlのdmb.auf使ってるけどavisynthのでもっといいものがないかと
888:名無しさん@編集中
13/02/02 00:53:21.21 lM5IBmYz
ビットレート不足ならビットレート上げれば?
889:名無しさん@編集中
13/02/02 01:27:53.91 kieK08FA
ソースに出てるのにエンコ後のビットレート上げても意味ないだろw
890:名無しさん@編集中
13/02/02 02:43:42.72 lM5IBmYz
ソースか
実写ソースでエンコした結果ブロックノイズが出てるのかと思ったw
実写ソースがビットレート不足でブロックノイズが出てる場合 て書いてくれよ
891:名無しさん@編集中
13/02/02 03:12:19.76 X9Cfj0ni
エンコとかだとビットレ不足でブロックノイズなんて出ねぇだろ
エンコした動画でブロックノイズが出る場合は決まってデコーダ側の問題だしな
MS DTV+EVRだと特に出やすいし
エンコの場合はビットレが足りないと、文字などの輪郭が滲んだり崩壊したりすることはあるけど
それはブロックノイズとは全く異なる症状だぜ
892:名無しさん@編集中
13/02/02 03:29:35.94 hRDSc681
>>887
これなんかが強力
URLリンク(avisynth.org)
893:名無しさん@編集中
13/02/02 05:58:22.73 9mC+pkv0
>>891
滲んだりボケるのはブロックノイズをデコーダ以降の仕事がデブロッキングなどをしているだけで
エンコード時にレート不足であるほどブロックノイズが出やすい傾向はある
レート不足になるほど各ブロックの符号・復号誤差が大きくなって
そのブロックの境目で歪みがノイズとして目に見えやすくなる現象
ブロック化しにくいのはwavelet変換なコーデック
894:名無しさん@編集中
13/02/02 11:14:08.49 mFLMZs1U
順番にbatファイルでエンコード処理させたいんだけど、pauseを書いてないのに1つ終われば、「続行するには何かキーを押してください」ってなって止まるようになった。
新しいPCにしてwin7 32bit から64bitに変えたのが原因なのかな?使ってるのはこんな感じ
@echo off
echo "No1"
echo Start %time%
echo "----------------------------------------------------------------------------------"
call "ファイル名.bat" "ファイル名.avs"
ping localhost -n 6 >nul
echo .
echo .
echo "----------------------------------------------------------------------------------"
echo End %time%
ping localhost -n 6 >nul
echo .
echo .
後は"No2"とかにしてファイル名だけ書いて同じように続けて書いてるだけ
ネットで見つけたのそのまま使わせてもらってる
前はこれで1つ終われば順番にエンコしてくれたんだが
出かけて帰ってきても1つだけ終わって止まってるから困ってる、誰か助けてくれ
895:名無しさん@編集中
13/02/02 11:19:13.55 l1oxmWFk
まず
@echo off
を
echo on
にしてどこまで処理が進んでるか確認したら?
896:名無しさん@編集中
13/02/02 12:00:01.63 Ld2ekQ7u
"ファイル名.bat" の中身を晒してくれ
897:名無しさん@編集中
13/02/02 13:00:18.73 p6g6DpuR
ウチも7の64bitだが問題ないぞ
同じトコ見て参考にしてやってるけど
898:名無しさん@編集中
13/02/02 13:13:50.14 0aidL2UQ
ファイル名.batの中にpauseがあるんじゃ
899:名無しさん@編集中
13/02/02 14:41:50.28 qcSowggm
>>892
おおブロックノイズにピンポイントで利きますね
ありがとうございます
900:名無しさん@編集中
13/02/02 14:54:17.03 dUaN0vBz
自力でわかんないならシンプルにcallでbat呼び出せば良いのに
どうして意味もわからず人のを参考にするんだろう
901:名無しさん@編集中
13/02/02 15:36:17.35 XwL7b0tm
FOR IN DO (CALL)でhoge.bat %~1をループさせるのが一番しっくりくる
902:名無しさん@編集中
13/02/02 22:08:34.43 mFLMZs1U
普通にファイル名.batの最後にpauseあった
今まで使ってたやつ使いまわしてたから全然気にしてなかったわ
pauseなんか書いたつもりないけどなんか書いてたみたいだ
これからはもっとよく確認してみるぜ
903:名無しさん@編集中
13/02/02 23:04:30.16 i1AVAANM
∧∧
ヽ(・ω・)/ ズコー
\(.\ ノ
、ハ,,、  ̄
 ̄
904:名無しさん@編集中
13/02/03 20:00:58.72 QczBEGK7
まあよくあることだ
スペルミスで延々悩むとか
905:名無しさん@編集中
13/02/04 11:20:27.21 wMjs0JTq
24fps化についてですが、
周期一定のtsソースをMpeg2Sourceで読み込んで、
Doubleweabe().SelectEvery(10,a,b,c,d)とした時に、
SelectEvery()の組み合わせは間違っていないのですが、aviutlでコマ送りしてみると
フレームによっては特に輪郭のエッジ部分にわずかにコーミングのようなものが発生しています。
普通に視聴する分には意識して見ない限り気付くようなもんではありませんが、
気付いてしまうとやはり何とか除去したくなります。
おそらく元ソースの、異なるフレームのTopフィールドとBottomフィールドの組み合わせの際に
発生するのではないかと推測しますが、そもそもこいつが発生する要因は何でしょうか?
YV12でd2vをavisynthが読み込んでしまうことと関係してたりしますか?
906:名無しさん@編集中
13/02/05 00:58:23.48 YbaLWQzg
>>905
俺も使って間もないから何とも言えないんだけど、それって解除漏れの縞?
doubleweave()やめて動き適応型の外部デインタレフィルタを使ってみたらどだろ?
軽いのが良いならTDeint(mode=2, type=2)とかAutoDeint()
間引きはTDecimate(mode=1,hybrid=0)
それでも縞が残るならvinverse()を入れてみるとか
907:名無しさん@編集中
13/02/05 01:44:30.38 qFFc0wp9
クロスコンバートだろ
908:905
13/02/05 02:21:56.63 2HUTxb7n
>>906
解除漏れが何を指すのか、イマイチ理解はできないんですが、
リンクの画像のように、画面全体ではなく、一部の輪郭に発生するので、
SelectEveryした結果、正しい候補を選んでいるとは思います。
まあ、動画として視聴してる分には気がつかないっちゃ気がつかないんですけど。
URLリンク(lh3.googleusercontent.com)
以前はTIVTCとか使ってたんですけど、画面全体がチラつくような場面だと誤爆するんで、
周期一定ならDoubleWeave().SelectEvery()した方が無難なハズなんですよね。。。
>>907
クロスコンバート調べてみました。
アニメを720i→1080iに変換する時に下手すると発生することが多いみたいですけど、
多分違うと思います。
909:名無しさん@編集中
13/02/05 02:29:35.23 RPYDixVy
正しい候補を選んでいないと思います
910:名無しさん@編集中
13/02/05 09:53:18.79 9QCHMF5H
人物なんてゆらゆら動くものなのにネクタイにだけコーミングが起きてるのが不思議
きっとこういう柄のシャツを着てる
911:名無しさん@編集中
13/02/05 10:31:21.27 d2pF/1Nt
インターレースってそういうものでは
912:名無しさん@編集中
13/02/06 13:52:12.50 tUtMVFIE
DGIndexで作ったd2vソースがtffでもbffの場合でもtffに統一したいのですが、以下のコードで合っているでしょうか?
DGDecode_MPEG2Source(d2v="input.d2v", idct=3, upConv=0)
DoubleWeave().SelectOdd()
AssumeTFF()
913:名無しさん@編集中
13/02/06 15:06:08.66 xVOdOwA0
DoubleWeave().SelectOdd()は、tffをbffに、bffをtffに作り変えると思うから
2行目は↓の方がいいと思う
GetParity() ? last : DoubleWeave().SelectOdd()
914:名無しさん@編集中
13/02/06 16:07:59.27 536u+xku
bbb関数とプラグインでのBob化とでは何が違うんですか?
915:名無しさん@編集中
13/02/06 17:25:21.26 tUtMVFIE
>>913
ありがとうございます
これで心置きなくx264とQSVEncCにtffとして入力できます
916:名無しさん@編集中
13/02/06 17:30:50.39 AGJ2R70T
>>908
>アニメを720i→1080iに変換する時
それはクロスコンバートちゃうで。
クロスコンバートってのは、プログレをインタレへ変換させるときに使う用語な。
917:名無しさん@編集中
13/02/06 21:14:19.36 U3sjaC9j
クロスコンバートミスとかっていわれてるやつじゃないかな?
本来なら、720i→720p→1080p→1080iって手順を踏まないといけないのに、
720i→1080iってやっちゃうとでる縞?のことだったかと。
918:名無しさん@編集中
13/02/11 14:08:44.90 KDrUjeqv
backupstreet.comの手順通りにやってるのに
「ファイルを再生できません。プレーヤーがそのファイルの種類をサポートしていないか、そのファイルの圧縮に使用したコーデックをサポートしていない可能性があります。」
というエラーメッセージが出てavsファイルを再生できない
PowerDVDもMPEG-2コーデックもインストールされている
ネットで調べても解決方法はなかった
WMPCインストールしたら解決した人はみつかったがそれもインストール済み
何このゴミソフト・・・・
919:名無しさん@編集中
13/02/11 16:38:00.17 wvnIEz+y
スレチ
920:名無しさん@編集中
13/02/13 17:38:13.02 LW4NyAG6
ditherのdocに載っていた下記のシャープを使っているのですが
dfttest (lsb=true)
f = DitherPost (mode=-1)
s = f.Sharpen (0.20)
d = mt_makediff (s, f)
DitherPost ()
mt_adddiff (last, d, u=2, v=2)
easyVFRでの記述を教えていただけないでしょうか?
DGSource(".dgi")
AudioDub(last, WavSource(".wav"))
AssumeFrameBased.AssumeTFF()
Trim() ++ Trim()
audio = KillVideo()
Src = KillAudio()
oldcount = Src.FrameCount
oldfps = Src.FrameRate
T1 = Src.Trim(0, 7011)
T1 = T1.AssumeTFF()
T1 = T1.FrameCache(9).Auto24FPS(true, 24, 16, "", false).vinverse()
・
・
・
921:名無しさん@編集中
13/02/13 18:54:24.87 7VvRu5Y7
function Dither_Sharpen (clip clip) {
clip = clip.dfttest (lsb=true)
f = DitherPost (clip, mode=-1)
s = f.Sharpen (0.20)
d = mt_makediff (s, f)
clip = clip.DitherPost ()
return mt_adddiff (clip, d, u=2, v=2)
}
適当だけどこんなんか?
922:名無しさん@編集中
13/02/13 20:00:18.74 BLrStTBC
>>921
おお、有難うございます。それでいけました!!
図に乗っているようで恐縮なのですが、
SharpenのパラメータをDither_Sharpenのほうで設定出るような関数の書き方を知りたいです。
それと
dfttest (lsb=true)
Dither_convert_8_to_16 ()
どちらも8bit→16bitだと思うのですが、
例えばDither_resize16を使うとして、dfttest (lsb=true)、Dither_convert_8_to_16 ()
どちらでもいいのでしょうか?
923:名無しさん@編集中
13/02/13 20:10:20.35 caHwAZ/O
>>922
function Dither_Sharpen (clip clip, float "sharp") {
sharp = default(sharp, 0.20)
clip = clip.dfttest (lsb=true)
f = DitherPost (clip, mode=-1)
s = f.Sharpen (sharp)
d = mt_makediff (s, f)
clip = clip.DitherPost ()
return mt_adddiff (clip, d, u=2, v=2)
}
こんなとこかな
Dither_Sharpen("hoge.avi", sharp=0.20) 書式はこう
パラメータの上限下限は知らないので、分岐警告はつけてない
後者の問いは誰かたのむw
924:名無しさん@編集中
13/02/13 20:41:13.33 sqVipRLh
テキトーだけどdfttest (lsb=true)だけだとdfttest(ノイズ除去)のデフォルト値が適応されない?
初期値はsigma=16.0でかなり強気だったはず
925:名無しさん@編集中
13/02/13 20:51:37.00 sqVipRLh
ああ、答えになってない
1. dfttest (lsb=true) # 8bit->16bit & ノイズ除去
2. Dither_convert_8_to_16 () # 8bit->16bit
なので
Dither_convert_8_to_16 ().dfttest (lsb=true) #Clipは16bit
または
dfttest (lsb=false).Dither_convert_8_to_16 () #Clipは16bit
と、しなければいけない。
前者の方が精度が高いはず
926:名無しさん@編集中
13/02/13 20:57:55.40 sqVipRLh
個人的には頭の中でごっちゃになるのを防ぐ為に↓のオプションで今どちらのbit内にいるのか明示した方がいいと思う
lsb=trueなら出力が16bit、falseなら出力が8bit
lsb_in=trueなら入力が16bit、falseなら入力が8bit
927:名無しさん@編集中
13/02/13 21:10:31.33 BLrStTBC
>>923
重ね重ね有難うございます。納得のいく結果になりました。
>925
解説有難うございます
dfttestはデノイズだったのか、それに8to16のパラメータが付いてるって事か
928:名無しさん@編集中
13/02/13 21:51:05.42 8Sfbumll
dfttestはデフォだとバンディング出るくらいノイズ除去しちまうぞ
929:名無しさん@編集中
13/02/14 05:15:19.92 oFsQ5BP7
CPUはFX8350@4.7Ghzだが
アニメソースな映像をavsを通さずにx264 2245JEEBでエンコードさせると平均で110fps前後でるんだけど
avsを通してあれこれフィルタを挟むと40fps前後まで落ちてしまう。
これをさらに加速させるにはMTとかでごにょごにょするしかないんだよな
GPUフィルタもフィルタの処理が軽すぎるとすぐ律速になって使い物にならないし
結局のところ速度重視でエンコしたいならavsは通さないほうがいいのかね
アニメ程度の映像で40fps前後も出れば十分早い方だと思うんだけどな
通さない場合と比べて半減するのはなんか損した気分、なにか妙案とかあったら
落書きしていってくれ。
930:名無しさん@編集中
13/02/14 05:32:52.59 v88wIQ7G
>>929
avsの内容が分からないから何とも言えないけど、SetMTMode(2)で動くフィルターだけを選ぶとかはできる。
あと、内容によってはMTよりもThreadRequestの方が速くなるかもしれない。
931:名無しさん@編集中
13/02/14 11:03:59.40 IkBECrRm
>>929
そりゃフィルタ重ねれば遅くなるのは当然かと
DGdecNV読み込み、デインタレ、trim、リサイズ程度なら差は無いと思うよ
932:名無しさん@編集中
13/02/14 11:49:09.22 N4Bt+3IM
どこで質問したら良いのかわからなかったので先にスマン
L-SMASHのremuxerは.idxな字幕は対応してない?orどこか間違ってる?
remuxer.exe -i "hoge.mp4" -i "hoge.m4a -i "hoge.idx" -o "a.mp4"
933:名無しさん@編集中
13/02/14 13:48:35.58 +VQFdRyI
>>932
-i "hoge.m4a
転載ミスかもしれないけど、ここだけ後ろに"が付いてない
934:名無しさん@編集中
13/02/14 15:24:43.18 4HFJj/dQ
>>932
idx字幕は対応してない
理由は正式なMP4コンテナ規格ではないから
どうしてもidx埋め込みたいならMP4Boxつかうしかない
935:名無しさん@編集中
13/02/14 17:56:27.57 N4Bt+3IM
>>933-934
レスさんくす
やっぱりidx対応してなかったか
ロスレスALACがL-SMASHで格納できるから使おうと思ってたけど
やっぱりMP4Boxでいいか
936:名無しさん@編集中
13/02/14 18:39:52.22 vHGH1/Wz
mp4boxでalac対応したよ
937:929
13/02/15 17:08:06.54 PMl6Lq20
>>930-931
レスありがとう。
週末あたりにでも試してみるよ。
938:名無しさん@編集中
13/02/15 22:26:43.24 2/XpB8A/
OSをリガバリしてAvisynthを入れなおすんだけど
公式の2.5.8以外のお勧めビルドとかありますか?
939:名無しさん@編集中
13/02/15 22:44:44.61 bKM5Y1yn
AviSynth 2.6.0 Alpha4 [Jan 14th, 2013]
URLリンク(forum.doom9.org)
940:名無しさん@編集中
13/02/20 20:00:38.17 SNRNomhK
ぐぐってもわからなかったのでお願いします
やりたい事4000フレームくらいのプログレッシブソースのブレンド
clip a (a0,a1,a2,a3,a4)
clip b (b0,b1,b2,b3,b4)
を(a0.b1.b2.b3.a4)順に並べて出力したいです
941:名無しさん@編集中
13/02/20 20:12:02.67 SNRNomhK
すいません間違えました
clip a (a0,a1,a2,a3)
clip b (b0,b1,b2,b3)
をclip c (a0,b1,b2,b3)
a0,b1,b2,b3,a4,b5~の並び順にしたいのです
942:名無しさん@編集中
13/02/20 21:03:54.69 JACNPDhE
Interleave(a, b).SelectEvery(8, 0, 3, 5, 6)
943:名無しさん@編集中
13/02/20 21:19:31.44 SNRNomhK
>>941
ありがとうございます
それでやってみます
944:名無しさん@編集中
13/02/20 21:40:07.13 b31lS94T
SelectEvery(10,0,3,5,7,8)?
945:名無しさん@編集中
13/02/20 22:11:52.15 JACNPDhE
SelectEvery(8, 0, 3, 5, 7)か、失礼
確認用
a = BlankClip().ScriptClip("""Subtitle("a" + String(current_frame), size=120)""")
b = BlankClip().ScriptClip("""Subtitle("b" + String(current_frame), size=120)""")
Interleave(a, b).SelectEvery(8, 0, 3, 5, 7)
946:名無しさん@編集中
13/02/22 23:10:19.57 p9nrDMlT
ここ眺めてるとみんなすげーなって思う
俺も早く初心者としてここで質問したい
947:名無しさん@編集中
13/02/23 03:59:20.51 wdXqt+7o
>>938
2.6のMT版を探して入れる
948:名無しさん@編集中
13/02/25 12:21:49.17 /z1mn5Ec
2.6 MT のソースって、現在だとどこで集めて差分を当てればいいの?
SEt氏の最新版の差分はあるようだけど。
949:名無しさん@編集中
13/03/16 21:30:00.63 5iidGPEm
2.6MTでMT()が使えればなぁ・・・
doom9フォーラムで要望出てるが絶賛放置されてる(´・ェ・`)
950:名無しさん@編集中
13/03/16 21:41:10.80 hlU3ft9d
魔法の .ThreadRequest() 多用
2.6MT使ってる意味あるのかなぁ