Class Camera

Definition

Namespace:
Tizen.Multimedia
Assembly:
Tizen.Multimedia.Camera.dll
API Level:
3
Feature:
http://tizen.org/feature/camera

This camera class provides methods to capture photos and supports setting up notifications for state changes of capturing, previewing, focusing, and informing about the resolution and the binary format, and functions for picture manipulations like sepia, negative, and many more. It also notifies you when a significant picture parameter changes, (For example, focus).

C#
Copy
public class Camera : IDisposable
Inheritance
System.Object
Camera
Implements
System.IDisposable

Constructors

View Source

Camera(CameraDevice)

Initializes a new instance of the Camera class.

Declaration
C#
Copy
public Camera(CameraDevice device)
Parameters
Type Name Description
CameraDevice device

The camera device to access.

Exceptions
Type Condition
System.ArgumentException

Invalid CameraDevice type.

System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

The camera feature is not supported.

API Level: 3
Feature: http://tizen.org/feature/camera

Properties

View Source

CameraCount

Gets the camera device count.

Declaration
C#
Copy
public int CameraCount { get; }
Property Value
Type Description
Int32

This returns 2, if the device supports primary and secondary cameras. Otherwise 1, if the device only supports primary camera.

Exceptions
Type Condition
ObjectDisposedException

The camera has already been disposed.

API Level: 3
View Source

Capabilities

Gets the various camera capabilities.

Declaration
C#
Copy
public CameraCapabilities Capabilities { get; }
Property Value
Type Description
CameraCapabilities
API Level: 4
View Source

Direction

Gets the facing direction of the camera module.

Declaration
C#
Copy
public CameraFacingDirection Direction { get; }
Property Value
Type Description
CameraFacingDirection

A CameraFacingDirection that specifies the facing direction of the camera device.

Exceptions
Type Condition
ObjectDisposedException

The camera has already been disposed.

API Level: 3
View Source

Display

Sets or gets the display type and handle to show preview images. The camera must be in the Created state.

Declaration
C#
Copy
public Display Display { get; set; }
Property Value
Type Description
Display
Remarks

This must be set before the StartPreview() method. In custom ROI display mode, DisplayRoiArea property must be set before calling this method.

Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
View Source

DisplayReuseHint

The hint for the display reuse. If the hint is set to true, the display will be reused when the camera device is changed with the ChangeDevice method.

Declaration
C#
Copy
public bool DisplayReuseHint { get; set; }
Property Value
Type Description
Boolean
Exceptions
Type Condition
System.ArgumentException

In case of invalid parameters.

System.InvalidOperationException

An invalid state.

ObjectDisposedException

The camera has already been disposed.

API Level: 3
View Source

DisplaySettings

Get/set various camera display properties.

Declaration
C#
Copy
public CameraDisplaySettings DisplaySettings { get; }
Property Value
Type Description
CameraDisplaySettings
API Level: 3
View Source

Handle

Gets the native handle of the camera.

Declaration
C#
Copy
public IntPtr Handle { get; }
Property Value
Type Description
System.IntPtr
API Level: 3
Feature: http://tizen.org/feature/camera
View Source

Settings

Gets or sets the various camera settings.

Declaration
C#
Copy
public CameraSettings Settings { get; }
Property Value
Type Description
CameraSettings
API Level: 4
View Source

State

Gets the state of the camera.

Declaration
C#
Copy
public CameraState State { get; }
Property Value
Type Description
CameraState

None, Created, Preview, Capturing, Captured.

Exceptions
Type Condition
ObjectDisposedException

The camera has already been disposed.

API Level: 3

Methods

View Source

ChangeDevice(CameraDevice)

Changes the camera device.

Declaration
C#
Copy
public void ChangeDevice(CameraDevice device)
Parameters
Type Name Description
CameraDevice device

The hardware camera to access.

Remarks

If display reuse is set using DisplayReuseHint before stopping the preview, the display will be reused and last frame on the display can be kept even though camera device is changed. The camera must be in the Created.

Exceptions
Type Condition
System.ArgumentException

In case of invalid parameters.

System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of the ChangeDevice feature is not supported.

ObjectDisposedException

The camera has already been disposed.

API Level: 3
Feature: http://tizen.org/feature/camera
View Source

Dispose()

Releases all resources used by the camera.

Declaration
C#
Copy
public void Dispose()
API Level: 3
Feature: http://tizen.org/feature/camera
View Source

Dispose(Boolean)

Releases the unmanaged resources used by the camera.

Declaration
C#
Copy
protected virtual void Dispose(bool disposing)
Parameters
Type Name Description
Boolean disposing

true to release both managed and unmanaged resources; false to release only unmanaged resources.

API Level: 3
View Source

Finalize()

Finalizes an instance of the Camera class.

Declaration
C#
Copy
protected void Finalize()
View Source

GetDeviceState(CameraDevice)

Gets the device state.

Declaration
C#
Copy
public static CameraDeviceState GetDeviceState(CameraDevice device)
Parameters
Type Name Description
CameraDevice device

The device to get the state.

Returns
Type Description
CameraDeviceState

Returns the state of the camera device.

Exceptions
Type Condition
System.ArgumentException

In case of invalid parameters.

System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

API Level: 4
Feature: http://tizen.org/feature/camera
View Source

GetFlashState(CameraDevice)

Gets the flash state.

Declaration
C#
Copy
public static CameraFlashState GetFlashState(CameraDevice device)
Parameters
Type Name Description
CameraDevice device

The device to get the state.

Returns
Type Description
CameraFlashState

Returns the flash state of the camera device.

Exceptions
Type Condition
System.ArgumentException

In case of invalid parameters.

System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

API Level: 3
Feature: http://tizen.org/feature/camera
View Source

StartCapture()

Starts capturing of still images. EventHandler must be set for capturing using Capturing and for completed using CaptureCompleted before calling this method. The camera must be in the Preview state.

Declaration
C#
Copy
public void StartCapture()
Remarks

This function causes the transition of the camera state from capturing to captured automatically and the corresponding EventHandlers will be invoked. The preview should be restarted by calling the StartPreview() method after capture is completed.

Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera
View Source

StartCapture(Int32, Int32, CancellationToken)

Starts continuously capturing still images. EventHandler must be set for capturing using Capturing and for completed using CaptureCompleted before calling this method. The camera must be in the Preview state.

Declaration
C#
Copy
public void StartCapture(int count, int interval, CancellationToken cancellationToken)
Parameters
Type Name Description
Int32 count

The number of still images.

Int32 interval

The interval of the capture(milliseconds).

System.Threading.CancellationToken cancellationToken

The cancellation token to cancel capturing.

Remarks

If this is not supported, zero shutter lag occurs. The capture resolution could be changed to the preview resolution. This function causes the transition of the camera state from capturing to captured automatically and the corresponding Eventhandlers will be invoked. Each captured image will be delivered through Eventhandler set using the Capturing event. The preview should be restarted by calling the StartPreview() method after capture is completed.

Exceptions
Type Condition
System.ArgumentOutOfRangeException

In case of invalid parameters.

System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

See Also
System.Threading.CancellationToken
API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera
View Source

StartFaceDetection()

Starts face detection. The camera must be in the Preview state.

Declaration
C#
Copy
public void StartFaceDetection()
Remarks

This should be called after StartPreview() is started. The Eventhandler set using FaceDetected is invoked when the face is detected in the preview frame. Internally, it starts continuously focus and focusing on the detected face.

Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera
View Source

StartFocusing(Boolean)

Starts camera auto-focusing, asynchronously. The camera must be in the Preview or the Captured state.

Declaration
C#
Copy
public void StartFocusing(bool continuous)
Parameters
Type Name Description
Boolean continuous

Continuous auto focus.

Remarks

If continuous status is true, the camera continuously tries to focus.

Exceptions
Type Condition
System.ArgumentException

In case of invalid parameters.

System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera
View Source

StartPreview()

Starts capturing and drawing preview frames on the screen. The display property must be set using Display before using this method. If needed set fps PreviewFps, preview resolution PreviewResolution, or preview format PreviewPixelFormat before using this method. The camera must be in the Created or the Captured state.

Declaration
C#
Copy
public void StartPreview()
Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera
View Source

StopFaceDetection()

Stops face detection.

Declaration
C#
Copy
public void StopFaceDetection()
Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera
View Source

StopFocusing()

Stops camera auto focusing. The camera must be in the Preview or the Captured state.

Declaration
C#
Copy
public void StopFocusing()
Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera
View Source

StopPreview()

Stops capturing and drawing preview frames on the screen. The camera must be in the Preview state.

Declaration
C#
Copy
public void StopPreview()
Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

ObjectDisposedException

The camera has already been disposed.

UnauthorizedAccessException

In case of access to the resources cannot be granted.

API Level: 3
Privilege Level: public
Privilege: http://tizen.org/privilege/camera
Feature: http://tizen.org/feature/camera

Events

View Source

CaptureCompleted

An event that occurs after the capture of the image.

Declaration
C#
Copy
public event EventHandler<EventArgs> CaptureCompleted
Event Type
Type Description
System.EventHandler<EventArgs>
API Level: 3
View Source

Capturing

An event that occurs during capture of an image.

Declaration
C#
Copy
public event EventHandler<CameraCapturingEventArgs> Capturing
Event Type
Type Description
System.EventHandler<CameraCapturingEventArgs>
API Level: 3
View Source

DeviceStateChanged

An event that occurs after the CameraDeviceState is changed.

Declaration
C#
Copy
public static event EventHandler<CameraDeviceStateChangedEventArgs> DeviceStateChanged
Event Type
Type Description
System.EventHandler<CameraDeviceStateChangedEventArgs>
Exceptions
Type Condition
System.InvalidOperationException

In case of any invalid operations.

System.NotSupportedException

In case of this feature is not supported.

System.ArgumentException

In case of invalid parameters.

API Level: 3
View Source

ErrorOccurred

An event that occurs when there is an asynchronous error.

Declaration
C#
Copy
public event EventHandler<CameraErrorOccurredEventArgs> ErrorOccurred
Event Type
Type Description
System.EventHandler<CameraErrorOccurredEventArgs>
API Level: 3
View Source

ExtraPreview

An event that occurs once per frame when previewing.

Declaration
C#
Copy
public event EventHandler<ExtraPreviewEventArgs> ExtraPreview
Event Type
Type Description
System.EventHandler<ExtraPreviewEventArgs>
API Level: 10
View Source

FaceDetected

An event that occurs when a face is detected in the preview frame.

Declaration
C#
Copy
public event EventHandler<FaceDetectedEventArgs> FaceDetected
Event Type
Type Description
System.EventHandler<FaceDetectedEventArgs>
API Level: 3
View Source

FocusStateChanged

An event that occurs when the auto focus state is changed.

Declaration
C#
Copy
public event EventHandler<CameraFocusStateChangedEventArgs> FocusStateChanged
Event Type
Type Description
System.EventHandler<CameraFocusStateChangedEventArgs>
API Level: 3
View Source

HdrCaptureProgress

An event that occurs when there is a change in the HDR capture progress. Checks whether the IsHdrCaptureSupported is supported or not before adding this EventHandler.

Declaration
C#
Copy
public event EventHandler<HdrCaptureProgressEventArgs> HdrCaptureProgress
Event Type
Type Description
System.EventHandler<HdrCaptureProgressEventArgs>
Exceptions
Type Condition
System.NotSupportedException

In case of HDR feature is not supported.

API Level: 3
View Source

Interrupted

An event that occurs when an camera is interrupted by the policy.

Declaration
C#
Copy
public event EventHandler<CameraInterruptedEventArgs> Interrupted
Event Type
Type Description
System.EventHandler<CameraInterruptedEventArgs>
API Level: 3
View Source

InterruptStarted

An event that occurs when the camera interrupt is started by the policy.

Declaration
C#
Copy
public event EventHandler<CameraInterruptStartedEventArgs> InterruptStarted
Event Type
Type Description
System.EventHandler<CameraInterruptStartedEventArgs>
API Level: 4
View Source

MediaPacketPreview

An event that occurs once per frame when previewing. Preview callback is registered when an user adds a callback explicitly to avoid useless P/Invoke.

Declaration
C#
Copy
public event EventHandler<MediaPacketPreviewEventArgs> MediaPacketPreview
Event Type
Type Description
System.EventHandler<MediaPacketPreviewEventArgs>
API Level: 3
View Source

Preview

An event that occurs once per frame when previewing. Preview callback is registered when an user adds a callback explicitly to avoid useless P/Invoke.

Declaration
C#
Copy
public event EventHandler<PreviewEventArgs> Preview
Event Type
Type Description
System.EventHandler<PreviewEventArgs>
API Level: 3
View Source

StateChanged

An event that occurs when the camera state is changed.

Declaration
C#
Copy
public event EventHandler<CameraStateChangedEventArgs> StateChanged
Event Type
Type Description
System.EventHandler<CameraStateChangedEventArgs>
API Level: 3

Implements

System.IDisposable