vlcでMacBookProのiSightを使う2009/05/18 15:43

いつからか忘れたけど、MacOSX版の vlc で iSight からキャプチャできるメニューが増えている。

だけど MacBookPro だと内蔵カメラの映像が出ない。
どうもカメラの映像サイズは320x240のようで、
vlc の注意書きでは 640px*480px raw video stream とあるのが原因ぽい。

そこで、vlc のソースコード qtcapture.m を見ると、
640x480を指定している箇所があったので、
320x240に変更してコンパイルすると表示できるようになった。
めでたしめでたし。

修正箇所は qtcapture.m の 255行あたり
/* Hack - This will lower CPU consumption for some reason */
[p_sys->output setPixelBufferAttributes: [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt:480], kCVPixelBufferHeightKey,
[NSNumber numberWithInt:640], kCVPixelBufferWidthKey, nil]];

それと、291行あたり
NSSize size = [[p_sys->device attributeForKey:QTFormatDescriptionVideoEncodedPixelsSizeAttribute] sizeValue];
p_sys->width = fmt.video.i_width = 640;/* size.width; FIXME */
p_sys->height = fmt.video.i_height = 480;/* size.height; FIXME */


その他
ソースコードは vlc-0.9.9a.tar.bz2
開発環境は xcode 3.1.2

コンパイル手順は以下の記事を参照
http://eijis-pan.asablo.jp/blog/2009/05/23/4320057

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://eijis-pan.asablo.jp/blog/2009/05/18/4311115/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。