CAMERA_I2CSize*

構文

#include <twl/camera.h>

CAMERAResult CAMERA_I2CSize(CAMERASelect camera, CAMERASize size);
CAMERAResult CAMERA_I2CSizeAsync(CAMERASelect camera, CAMERASize size, CAMERACallback callback, void *arg);
CAMERAResult CAMERA_I2CSizeEx(CAMERASelect camera, CAMERAContext context, CAMERASize size);
CAMERAResult CAMERA_I2CSizeExAsync(CAMERASelect camera, CAMERAContext context, CAMERASize size, CAMERACallback callback, void *arg);

引数

camera 設定するカメラ(CAMERA_SELECT_IN/CAMERA_SELECT_OUT/CAMERA_SELECT_BOTH)
context 変更するコンテキスト
size カメラ解像度
callback 非同期処理が完了した際に呼び出す関数
arg コールバック関数の呼び出し時の引数

返り値

設定に成功したらCAMERA_RESULT_SUCCESSを返します。

説明

カメラの解像度を変更します。

CAMERA_I2CSizeEx() は、コンテキストを指定して設定を変更する場合に使用します。
Exなしの関数は、コンテキストA/B両方の設定を変更します。
コンテキストについては、CAMERAContext を参照してください。

CAMERA_I2CSizeAsync()CAMERA_I2CSize() とは異なり、制御をすぐに戻し非同期で実行されます。
処理の完了を確認するにはcallbackを利用してください。

なお、CAMERA_I2CFrameRate*() で CAMERA_FRAME_RATE_30_TO_10, CAMERA_FRAME_RATE_30_TO_5 もしくは CAMERA_FRAME_RATE_30 を 設定してある状態にもかかわらず、本関数で CAMERA_SIZE_VGA もしくは CAMERA_SIZE_DS_LCDx4 を設定するとキャプチャデータが受信できなくなりますので、この 2 つの設定を 同時に使用しないようにしてください。

注意:
CAMERA_I2C*() 系の関数でカメラ設定を変更した場合、変更内容が反映されるタイミングが 1 フレーム程度ずれる可能性があります。
そのため、キャプチャ中にカメラ設定を変更した場合、アプリが意図したタイミングで変更内容が反映された画像が取得できないことがある点に注意してください。

参照

CAMERASelectCAMERAContextCAMERASizeCAMERACallbackCAMERAResult

履歴

2009/07/03 使用条件についての情報の更新
2009/03/25 キャプチャ動作中のカメラ設定の変更について追記
2008/10/30 CAMERA_SELECT_BOTHも指定できることを追記
2008/01/23 VGAサイズで30fpsのキャプチャができない件の説明追加
2007/10/12 初版