4

私は MAC OSX 開発の初心者です。OSX 10.7 で AVFoundation を使用して、生のフレームとしてビデオをキャプチャしたいと考えていました。カメラ デバイスに特定のビデオ解像度を設定する方法がわかりません。何らかの方法で VideoSettings を使用して設定しましたが、320x240 に設定すると、320x176 でキャプチャされます。API 呼び出しの不一致があるかどうかわかりません。

この問題を解決するのを手伝ってください。お返事お待ちしております.....よろしくお願いします.......

よろしく、 アナンド

4

2 に答える 2

3

AVCaptureDevice には 2 つのプロパティがあります。フォーマットとアクティブフォーマット。format は、cam によって公開されたすべてのフォーマットを含む AVCaptureDeviceFormat の NSArrary を返します。このリストからいずれか 1 つの形式を選択し、それを activeFormat に設定します。AVCaptureDevice lockForConfigration を呼び出して、devlce への排他的アクセスを受け取った後、必ずフォーマットを設定してください。フォーマットを設定したら、AVCaptureDevice unlockForConfigration でロックを解除します。次に、設定した形式のビデオ フレームを提供する AVCaptureSession を開始します。

AVCaptureFormat は、CMFormatDescription のラッパーです。CMVideoFotmatDescription は、CMFormatDescription の具体的なサブクラスです。CMVideoFormatDescriptionGetDimentions() を使用して、設定された形式で幅と高さを取得します。CMFormatDescriptionGetMediaSubType() を使用してビデオ コーデックを取得します。raw fotmats ビデオ コーデックのほとんどは yuvs または vuy2 です。圧縮形式の場合は、h264、dmb1(mjpeg) などがあります。

于 2013-04-10T16:00:09.683 に答える