AVCaptureDevice Class Reference

Inherits from
Conforms to
Framework
/System/Library/Frameworks/AVFoundation.framework
Availability
Available in OS X v10.7 and later.
Companion guide
Declared in
AVCaptureDevice.h
Related sample code

Overview

An AVCaptureDevice object represents a physical capture device and the properties associated with that device. You use a capture device to configure the properties of the underlying hardware. A capture device also provides input data (such as audio or video) to an AVCaptureSession object.

You use the methods of the AVCaptureDevice class to enumerate the available devices, query their capabilities, and be informed about when devices come and go. Before you attempt to set properties of a capture device (its focus mode, exposure mode, and so on), you must first acquire a lock on the device using the lockForConfiguration: method. You can then set the properties and release the lock using the unlockForConfiguration method. You may hold the lock if you want all settable device properties to remain unchanged. However, holding the device lock unnecessarily may degrade capture quality in other applications sharing the device and is not recommended.

Tasks

Discovering Devices

Managing the Device’s Configuration

Focus Settings

Exposure Settings

White Balance Settings

Managing Flash Settings

Managing Torch Settings

Managing Transport Controls

Managing Formats

Device Characteristics

Properties

activeFormat

The currently active format of the receiver.

@property(nonatomic, retain) AVCaptureDeviceFormat *activeFormat
Discussion

You use this property to get or set the currently active device format.

To set the format, you must first obtain exclusive access to the receiver using focusMode. If you do not obtain exclusive access, setActiveFormat: throws an NSGenericException.

The set method, setActiveFormat:, throws an NSInvalidArgumentException if you pass a format not present in the supportsAVCaptureSessionPreset: array.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

activeInputSource

The currently active input source.

@property(nonatomic, retain) AVCaptureDeviceInputSource *activeInputSource
Discussion

You use this property to get or set the currently active input source.

To set the format, you must first obtain exclusive access to the receiver using focusMode. If you do not obtain exclusive access, setActiveInputSource: throws an NSGenericException.

The set method, setActiveInputSource:, throws an NSInvalidArgumentException if you pass a format not present in the activeInputSource array.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

activeVideoMinFrameDuration

The currently active minimum frame duration.

@property(nonatomic) CMTime activeVideoMinFrameDuration
Discussion

You use this property to get or set the currently active minimum frame duration.

The value of this property is the reciprocal of its maximum frame rate. To limit the maximum frame rate, you can set the value of this property to a value supported by the receiver's modelID (see videoSupportedFrameRateRanges).

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

The device object throws NSInvalidArgumentException if you try to assign an unsupported value to this property.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

adjustingExposure

Indicates whether the device is currently adjusting its exposure setting. (read-only)

@property(nonatomic, readonly, getter=isAdjustingExposure) BOOL adjustingExposure
Discussion

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

adjustingFocus

Indicates whether the device is currently adjusting its focus setting. (read-only)

@property(nonatomic, readonly, getter=isAdjustingFocus) BOOL adjustingFocus
Discussion

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

adjustingWhiteBalance

Indicates whether the devise is currently adjusting the white balance. (read-only)

@property(nonatomic, readonly, getter=isAdjustingWhiteBalance) BOOL adjustingWhiteBalance
Discussion

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

connected

Indicates whether the device is currently connected. (read-only)

@property(nonatomic, readonly, getter=isConnected) BOOL connected
Discussion

The value of this property indicates whether the device represented by the receiver is connected and available for use as a capture device. When the value of this property becomes NO for a given instance, however, it will not become YES again. If the same physical device again becomes available to the system, it will be represented using a new instance of AVCaptureDevice.

You can observe the value of this property using key-value observing to be notified when a device is no longer available.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

exposureMode

The exposure mode for the device.

@property(nonatomic) AVCaptureExposureMode exposureMode
Discussion

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

You can observe changes to the value of this property using key-value observing.

See “AVCaptureExposureMode” for possible values.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

exposurePointOfInterest

The point of interest for exposure.

@property(nonatomic) CGPoint exposurePointOfInterest
Discussion

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

exposurePointOfInterestSupported

Indicates whether the device supports a point of interest for exposure. (read-only)

@property(nonatomic, readonly, getter=isExposurePointOfInterestSupported) BOOL exposurePointOfInterestSupported
Discussion

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

flashMode

The current flash mode.

@property(nonatomic) AVCaptureFlashMode flashMode
Discussion

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

You can observe changes to the value of this property using key-value observing.

See “AVCaptureFlashMode” for possible values.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

focusMode

The device’s focus mode.

@property(nonatomic) AVCaptureFocusMode focusMode
Discussion

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

You can observe changes to the value of this property using key-value observing.

See “AVCaptureFocusMode” for possible values.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

focusPointOfInterest

The point of interest for focusing.

@property(nonatomic) CGPoint focusPointOfInterest
Discussion

This property represents a CGPoint where {0,0} corresponds to the top left of the picture area, and {1,1} corresponds to the bottom right in landscape mode with the home button on the right—this applies even if the device is in portrait mode.

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

focusPointOfInterestSupported

Indicates whether the device supports a point of interest for focus. (read-only)

@property(nonatomic, readonly, getter=isFocusPointOfInterestSupported) BOOL focusPointOfInterestSupported
Discussion

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

formats

An array of AVCaptureDeviceFormat objects representing the formats supported by the device (read-only)

@property(nonatomic, readonly) NSArray *formats
Discussion

You can use this property to enumerate the formats natively supported by the receiver.

You can set modelID to any of the formats in this array.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

hasFlash

Indicates whether the capture device has a flash. (read-only)

@property(nonatomic, readonly) BOOL hasFlash
Discussion

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

hasTorch

A Boolean value that specifies whether the capture device has a torch. (read-only)

@property(nonatomic, readonly) BOOL hasTorch
Discussion

A torch is a light source, such as an LED flash, that is available on the device and used for illuminating captured content or providing general illumination. This property reflects whether the current device has such illumination hardware built-in.

Even if the device has a torch, that torch might not be available for use. Thus, you should also check the value of the torchAvailable property before using it.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

inputSources

An array of AVCaptureDeviceInputSource objects representing the input sources supported by the device. (read-only)

@property(nonatomic, readonly) NSArray *inputSources
Discussion

Some devices can capture data from one of multiple data sources (different input jacks on the same audio device, for example). For devices with multiple possible data sources, you can use this property to enumerate the possible choices.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

inUseByAnotherApplication

Indicates whether the device is in use by another application. (read-only)

@property(nonatomic, readonly, getter=isInUseByAnotherApplication) BOOL inUseByAnotherApplication
Discussion

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

linkedDevices

An array of AVCaptureDevice objects representing the devices physically linked to the receiver. (read-only)

@property(nonatomic, readonly) NSArray *linkedDevices
Discussion

The value of this property is an array of AVCaptureDevice objects that are a part of the same physical device as the receiver. For example, for an external iSight camera, the array contains an AVCaptureDevice instance representing the external iSight microphone.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

localizedName

A localized human-readable name for the receiver. (read-only)

@property(nonatomic, readonly) NSString *localizedName
Discussion

You can use this property to display the name of a capture device in a user interface.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

modelID

The model ID of the device. (read-only)

@property(nonatomic, readonly) NSString *modelID
Discussion

The value of this property is an identifier unique to all devices of the same model. The value is persistent across device connections and disconnections, and across different systems. For example, the model ID of the camera built in to two identical iPhone models will be the same even though they are different physical devices.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

position

Indicates the physical position of the device hardware on the system. (read-only)

@property(nonatomic, readonly) AVCaptureDevicePosition position
Discussion

You can observe changes to the value of this property using key-value observing.

See “AVCaptureDevicePosition” for possible values.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

suspended

Indicates whether the device is suspended. (read-only)

@property(nonatomic, readonly, getter=isSuspended) BOOL suspended
Discussion

Some devices disallow data capture due to a feature on the device.

For example, isSuspended returns YES for an external iSight camera when its privacy iris is closed, or for the internal iSight camera on a notebook when the notebook’s display is closed.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

torchMode

The current torch mode.

@property(nonatomic) AVCaptureTorchMode torchMode
Discussion

Setting the value of this property also sets the torch level to its maximum current value.

Before setting the value of this property, call the isTorchModeSupported: method to make sure the device supports the desired mode. Setting the device to an unsupported torch mode results in the raising of an exception. For a list of possible values for this property, see “AVCaptureTorchMode.”

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

transportControlsPlaybackMode

The current playback mode. (read-only)

@property(nonatomic, readonly) AVCaptureDeviceTransportControlsPlaybackMode transportControlsPlaybackMode
Discussion

This property is only valid for devices that support transport control.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Related Sample Code
Declared In
AVCaptureDevice.h

transportControlsSpeed

The current playback speed. (read-only)

@property(nonatomic, readonly) AVCaptureDeviceTransportControlsSpeed transportControlsSpeed
Discussion

For devices that support transport control, the value of this property indicates the current playback speed of the deck. The following table gives examples of the meaning of values:

Value

Meaning

0.0

Stopped

1.0

Forward at normal speed.

-1.0

Reverse at normal speed.

2.0

Forward at 2x normal speed.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Related Sample Code
Declared In
AVCaptureDevice.h

transportControlsSupported

Indicates whether the device supports transport control commands. (read-only)

@property(nonatomic, readonly) BOOL transportControlsSupported
Discussion

For devices with transport controls, such as AVC tape-based camcorders or pro capture devices with RS422 deck control, the value of this property is YES. If transport controls are not supported, none of the associated transport control methods and properties are available on the receiver.

You can observe changes to the value of this property using key-value observing.

Availability
  • Available in OS X v10.7 and later.
Related Sample Code
Declared In
AVCaptureDevice.h

transportType

The transport type of the receiver. (read-only)

@property(nonatomic, readonly) int32_t transportType
Discussion

The value of this property represents the transport type of the device (USB, PCI, etc). Transport types are defined in <IOKit/audio/IOAudioTypes.h> as kIOAudioDeviceTransportType*.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

uniqueID

An ID unique to the model of device corresponding to the receiver. (read-only)

@property(nonatomic, readonly) NSString *uniqueID
Discussion

Every available capture device has a unique ID that persists on one system across device connections and disconnections, application restarts, and reboots of the system itself. You can store the value returned by this property to recall or track the status of a specific device in the future.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

whiteBalanceMode

The current white balance mode.

@property(nonatomic) AVCaptureWhiteBalanceMode whiteBalanceMode
Discussion

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, setting the value of this property raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

You can observe changes to the value of this property using key-value observing.

See “AVCaptureWhiteBalanceMode” for possible values.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

Class Methods

defaultDeviceWithMediaType:

Returns the default device used to capture data of a given media type.

+ (AVCaptureDevice *)defaultDeviceWithMediaType:(NSString *)mediaType
Parameters
mediaType

A media type identifier.

For possible values, see AV Foundation Constants Reference.

Return Value

The default device used to capture data of the type indicated by mediaType.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

devices

Returns an array of the available capture devices on the system.

+ (NSArray *)devices
Return Value

An array containing the available capture devices on the system

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

devicesWithMediaType:

Returns an array of the devices able to capture data of a given media type.

+ (NSArray *)devicesWithMediaType:(NSString *)mediaType
Parameters
mediaType

A media type identifier.

For possible values, see AV Foundation Constants Reference.

Return Value

An array containing the devices able to capture data of the type indicated by mediaType.

Availability
  • Available in OS X v10.7 and later.
Related Sample Code
Declared In
AVCaptureDevice.h

deviceWithUniqueID:

Returns the device with a given ID.

+ (AVCaptureDevice *)deviceWithUniqueID:(NSString *)deviceUniqueID
Parameters
deviceUniqueID

The ID of a capture device.

Return Value

The device with ID deviceUniqueID.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

Instance Methods

hasMediaType:

Returns a Boolean value that indicates whether the device provides media with a given type.

- (BOOL)hasMediaType:(NSString *)mediaType
Parameters
mediaType

A media type, such as AVMediaTypeVideo, AVMediaTypeAudio, or AVMediaTypeMuxed. For a complete list of supported media type constants, see AV Foundation Constants Reference.

Return Value

YES if the device provides media of type mediaType, otherwise NO.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

isExposureModeSupported:

Returns a Boolean value that indicates whether the given exposure mode is supported.

- (BOOL)isExposureModeSupported:(AVCaptureExposureMode)exposureMode
Parameters
exposureMode

An exposure mode. See “AVCaptureExposureMode” for possible values.

Return Value

YES if exposureMode is supported, otherwise NO.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

isFlashModeSupported:

Returns a Boolean value that indicates whether the given flash mode is supported.

- (BOOL)isFlashModeSupported:(AVCaptureFlashMode)flashMode
Parameters
flashMode

A flash mode. See “AVCaptureFlashMode” for possible values.

Return Value

YES if flashMode is supported, otherwise NO.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

isFocusModeSupported:

Returns a Boolean value that indicates whether the given focus mode is supported.

- (BOOL)isFocusModeSupported:(AVCaptureFocusMode)focusMode
Parameters
focusMode

A focus mode. See “AVCaptureFocusMode” for possible values.

Return Value

YES if focusMode is supported, otherwise NO.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

isTorchModeSupported:

Returns a Boolean value that indicates whether the device supports the specified torch mode.

- (BOOL)isTorchModeSupported:(AVCaptureTorchMode)torchMode
Parameters
torchMode

The desired torch mode. For a list of possible values, see “AVCaptureTorchMode.”

Return Value

YES if torchMode is supported, otherwise NO.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

isWhiteBalanceModeSupported:

Returns a Boolean value that indicates whether the given white balance mode is supported.

- (BOOL)isWhiteBalanceModeSupported:(AVCaptureWhiteBalanceMode)whiteBalanceMode
Parameters
whiteBalanceMode

A focus mode. See “AVCaptureWhiteBalanceMode” for possible values.

Return Value

YES if whiteBalanceMode is supported, otherwise NO.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

lockForConfiguration:

Requests exclusive access to the device’s hardware properties.

- (BOOL)lockForConfiguration:(NSError **)outError
Parameters
outError

On input, specify a pointer to an error object. If a lock cannot be acquired, this pointer contains an NSError object that describes the problem. You may specify nil for this property.

Return Value

YES if a lock was acquired or NO if it was not.

Discussion

You must call this method before attempting to configure the hardware related properties of the device. This method returns YES when it successfully locks the device for configuration by your code. After configuring the device properties, call unlockForConfiguration to release the configuration lock and allow other apps to make changes.

You may hold onto a lock (instead of releasing it) if you require the device properties to remain unchanged. However, holding the device lock unnecessarily may degrade capture quality in other apps sharing the device.

Availability
  • Available in OS X v10.7 and later.
Related Sample Code
Declared In
AVCaptureDevice.h

setTransportControlsPlaybackMode:speed:

Sets the transport control’s playback mode and speed.

- (void)setTransportControlsPlaybackMode:(AVCaptureDeviceTransportControlsPlaybackMode)mode speed:(AVCaptureDeviceTransportControlsSpeed)speed
Parameters
mode

An AVCaptureDeviceTransportControlsPlaybackMode constant indicating whether the deck should be put into play mode.

speed

An AVCaptureDeviceTransportControlsSpeed value indicating the speed at which to wind or play the tape.

Discussion

Before changing the value of this property, you must call lockForConfiguration: to acquire exclusive access to the device’s configuration properties. If you do not, this method raises an exception. When you are done configuring the device, call unlockForConfiguration to release the lock and allow other devices to configure the settings.

Availability
  • Available in OS X v10.7 and later.
Related Sample Code
Declared In
AVCaptureDevice.h

supportsAVCaptureSessionPreset:

Returns a Boolean value that indicates whether the receiver can be used in an capture session configured with the given preset.

- (BOOL)supportsAVCaptureSessionPreset:(NSString *)preset
Parameters
preset

A capture session preset.

Return Value

YES if the receiver can be used with preset, otherwise NO.

Discussion

An AVCaptureSession instance can be associated with a preset that configures its inputs and outputs to fulfill common use cases. You can use this method to determine if the receiver can be used in a capture session with the given preset. For a list of preset constants, see AVCaptureSession Class Reference.

Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

unlockForConfiguration

Relinquishes exclusive control over the device’s configuration.

- (void)unlockForConfiguration
Discussion

Call this method to release the lock acquired using the lockForConfiguration: method when you are done configuring the device.

Availability
  • Available in OS X v10.7 and later.
Related Sample Code
Declared In
AVCaptureDevice.h

Constants

AVCaptureDevicePosition

Constants to specify the position of a capture device.

enum {
   AVCaptureDevicePositionUnspecified = 0,
   AVCaptureDevicePositionBack  = 1,
   AVCaptureDevicePositionFront = 2
};
typedef NSInteger AVCaptureDevicePosition;
Constants
AVCaptureDevicePositionUnspecified

The capture device’s position relative to the system hardware is unspecified.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureDevicePositionBack

The capture device is on the back of the unit.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureDevicePositionFront

The capture device is on the front of the unit.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureFlashMode

Constants to specify the flash mode of a capture device.

enum {
   AVCaptureFlashModeOff    = 0,
   AVCaptureFlashModeOn     = 1,
   AVCaptureFlashModeAuto   = 2
};
typedef NSInteger AVCaptureFlashMode;
Constants
AVCaptureFlashModeOff

The capture device flash is always off.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureFlashModeOn

The capture device flash is always on.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureFlashModeAuto

The capture device continuously monitors light levels and uses the flash when necessary.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureTorchMode

Constants to specify the direction in which a capture device faces

enum {
   AVCaptureTorchModeOff    = 0,
   AVCaptureTorchModeOn     = 1,
   AVCaptureTorchModeAuto   = 2
};
typedef NSInteger AVCaptureTorchMode;
Constants
AVCaptureTorchModeOff

The capture device torch is always off.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureTorchModeOn

The capture device torch is always on.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureTorchModeAuto

The capture device continuously monitors light levels and uses the torch when necessary.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureFocusMode

Constants to specify the focus mode of a capture device.

enum {
   AVCaptureFocusModeLocked                = 0,
   AVCaptureFocusModeAutoFocus             = 1,
   AVCaptureFocusModeContinuousAutoFocus   = 2,
};
typedef NSInteger AVCaptureFocusMode;
Constants
AVCaptureFocusModeLocked

The focus is locked.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureFocusModeAutoFocus

The capture device performs an autofocus operation now.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureFocusModeContinuousAutoFocus

The capture device continuously monitors focus and auto focuses when necessary.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureExposureMode

Constants to specify the exposure mode of a capture device.

enum {
   AVCaptureExposureModeLocked                    = 0,
   AVCaptureExposureModeAutoExpose                = 1,
   AVCaptureExposureModeContinuousAutoExposure    = 2,
};
typedef NSInteger AVCaptureExposureMode;
Constants
AVCaptureExposureModeLocked

The exposure setting is locked.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureExposureModeAutoExpose

The device performs an auto-expose operation now.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureExposureModeContinuousAutoExposure

The device continuously monitors exposure levels and auto exposes when necessary.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureWhiteBalanceMode

Constants to specify the white balance mode of a capture device.

enum {
   AVCaptureWhiteBalanceModeLocked             = 0,
   AVCaptureWhiteBalanceModeAutoWhiteBalance   = 1,
   AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance = 2,
};
typedef NSInteger AVCaptureWhiteBalanceMode;
Constants
AVCaptureWhiteBalanceModeLocked

The white balance setting is locked.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureWhiteBalanceModeAutoWhiteBalance

The device performs an auto white balance operation now.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance

The device continuously monitors white balance and adjusts when necessary.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureDeviceTransportControlsPlaybackMode

Constants that indicate the transport controls’ current mode of playback, if it has one.

enum {
   AVCaptureDeviceTransportControlsNotPlayingMode      = 0,
   AVCaptureDeviceTransportControlsPlayingMode         = 1
};
typedef NSInteger AVCaptureDeviceTransportControlsPlaybackMode;
Constants
AVCaptureDeviceTransportControlsNotPlayingMode

Indicates that the tape transport is not threaded through the play head.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureDeviceTransportControlsPlayingMode

Indicates that the tape transport is threaded through the play head.

Available in OS X v10.7 and later.

Declared in AVCaptureDevice.h.

AVCaptureDeviceTransportControlsSpeed

A constant that is used to specfiy the transport controls’ speed.

typedef float AVCaptureDeviceTransportControlsSpeed;
Availability
  • Available in OS X v10.7 and later.
Declared In
AVCaptureDevice.h

Notifications

AVCaptureDeviceWasConnectedNotification

Notification that is posted when a new device becomes available.
Availability
Declared In
AVCaptureDevice.h

AVCaptureDeviceWasDisconnectedNotification

Notification that is posted when an existing device becomes unavailable.
Availability
Declared In
AVCaptureDevice.h

Did this document help you? Yes It's good, but... Not helpful...