ICameraControl
COM公式ドキュメント
ICameraControl インターフェースは、キャプチャデバイスのカメラ設定を制御します。このインターフェースは、キャプチャフィルター内の 1 つ以上のノードによって公開されることがあります。
メソッド 51
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
get_Exposure メソッドは、カメラの露光時間を返します。
| pValue | INT* | out | 露光時間を 2 を底とする対数の秒単位で受け取ります。値が n の場合、露光時間は 2^n 秒です。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_Exposure メソッドは、カメラの露光時間を設定します。
| Value | INT | in | 露光時間を 2 を底とする対数の秒単位で指定します。値が n の場合、露光時間は 2^n 秒です。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_Exposure メソッドは、カメラがサポートする露光時間の範囲を返します。
| pMin | INT* | out | 最小露光時間を 2 を底とする対数の秒単位で受け取ります。値が n の場合、露光時間は 2^n 秒です。 |
| pMax | INT* | out | 最大露光時間を 2 を底とする対数の秒単位で受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の露光時間を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_Focus メソッドは、最適に焦点が合う距離を返します。
| pValue | INT* | out | 焦点が合っている距離をミリメートル単位で受け取ります。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_Focus メソッドは、最適に焦点が合う距離を設定します。
| Value | INT | in | 焦点距離をミリメートル単位で指定します。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_Focus メソッドは、カメラがサポートする焦点距離の範囲を返します。
| pMin | INT* | out | 最小焦点距離をミリメートル単位で受け取ります。 |
| pMax | INT* | out | 最大焦点距離をミリメートル単位で受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の焦点距離を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_Iris メソッドは、カメラの絞り設定を返します。
| pValue | INT* | out | 絞り設定を f 値 * 10 の単位で受け取ります。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_Iris メソッドは、カメラの絞り設定を設定します。
| Value | INT | in | 絞り設定を f 値 * 10 の単位で指定します。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_Iris メソッドは、カメラがサポートする絞り設定の範囲を返します。
| pMin | INT* | out | 最小絞り設定を f 値 * 100 の単位で受け取ります。 |
| pMax | INT* | out | 最大絞り設定を f 値 * 100 の単位で受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の絞り設定を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_Zoom メソッドは、カメラの光学ズームレベルを返します。
| pValue | INT* | out | ズームレベルを受け取ります。この設定の単位は定義されていません。ズームレベルから倍率を計算する方法については、ICameraControl::get_FocalLengths を参照してください。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
解説(Remarks)
このメソッドは光学ズームレベルのみを返します。デジタルズームレベルを取得するには、IVideoProcAmp::get_DigitalMultiplier を呼び出してください。
put_Zoom メソッドは、カメラのズームレベルを設定します。
| Value | INT | in | ズームレベルを指定します。この設定の単位は定義されていません。ズームレベルから倍率を計算する方法については、ICameraControl::get_FocalLengths を参照してください。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_Zoom メソッドは、カメラがサポートするズームレベルの範囲を返します。
| pMin | INT* | out | 最小ズームを受け取ります。 |
| pMax | INT* | out | 最大ズームを受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定のズームを受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
解説(Remarks)
ズームレベルから倍率を計算する方法については、ICameraControl::get_FocalLengths を参照してください。
get_FocalLengths メソッドは、カメラレンズの焦点距離を返します。
| plOcularFocalLength | INT* | out | 接眼レンズの焦点距離を受け取ります。 |
| plObjectiveFocalLengthMin | INT* | out | 対物レンズの最小焦点距離を受け取ります。 |
| plObjectiveFocalLengthMax | INT* | out | 対物レンズの最大焦点距離を受け取ります。 |
戻り値
HRESULT 値を返します。
解説(Remarks)
2 枚レンズのカメラでは、対物レンズが被写体に近く、接眼レンズがカメラに近くなります。接眼レンズの焦点距離は固定されています。カメラに光学ズームがある場合、対物レンズの焦点距離は一定の範囲内で変化します。倍率は、対物レンズと接眼レンズの焦点距離の比として計算されます。倍率は比として表されるため、単位はありません。したがって、焦点距離の単位はこのインターフェースでは定義されていません。
カメラが光学ズームをサポートしている場合、現在のズームレベルは Zmin から Zmax の範囲の整数値として表されます。対物レンズの焦点距離は、次のように計算できます。
Lcur = ( ( (Zcur - Zmin) * (Lmax - Lmin) ) / (Zmax - Zmin) ) + Lmin
ここで、
- Lcur = 現在の対物レンズの焦点距離。
- Lmin、Lmax = 対物レンズの最小および最大焦点距離。
- Zcur = 現在のズーム設定。ICameraControl::get_Zoom を参照してください。
- Zmin、Zmax = 最小および最大のズーム設定。ICameraControl::getRange_Zoom を参照してください。
Lcur
から倍率を計算できます。
get_Pan メソッドは、カメラのパン角度を返します。
| pValue | INT* | out | パン角度を度単位で受け取ります。正の値はカメラを上から見て時計回り、負の値は反時計回りです。理論上の値は –180 度から +180 度までですが、実際の範囲はカメラによって異なります。ICameraControl::getRange_Pan を参照してください。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_Pan メソッドは、カメラのパン角度を設定します。
| Value | INT | in | パン角度を度単位で指定します。正の値はカメラを上から見て時計回り、負の値は反時計回りです。理論上の値は –180 度から +180 度までですが、実際の範囲はカメラによって異なります。ICameraControl::getRange_Pan を参照してください。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_Pan メソッドは、カメラがサポートするパン角度の範囲を返します。
| pMin | INT* | out | 最小パン角度を 1 秒角の単位で受け取ります。 |
| pMax | INT* | out | 最大パン角度を 1 秒角の単位で受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定のパン角度を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_Tilt メソッドは、カメラのチルト角度を返します。
| pValue | INT* | out | チルト角度を度単位で受け取ります。正の値はカメラを上に向け、負の値はカメラを下に向けます。理論上の値は –180 度から +180 度までですが、実際の範囲はカメラによって異なります。ICameraControl::getRange_Tilt を参照してください。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_Tilt メソッドは、カメラのチルト角度を設定します。
| Value | INT | in | チルト角度を度単位で指定します。正の値はカメラを上に向け、負の値はカメラを下に向けます。理論上の値は –180 度から +180 度までですが、実際の範囲はカメラによって異なります。ICameraControl::getRange_Tilt を参照してください。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_Tilt メソッドは、カメラがサポートするチルト角度の範囲を返します。
| pMin | INT* | out | 最小チルト角度を 1 秒角の単位で受け取ります。 |
| pMax | INT* | out | 最大チルト角度を 1 秒角の単位で受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定のチルト角度を 1 秒角の単位で受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_PanTilt メソッドは、カメラのパン角度とチルト角度を返します。
| pPanValue | INT* | out | 現在のパン角度を秒角単位で受け取ります。1 秒角は 1 度の 1/3600 です。ICameraControl::get_Pan を参照してください。 |
| pTiltValue | INT* | out | 現在のチルト角度を秒角単位で受け取ります。ICameraControl::get_Tilt を参照してください。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_PanTilt メソッドは、カメラのパン角度とチルト角度を設定します。
| PanValue | INT | in | パン角度を秒角単位で指定します。1 秒角は 1 度の 1/3600 です。ICameraControl::put_Pan を参照してください。 |
| TiltValue | INT | in | チルト角度を秒角単位で指定します。ICameraControl::put_Tilt を参照してください。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
.
| pValue | INT* | out | ロール角度を度単位で受け取ります。正の値は画像の視軸に沿って時計回り、負の値は反時計回りです。理論上の値は –180 度から +180 度までですが、実際の範囲はカメラによって異なります。ICameraControl::getRange_Roll を参照してください。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_Roll メソッドは、カメラのロール角度を設定します。
| Value | INT | in | ロール角度を度単位で指定します。正の値は画像の視軸に沿って時計回り、負の値は反時計回りです。理論上の値は –180 度から +180 度までですが、実際の範囲はカメラによって異なります。ICameraControl::getRange_Roll を参照してください。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_Roll メソッドは、カメラがサポートするロール角度の範囲を返します。
| pMin | INT* | out | 最小ロール角度を度単位で受け取ります。 |
| pMax | INT* | out | 最大ロール角度を度単位で受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定のロール角度を度単位で受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_ExposureRelative メソッドは、カメラの相対露光時間を返します。相対露光時間はステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pValue | INT* | out | 相対露光を受け取ります。指定可能な値の範囲を取得するには、ICameraControl::getRange_ExposureRelative を呼び出してください。
| ||||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_ExposureRelative メソッドは、カメラの相対露光時間を設定します。相対露光時間はステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| Value | INT | in | 相対露光を指定します。指定可能な値の範囲を取得するには、ICameraControl::getRange_ExposureRelative を呼び出してください。
| ||||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_ExposureRelative メソッドは、カメラがサポートする相対露光時間の範囲を返します。相対露光時間はステップ数として表され、各ステップの絶対値はカメラのモデルによって異なります。
| pMin | INT* | out | 最小相対露光時間を受け取ります。 |
| pMax | INT* | out | 最大相対露光時間を受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の相対露光時間を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_FocusRelative メソッドは、相対フォーカスを返します。相対フォーカスは、レンズ群が移動している方向を示します。
| pValue | INT* | out | 相対フォーカスを受け取ります。値の大きさは焦点が変化する速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_FocusRelative を呼び出してください。
| ||||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_FocusRelative メソッドは、相対フォーカスを設定します。相対フォーカスは、レンズ群が移動している方向を示します。
| Value | INT | in | 相対フォーカスを指定します。値の大きさは焦点が変化する速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_FocusRelative を呼び出してください。
| ||||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_FocusRelative メソッドは、カメラがサポートする相対焦点距離の範囲を返します。相対フォーカスは、レンズ群が移動している方向を示します。
| pMin | INT* | out | 最小相対フォーカスを受け取ります。 |
| pMax | INT* | out | 最小相対フォーカスを受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の相対フォーカスを受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_IrisRelative メソッドは、カメラの相対絞り設定を返します。相対絞りはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pValue | INT* | out | 相対絞り設定を受け取ります。指定可能な値の範囲を取得するには、ICameraControl::getRange_IrisRelative を呼び出してください。
| ||||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_IrisRelative メソッドは、カメラの相対絞り設定を設定します。相対絞りはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| Value | INT | in | 相対絞り設定を指定します。指定可能な値の範囲を取得するには、ICameraControl::getRange_IrisRelative を呼び出してください。
| ||||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_IrisRelative メソッドは、カメラがサポートする相対絞り設定の範囲を返します。相対絞りはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pMin | INT* | out | 最小相対絞り設定を受け取ります。 |
| pMax | INT* | out | 最大相対絞り設定を受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の相対絞り設定を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_ZoomRelative メソッドは、カメラの相対ズームを返します。相対ズームは、レンズが移動している方向を示します。
| pValue | INT* | out | 相対ズームを受け取ります。値の大きさは目的のズーム速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_ZoomRelative を呼び出してください。
| ||||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_ZoomRelative メソッドは、カメラの相対ズームを設定します。相対ズームは、レンズが移動している方向を示します。
| Value | INT | in | 相対ズームを指定します。値の大きさは目的のズーム速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_ZoomRelative を呼び出してください。
| ||||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_ZoomRelative メソッドは、カメラがサポートする相対ズームレベルの範囲を返します。相対ズームは、レンズが移動している方向を示します。
| pMin | INT* | out | 最小相対ズームを受け取ります。 |
| pMax | INT* | out | 最大相対ズームを受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の相対ズームを受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_PanRelative メソッドは、カメラの相対パンを返します。相対パンはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pValue | INT* | out | 相対パンを受け取ります。値の大きさは目的のパン速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_PanRelative を呼び出してください。
| ||||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_PanRelative メソッドは、カメラの相対パンを設定します。相対パンはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| Value | INT | in | 相対パンを指定します。値の大きさは目的のパン速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_PanRelative を呼び出してください。
| ||||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
このトピックは、Windows XP Service Pack 2 以降にのみ適用されます。
| pValue | INT* | out | 相対チルトを受け取ります。値の大きさは目的のチルト速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_TiltRelative を呼び出してください。
| ||||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_TiltRelative メソッドは、カメラの相対チルトを設定します。相対チルトはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| Value | INT | in | 相対チルトを指定します。値の大きさは目的のチルト速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_TiltRelative を呼び出してください。
| ||||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_TiltRelative メソッドは、カメラがサポートする相対チルト角度の範囲を返します。相対チルトはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pMin | INT* | out | 最小相対チルト角度を受け取ります。 |
| pMax | INT* | out | 最大相対チルト角度を受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の相対チルト角度を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_PanTiltRelative メソッドは、カメラの相対パンと相対チルトを返します。相対パンと相対チルトはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pPanValue | INT* | out | 相対パンを受け取ります。ICameraControl::get_PanRelative を参照してください。 |
| pTiltValue | INT* | out | 相対チルトを受け取ります。ICameraControl::get_TiltRelative を参照してください。 |
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_PanTiltRelative メソッドは、カメラの相対パンと相対チルトを設定します。相対パンと相対チルトはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| PanValue | INT | in | 相対パンを指定します。ICameraControl::put_PanRelative を参照してください。 |
| TiltValue | INT | in | 相対チルトを指定します。ICameraControl::put_TiltRelative を参照してください。 |
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_PanRelative メソッドは、カメラがサポートする相対パン角度の範囲を返します。相対パンはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pMin | INT* | out | 最小相対パン角度を受け取ります。 |
| pMax | INT* | out | 最大相対パン角度を受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の相対パン角度を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_RollRelative メソッドは、カメラの相対ロールを返します。相対ロールはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pValue | INT* | out | 相対ロールを受け取ります。値の大きさは目的の回転速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_RollRelative を呼び出してください。
| ||||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_RollRelative メソッドは、カメラの相対ロールを設定します。相対ロールはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| Value | INT | in | 相対ロールを指定します。値の大きさは目的の回転速度を表し、値が大きいほど速度が速くなります。指定可能な値の範囲を取得するには、ICameraControl::getRange_RollRelative を呼び出してください。
| ||||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
getRange_RollRelative メソッドは、カメラがサポートする相対ロール角度の範囲を返します。相対ロールはステップ数として表され、各ステップの大きさはカメラのモデルによって異なります。
| pMin | INT* | out | 最小相対ロール角度を受け取ります。 |
| pMax | INT* | out | 最大相対ロール角度を受け取ります。 |
| pSteppingDelta | INT* | out | 設定間の最小刻み幅を受け取ります。 |
| pDefault | INT* | out | 既定の相対ロール角度を受け取ります。 |
| pCapsFlag | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
get_ScanMode メソッドは、現在のスキャンモード (インターレースまたはプログレッシブ) を返します。
| pValue | INT* | out | 次のいずれかの値を受け取ります。
| ||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_ScanMode メソッドは、カメラのスキャンモード (インターレースまたはプログレッシブ) を設定します。
| Value | INT | in | 次のいずれかの値を指定します。
| ||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
.
| pValue | INT* | out | 次のいずれかの値を受け取ります。
| ||||||
| pFlags | INT* | out | 1 つ以上のフラグを受け取ります。CameraControlFlags を参照してください。 |
戻り値
HRESULT 値を返します。
put_PrivacyMode メソッドは、カメラのプライバシー設定を設定します。プライバシー設定は、カメラセンサーがビデオをキャプチャするかどうかを制御します。
| Value | INT | in | 次のいずれかの値を指定します。
| ||||||
| Flags | INT | in | 0 個以上のフラグを指定します。CameraControlFlags を参照してください。CameraControl_Flags_Auto フラグが使用された場合、Value パラメーターは無視され、カメラが既定値を設定します。 |
戻り値
HRESULT 値を返します。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_ICameraControl "{2BA1785D-4D1B-44EF-85E8-C7F1D3F20184}" #usecom global ICameraControl IID_ICameraControl "{}" #comfunc global ICameraControl_get_Exposure 3 var,var #comfunc global ICameraControl_put_Exposure 4 int,int #comfunc global ICameraControl_getRange_Exposure 5 var,var,var,var,var #comfunc global ICameraControl_get_Focus 6 var,var #comfunc global ICameraControl_put_Focus 7 int,int #comfunc global ICameraControl_getRange_Focus 8 var,var,var,var,var #comfunc global ICameraControl_get_Iris 9 var,var #comfunc global ICameraControl_put_Iris 10 int,int #comfunc global ICameraControl_getRange_Iris 11 var,var,var,var,var #comfunc global ICameraControl_get_Zoom 12 var,var #comfunc global ICameraControl_put_Zoom 13 int,int #comfunc global ICameraControl_getRange_Zoom 14 var,var,var,var,var #comfunc global ICameraControl_get_FocalLengths 15 var,var,var #comfunc global ICameraControl_get_Pan 16 var,var #comfunc global ICameraControl_put_Pan 17 int,int #comfunc global ICameraControl_getRange_Pan 18 var,var,var,var,var #comfunc global ICameraControl_get_Tilt 19 var,var #comfunc global ICameraControl_put_Tilt 20 int,int #comfunc global ICameraControl_getRange_Tilt 21 var,var,var,var,var #comfunc global ICameraControl_get_PanTilt 22 var,var,var #comfunc global ICameraControl_put_PanTilt 23 int,int,int #comfunc global ICameraControl_get_Roll 24 var,var #comfunc global ICameraControl_put_Roll 25 int,int #comfunc global ICameraControl_getRange_Roll 26 var,var,var,var,var #comfunc global ICameraControl_get_ExposureRelative 27 var,var #comfunc global ICameraControl_put_ExposureRelative 28 int,int #comfunc global ICameraControl_getRange_ExposureRelative 29 var,var,var,var,var #comfunc global ICameraControl_get_FocusRelative 30 var,var #comfunc global ICameraControl_put_FocusRelative 31 int,int #comfunc global ICameraControl_getRange_FocusRelative 32 var,var,var,var,var #comfunc global ICameraControl_get_IrisRelative 33 var,var #comfunc global ICameraControl_put_IrisRelative 34 int,int #comfunc global ICameraControl_getRange_IrisRelative 35 var,var,var,var,var #comfunc global ICameraControl_get_ZoomRelative 36 var,var #comfunc global ICameraControl_put_ZoomRelative 37 int,int #comfunc global ICameraControl_getRange_ZoomRelative 38 var,var,var,var,var #comfunc global ICameraControl_get_PanRelative 39 var,var #comfunc global ICameraControl_put_PanRelative 40 int,int #comfunc global ICameraControl_get_TiltRelative 41 var,var #comfunc global ICameraControl_put_TiltRelative 42 int,int #comfunc global ICameraControl_getRange_TiltRelative 43 var,var,var,var,var #comfunc global ICameraControl_get_PanTiltRelative 44 var,var,var #comfunc global ICameraControl_put_PanTiltRelative 45 int,int,int #comfunc global ICameraControl_getRange_PanRelative 46 var,var,var,var,var #comfunc global ICameraControl_get_RollRelative 47 var,var #comfunc global ICameraControl_put_RollRelative 48 int,int #comfunc global ICameraControl_getRange_RollRelative 49 var,var,var,var,var #comfunc global ICameraControl_get_ScanMode 50 var,var #comfunc global ICameraControl_put_ScanMode 51 int,int #comfunc global ICameraControl_get_PrivacyMode 52 var,var #comfunc global ICameraControl_put_PrivacyMode 53 int,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_ICameraControl "{2BA1785D-4D1B-44EF-85E8-C7F1D3F20184}" #usecom global ICameraControl IID_ICameraControl "{}" #comfunc global ICameraControl_get_Exposure 3 sptr,sptr #comfunc global ICameraControl_put_Exposure 4 int,int #comfunc global ICameraControl_getRange_Exposure 5 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_Focus 6 sptr,sptr #comfunc global ICameraControl_put_Focus 7 int,int #comfunc global ICameraControl_getRange_Focus 8 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_Iris 9 sptr,sptr #comfunc global ICameraControl_put_Iris 10 int,int #comfunc global ICameraControl_getRange_Iris 11 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_Zoom 12 sptr,sptr #comfunc global ICameraControl_put_Zoom 13 int,int #comfunc global ICameraControl_getRange_Zoom 14 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_FocalLengths 15 sptr,sptr,sptr #comfunc global ICameraControl_get_Pan 16 sptr,sptr #comfunc global ICameraControl_put_Pan 17 int,int #comfunc global ICameraControl_getRange_Pan 18 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_Tilt 19 sptr,sptr #comfunc global ICameraControl_put_Tilt 20 int,int #comfunc global ICameraControl_getRange_Tilt 21 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_PanTilt 22 sptr,sptr,sptr #comfunc global ICameraControl_put_PanTilt 23 int,int,int #comfunc global ICameraControl_get_Roll 24 sptr,sptr #comfunc global ICameraControl_put_Roll 25 int,int #comfunc global ICameraControl_getRange_Roll 26 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_ExposureRelative 27 sptr,sptr #comfunc global ICameraControl_put_ExposureRelative 28 int,int #comfunc global ICameraControl_getRange_ExposureRelative 29 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_FocusRelative 30 sptr,sptr #comfunc global ICameraControl_put_FocusRelative 31 int,int #comfunc global ICameraControl_getRange_FocusRelative 32 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_IrisRelative 33 sptr,sptr #comfunc global ICameraControl_put_IrisRelative 34 int,int #comfunc global ICameraControl_getRange_IrisRelative 35 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_ZoomRelative 36 sptr,sptr #comfunc global ICameraControl_put_ZoomRelative 37 int,int #comfunc global ICameraControl_getRange_ZoomRelative 38 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_PanRelative 39 sptr,sptr #comfunc global ICameraControl_put_PanRelative 40 int,int #comfunc global ICameraControl_get_TiltRelative 41 sptr,sptr #comfunc global ICameraControl_put_TiltRelative 42 int,int #comfunc global ICameraControl_getRange_TiltRelative 43 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_PanTiltRelative 44 sptr,sptr,sptr #comfunc global ICameraControl_put_PanTiltRelative 45 int,int,int #comfunc global ICameraControl_getRange_PanRelative 46 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_RollRelative 47 sptr,sptr #comfunc global ICameraControl_put_RollRelative 48 int,int #comfunc global ICameraControl_getRange_RollRelative 49 sptr,sptr,sptr,sptr,sptr #comfunc global ICameraControl_get_ScanMode 50 sptr,sptr #comfunc global ICameraControl_put_ScanMode 51 int,int #comfunc global ICameraControl_get_PrivacyMode 52 sptr,sptr #comfunc global ICameraControl_put_PrivacyMode 53 int,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。