にわとり遊び
PC関連とエンコードの覚書き
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

簡易L字除去関数 LEraser
2016/04/27
関数最後のLeterboxのstart,endの指定ミスを修正


前に投稿したものがあまり上手くないようだったのでちょっと改良。

function LEraser (clip clip,float start,float end,float frames,float "top",float "bottom",float "left",float "right",int "LBtop",int "LBbottom",int "LBleft",int "LBright")
{
start=int(start*2)
end=int(end*2)
frames=int(frames*2)
top=default(top,0)
bottom=default(bottom,0)
left=default(left,0)
right=default(right,0)
t=(top/2)/frames
b=(bottom/2)/frames
l=left/frames
r=right/frames
LBtop=default(LBtop,0)
LBbottom=default(LBbottom,0)
LBleft=default(LBleft,0)
LBright=default(LBright,0)

function Lstart(clip clip,int start,float t,float b,float l,float r) {
ScriptClip(clip,"
tc=(current_frame-"+string(start)+")*"+string(t)+"
bc=(current_frame-"+string(start)+")*"+string(b)+"
lc=(current_frame-"+string(start)+")*"+string(l)+"
rc=(current_frame-"+string(start)+")*"+string(r)+"
Spline36Resize(last.width,last.height,lc,tc,last.width-lc-rc,last.height-bc-tc)
")
return last
}
function Lcrop (clip clip,int frames,float t,float b,float l,float r) {
tc=t*frames
bc=b*frames
lc=l*frames
rc=r*frames
clip.Spline36Resize(clip.width,clip.height,lc,tc,clip.width-lc-rc,clip.height-bc-tc)
return last
}
function Lend(clip clip,int end,float t,float b,float l,float r) {
ScriptClip(clip,"
tc=("+string(end)+"-current_frame)*"+string(t)+"
bc=("+string(end)+"-current_frame)*"+string(b)+"
lc=("+string(end)+"-current_frame)*"+string(l)+"
rc=("+string(end)+"-current_frame)*"+string(r)+"
Spline36Resize(last.width,last.height,lc,tc,last.width-lc-rc,last.height-bc-tc)
")
return last
}
clip.SeparateFields
ApplyRange(start,start+frames,"Lstart",start,t,b,l,r)
ApplyRange(start+frames+1,end-frames,"Lcrop",frames,t,b,l,r)
ApplyRange(end-frames+1,end,"Lend",end,t,b,l,r)
Weave()
ApplyRange(start/2,end/2,"Letterbox",LBtop,LBbottom,LBleft,LBright)
return last
}


clip : 関数を適用するクリップ
start : L字が出始めるフレーム。片フィールドの場合は 100.5 のように0.5を足して指定する。
end : L字区間が終わるフレーム。
frames : L字の出始めから完成までのフレーム数。
top , bottom , left , right : L字テロップの上下左右を指定する。
LBtop , LBbottom , LBleft , LBright : Letterboxで上部を黒くする。


使用例
#NTV
LEraser(91.5,4136.5,30,left=200,bottom=1080-930)
LEraser(4361.5,22058,30,left=200,bottom=1080-930)
LEraser(22205,41298.5,30,left=200,bottom=1080-930)

#TX
LEraser(34.5,4253,27,left=215,bottom=1080-918)
LEraser(4580.5,23343,27,left=215,bottom=1080-918)
LEraser(23366.5,43152.5,27,left=215,bottom=1080-918)



スポンサーサイト
フレーム数を指定して一部分にOverlayを使う (ApplyRange)
2局ブレンド前提の話です。
OverlayとApplyRangeを使って一方のソースだけに出るテロップを消します。

before.png

V1=AVIFileSource("BSJ 1.avs")
V2=AVIFileSource("TX 1.avs")
overlay(V1,V2,opacity=0.3)

#テロップ消し
V2mask=V2.Crop(0,700,0,0)#テロップなしのソースをCrop
ApplyRange(20,300,"Overlay",V2mask,0,700)#20-300までOverlay

after.png

実際に使うときはテロップの範囲だけCropします。
この例の他にムービングロゴや宣伝テロップなどに有用です。
多局ブレンドのエンコードについて
ここで紹介する多局ブレンドというのは、同じ番組の放送局が違うソースを重ね合わせてノイズを抑えるエンコードの方法です。

画像の比較
BSJ.png
BSJ

TX.png
TX

BSJ+TX.png
BSJ+TX (7:3)

利点
局によってノイズの出方が異なるので、これを重ね合わせるとノイズ部分が平滑化され、全体的な画質の向上が見込めます。ノイズが減ることでファイルサイズを抑える効果もあります。

難点
まず手間がかかることが挙げられます。2局分のCMカット/逆テレシネなどの基本処理に加えて、CM明けの開始フレームのズレがあるため、パートごとに確認・修正の作業が必要です。フレームの縦横位置がずれている場合は位置合わせも必須です。
他にもエンコードの速度低下、多局ソース確保の日時的な遅れなどもあり、番組によっては難しい手段となります。
※VFRなmp4の場合、結合すると不具合が出るかもしれません。

方法
1.多局のソースを用意し、パートごとに切り分け、逆テレシネを行う。
※Itsを使用する場合は、Itsを複数箇所で同時に使用することができない為、Its1.dll,Its2.dllなどとして複数のファイルを用意し局ごとに違うItsをロードする必要があります。

各局・パートごとに用意するavs
#video = MPEG2source("datafile\datafile.d2v")
#audio = WAVSource("datafile\datafile.wav")
#AudioDub(video, audio)
MPEG2source("datafile\datafile.d2v")
AssumeTFF()
Import("Trim1.txt")
Its(def = "time1.def", fps=-1, output = "datafile\timecode.tmc")
Spline36Resize(1440,last.height,-0.2,0,1920,0)
#Loop(2,0,0)
#DeleteFrame(0)

AssumeFPS("ntsc_film")
return last

2.パートごとに分けたavsをOverlayによって重ねあわせ、開始フレームの位置をあわせる。
開始位置合わせは、LoopやDeleteFrameを使用するのが簡単。

まとめavs
V1=AVIFileSource("局1.avs") 音声入りのavsをV1で読み込む。
V2=AVIFileSource("局2.avs")
overlay(V1,V2,opacity=0.5)
Spline36Resize(1280,720)
return last

3.まとめavsをエンコードする
エンコード後、パートごとのmp4を結合する。

補足
フレームの縦横位置は意外とずれている事が多いので、AvsPmodで拡大して比較するとわかりやすいです。
細かい位置合わせにはリサイズを使用します。

局の画質に優劣がある場合はOverlayのopacityを調整すると良い結果になります。

フレームの状態によっては片方の局がノイズが多くて足を引っ張る事もありますが、
動画としては安定した画質になるので一度試してみる事をおすすめします。

さらなる安定化を計るには間引きフィールドのブレンドという手もありますが、これは気持ち程度の効果です。
自動化に組み込めるので、手間がかからないという意味では良いかもしれません。
間引きフレームのブレンド 間引きフレームのブレンドの記述

2011年冬アニメ(又は終了したアニメ)のひとこと感想
ジュエルペットてぃんくるを観終わったので、3回目の編集…。

1位 タクト
2位 ハートキャッチプリキュア
3位 まどか

この時期のアニメの中ではタクトが一番好きで、1話を見た時点でもうやられてしまった。
タウバーンの登場シーンがスゴイかっこよかったんだもの。
3位までのアニメは最初から最後まで全部面白かったんだけど、この順位は自分が感じたアツさの差。

ジュエルペットてぃんくるもめちゃくちゃ良かった。
でも、まどかと両方録画してあるとして、どちらを先に見たいかっていうと、まどかかな。
ただし、これから先どちらが記憶に残るかで言うと間違いなくてぃんくるの圧勝。

他のアニメは、この言い方はあまり好きじゃないけど、不作だった。特に原作モノ。
個人的な意見だけど、原作モノはその媒体向けに作って人気が出たものだから、
どんなに原作が面白いとしても、そのままアニメにしたらそれなりのアニメにしかならないと思う。


以下、最後まで見たアニメの感想と点数。

・ジュエルペットてぃんくる 85点
あかりちゃんは女神です。

・ハートキャッチ 90点
全部良かった。

・まどか 90点
最後まで見て、やはりストーリーはダントツで面白かった。

・IS 60点
途中まではラブコメで面白かったけど、最後は例によって命令無視&自分ルールで突っ走って結果オーライ?
結局ISが何なのか意味不明なまま終わってしまった。

・Rio 40点
可も不可もなく、面白いわけでもないのに最後まで見てしまった。

・SDガンダム三国伝 70点
今まで三国志というものに触れてこなかったので、コレが自分の中のデフォルト三国志になってしまった。
まあ入り口は人それぞれだよね。

・タクト 95点
1話を見たときの感動と疾走感そのままに最終回まで突っ走ってくれた。
キャラが自分の思った通りの、というかそれ以上に行動してくれる。こういうのってなかなかない。
特にオヤジをぶん殴ったときとか。ぶん殴ったときとか!
細かい設定とか(あるかもしれないけど)つじつま合わせなんてどうでもいい!
って思えるほどの熱さのあるアニメだった。

・お兄ちゃん 60点
マンガそのままの絵だったんだけど、アニメのほうがキャラデザインの特殊さが悪目立ちしてたように思う。
良くも悪くも原作通り。

・テガミバチR 60点
シルベットの可愛さにちょっと泣いた。

・インデックス2 20点
最後まで面白いエピソードが一つもなかった。キャラはみんな可愛い。

・ドラクラ 40点
主人公の強さに納得行かない点においては、上条さんを超えた。ローズよりも同級生の女の子(名前わすれた)が可愛い。

・バクマン 50点
「ジャック」に違和感を感じるところ以外は原作そのまま。

・フラクタル 10点
少しでも期待した分、ガッカリ感が酷い。

・マリー&ガリー2 60点
終わったか?と思ったら何週間か空けて新しい話をやっていたけど、ついに終わった。
1期に比べてパッとしない最終回だったなあ。

・みつどもえ2 60点
原作と全然雰囲気が違うんだけど、良い別物加減というかアニメ版はそれなりの良さがあって楽しめた。

・レベルE 60点
やたら間延びしていてスカスカな印象。

・君に届け2 70点
2期目は風早がグダグダしすぎで疲れた。でも待たされたぶん最終回はすごかった。

・放浪息子 80点
凄く良かった。マコちゃんが特に。

・メリー 60点
ところどころで出てくる猫の中田譲治が良い清涼剤になっていて、最後までまずまず楽しく見れた。

2011冬季?のアニメ
とりあえず出揃ったところで感想ー

・ゴシック
作画は可も不可もなく、話もなんだか良くわからないけど突出したところはない印象。

・IS
ヒロインは可愛い。でも女しか使えない設定が意味不明なまま2話が終わった。まさかこのままノン説明で行く気か。

・Rio
パチスロ原作、だったかな。キディガーランドみたいな作画で、印象もそれに吸い寄せられた感じ。でも2話はちょっと面白かったかな。

・お兄ちゃんの~
原作大好き。変態兄妹マンガ。いい具合にアニメにしてくれて、原作好きとしては及第点。

・ヴァンガード
よくあるストーリーって感じだけど、それだけに少年マンガ的な熱さを期待できる。

・べるぜバブ
1話だけだと、ギャグが滑ってるようにしか思えないんだけど、ここからどう面白くなっていくんだろう。

・みつどもえ
特撮を再現してるという点ではまあ…。でも2期だからって1話丸々は引くわー。

・レベルE
淡々としてるなー。原作どおりな感じ。

・君に届け
1話の総集編に泣かされるとは…。ベストオブ総集編にのっけてもいい出来だった。

・昭和物語
時代背景が昭和なだけで、主人公があまりにも棒読みすぎてきつい。

・夢喰いメリー
2話を見た時点では、先が読めない感じで面白い。

・フリージング
意味わかんないし、お色気で攻める気まんまんな上にボカシはいっちゃって絵が見えない。話もあまり好みでないようなのでもう見ないかな…。

・これはゾンビですか
どっかで見たような話にノリで、作画もキャラも好みではない。これもいいか…。

・ドラゴンクライシス
ローズが可愛いので見る。

・フラクタル
なんか、主に悪役にすごい既視感が…。次回以降が気になる。

・放浪息子
面白いとは思うけど、これはマンガで読まないと損な気がする。


凄く見たいって思えるのが、ほぼない。


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。