スポンサーサイト

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

エンコ入門 - 第2回 プルダウン

 13, 2013 02:33
前回 は、フレームフィールドの違いや、テレシネの仕組みを書きました。
AviSynth画像2画像3 のように分離するには、SeparateFields() という関数を使います。

今回は、様々な プルダウン方式を確認しながら、30 FPS のテレシネ映像を、元通りの 24 FPS にする方法をご紹介します。

水増しフレームを作成するプロセスをテレシネ変換といい、どのフレームを増すのかどうかは
プルダウン方式によって様々です。

対象の動画が、どのようなプルダウン方式でテレシネ化されているのかを割り出すのが
逆テレシネ化の肝ですので、有名なものを何個か挙げます。


(1) 2-3プルダウン方式( 2:3:2:3
SeparateFields() : 1T 1B 2T 2B 2T 3B 3T 4B 4T 4B
004.jpg

お馴染みの方式です。アニメではほぼ間違いなくお世話になっています。
5 フレーム中 2 フレームが縞です。


(2) 3-2プルダウン方式( 3:2:3:2
SeparateFields() : 1T 1B 1T 2B 2T 3B 3T 3B 4T 4B
3-2.jpg

これもよく見かけます。暗記しておいて損はないです。
5 フレーム中 2 フレームが縞です。


(3) 2-3-3-2プルダウン方式( 2:3:3:2
SeparateFields() : 1T 1B 2T 2B 2T 3B 3T 3B 4T 4B
2-3-3-2.jpg

なかなか見かけません。というか私はまだ見たことありません。
5フレーム中、縞フレームが 1 つなので、小細工せずに 3 フレーム目だけを破棄すれば 24p になります。


(4) 2-2-2-4プルダウン方式( 2:2:2:4
SeparateFields() : 1T 1B 2T 2B 3T 3B 4T 4B 4T 4B
2-2-2-4.jpg

縞なし 24。
素直に 4 または 5 フレーム目を破棄しましょう。


では実際に AviSynth を使ってフレームを間引いてみましょう。

必要なフレームの周期が割り出せたら、あとはそれを切り出す作業ですが、(1) と (2) のパターンは
フレーム単位では取り出せないコマがありますので、一端保留とし、先に (3) と (4) のパターンについて対応してみましょう。

テレシネされた 30 FPS のクリップに対し、SelectEvery(a, [b,c,d...]) という関数を使います。
パターン (3) の場合は、SelectEvery(5, 0, 1, 3, 4)
パターン (4) の場合は、SelectEvery(5, 0, 1, 2, 3)
最初にパターン化しているフレーム数を指定し、それ以降は 0 から始まるフレーム番号を渡してやることで、周期的に指定のフレーム以外を間引いてくれます。


私の図解が分かり辛かった方は、にわとり遊び 様の図解がとても分かり易いので参照されるといいかもしれません(^_^;

逆テレシネの処理をしているとたまに混乱する事があるので、主要なプルダウン方式を図にまとめました。枠線で囲った四角が1フレーム。ソースフレームは4フレーム、プルダウン処理後は5フレームになります。また、DoubleWeave適用後は10フレームになります。詳細は http://www.avisynth.info/?DoubleWeave を参照。・2-3プルダウン(2-3-2-3プルダウン)アニメや映画でよく使われている方式。aを2フィールド、
テレシネのパターン




本題となるパターン (1) と (2) については次回。


twitter
↑参考になったという方は、是非記事のツイートをお願いします





関連記事
エンコ入門 - 第1回 インターレースとフレームとフィールド
エンコ入門 - 第3回 DoubleWeave と SelectEvery で正しいフレームを取得


スポンサーサイト

Tag:エンコード テレシネ プルダウン フィールド フレーム FPS

COMMENT - 0



WHAT'S NEW?

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