前回更新「Premiere ProとEncoreでH.264が音ズレする (個人的な) 問題ようやく解消」の続きに当たるエントリー。

上リンク先の要約
Premiere Proで (1本の動画を複数に分割して) 出力した場合、動画は音声よりも1フレーム余分に出力されてしまうので再結合時に結合ヵ所で1フレームずつカットしないと音声との同期が取れなくなってしまう。

今回のお話し
例えばPremiere Proから Mpeg2形式で動画を出力して、それをAviSynthに読み込ませたい場合は以下のように行う。
(DGIndexの利用を前提としている)

LoadPlugin("X:\AviSynth\plugins\DGDecode.dll")

  MPEG2Source("D:001.d2v") \
+ MPEG2Source("D:002.d2v").Trim(1,0) \
+ MPEG2Source("D:003.d2v").Trim(1,0) \
+ MPEG2Source("D:004.d2v").Trim(1,0) \
+ MPEG2Source("D:005.d2v").Trim(1,0) \
+ MPEG2Source("D:006.d2v").Trim(1,0) \
+ MPEG2Source("D:007.d2v").Trim(1,0) \
+ MPEG2Source("D:008.d2v").Trim(1,0) \
+ MPEG2Source("D:009.d2v").Trim(1,0) \
+ MPEG2Source("D:010.d2v").Trim(1,0) \
+ MPEG2Source("D:011.d2v").Trim(1,0)

return last

おまけ(というか応用)

LoadPlugin("X:\AviSynth\plugins\DGDecode.dll")

  MPEG2Source("D:001.d2v").mt("TemporalSoften(3,10,12,20,2)",9,0) \
+ MPEG2Source("D:002.d2v") \
+ MPEG2Source("D:003.d2v").mt("TemporalSoften(2,6,10,20,2)",9,0) \
+ MPEG2Source("D:004.d2v").Trim(1,0).mt("TemporalSoften(1,4,6,20,2)",9,0) \
+ MPEG2Source("D:005.d2v").Trim(1,0) \
+ MPEG2Source("D:006.d2v").Trim(1,0) \
+ MPEG2Source("D:007.d2v").Trim(1,0) \
+ MPEG2Source("D:008.d2v").Trim(1,0) \
+ MPEG2Source("D:009.d2v") \
+ MPEG2Source("D:010.d2v").Trim(1,0) \
+ MPEG2Source("D:011.d2v").ConvertToYV12

return last

ファイル別に「異なる処理」を行いたい場合は「.」を付けて処理を付加しながら読み込む。
スポンサー リンク

今回の場合の謎

 

音ズレの世界は深い。

あと、もう一言二言なにか書きたかった筈なのだけどここまで書いたら何を書きたかったか忘れてしまった。今日はここまで。