directshow 攝像頭參數 設置

IAMCameraControl::Set Method

The Set method sets a specified property on the camera.

Syntax

Copy

HRESULT Set(
  [in]  long Property,
  [in]  long lValue,
  [in]  long Flags
);
Parameters
Property [in]

Specifies the property to set, as a value from the CameraControlProperty enumeration.

lValue [in]

Specifies the new value of the property.

Flags [in]

Specifies the desired control setting, as a member of the CameraControlFlags enumeration.

Return Value

If method succeeds, it returns S_OK. Otherwise it returns an HRESULT error code.

Remarks

If the Flags parameter is CameraControl_Flags_Auto, the method ignores the lValue parameter.

 

 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

CameraControlProperty Enumeration

The CameraControlProperty enumeration specifies a setting on a camera.

Syntax

Copy

typedef enum tagCameraControlProperty {
  CameraControl_Pan,
  CameraControl_Tilt,
  CameraControl_Roll,
  CameraControl_Zoom,
  CameraControl_Exposure,
  CameraControl_Iris,
  CameraControl_Focus 
} CameraControlProperty;
Constants
CameraControl_Pan

Specifies the camera's pan setting, in degrees. Values range from –180 to +180, with the default set to zero. Positive values are clockwise from the origin (the camera rotates clockwise when viewed from above), and negative values are counterclockwise from the origin.

CameraControl_Tilt

Specifies the camera's tilt setting, in degrees. Values range from –180 to +180, with the default set to zero. Positive values point the imaging plane up, and negative values point the imaging plane down.

CameraControl_Roll

Specifies the camera's roll setting, in degrees. Values range from –180 to +180, with the default set to zero. Positive values cause a clockwise rotation of the camera along the image-viewing axis, and negative values cause a counterclockwise rotation of the camera.

CameraControl_Zoom

Specifies the camera's zoom setting, in millimeters. Values range from 10 to 600, and the default is specific to the device.

CameraControl_Exposure

Specifies the exposure setting, in log base 2 seconds. In other words, for values less than zero, the exposure time is 1/2^n seconds, and for values zero or above, the exposure time is 2^n seconds. For example:

 

CameraControl_Iris

Specifies the camera's iris setting, in units of fstop* 10.

CameraControl_Focus

Specifies the camera's focus setting, as the distance to the optimally focused target, in millimeters. The range and default value are specific to the device.

Remarks

For a given property, a particular device might implement only a subset of the listed range.

Requirements

Header

Strmif.h (include Dshow.h)

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

The CameraControlFlags enumeration defines whether a camera setting is controlled manually or automatically.

Syntax

Copy

typedef enum  {
  CameraControl_Flags_Auto     = 0x0001,
  CameraControl_Flags_Manual   = 0x0002 
} CameraControlFlags;
Constants
CameraControl_Flags_Auto

The setting is controlled automatically.

CameraControl_Flags_Manual

The setting is controlled manually.

Remarks
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章