たまりば

  パソコン・インターネット パソコン・インターネット  三鷹市 三鷹市

マイク入力で映像キャプチャ
2011年08月27日 13:42

ふとNTSCのコンポジット映像信号をキャプチャしたくなったのだが、そういう機械は持っていない。
だがPCには映像入力はなくてもマイク入力がある。
映像も音声も所詮は同じ電気信号。線も同じのを使ってるんだしきっと似たような電圧だろう。
というわけで、PCのマイク入力に映像の黄色いコードをつないでキャプチャしてみた。

結果から見せよう。これだ。
マイクでNTSCキャプチャ
横3200pxあるのではみ出しているが気にしない。

図の見方だが、この図の1ラインが映像の1画面(正確には1フィールド)に相当する。
つまり黒い線は水平同期信号ではなく垂直同期信号である。水平同期信号は全体にぽつぽつとある黒い点の方だ。
垂直同期信号付近の水平同期信号は他と違う形になるはずなのだがこれはなっていない。安物だし省略しているのだろうか。
この画像の1ラインを黒い点を基準に分けて(262分割)並べると1画面が再現できるはずだが、うまいやり方が思いつかないのでやらない。
これで横解像度が12ドット、同期信号を除いて9ドットくらいあるので、大きな絵なら判別できるレベルの画像になるんではないかなと思う。

最後にこの画像の制作過程を一応説明しておく。
・映像出力はファミコン互換機から。
・PCのマイク入力端子に映像コードをつなぐ。
WaveSpectraというソフトでサンプリング。周波数は最高の192kHz。
・8bitモノラルでWav書き出し。
・幅を計算する。
NTSC信号は60フィールド/秒なので、192[kHz]/60[フィールド/秒]=3200[サンプル/フィールド]。
・GIMPで横幅3200ドットの画像を作り、白~黒のグラデーションを描いてグレースケールでbmp保存。
・バイナリエディタで、さきほどのbmpのヘッダ部分だけを取り出す。
・コマンドプロンプトからcopy /bでbmpヘッダにwavファイルを結合。
・GIMPで開いて上下反転、色が逆だったので階調反転、見にくかったので適にレベル補正。
・できあがり。

続編  
タグ :画像