Skip to main content

CameraProps

Hierarchy​

  • ViewProps

    ↳ CameraProps

Properties​

audio​

• Optional audio: boolean

Enables audio capture for video recordings (see "Recording Videos")

Defined in​

CameraProps.ts:61


colorSpace​

• Optional colorSpace: ColorSpace

Specifies the color space to use for this camera device. Make sure the given format contains the given colorSpace.

Requires format to be set.

Defined in​

CameraProps.ts:123


device​

• device: CameraDevice

The Camera Device to use.

See the Camera Devices section in the documentation for more information about Camera Devices.

Example

const devices = useCameraDevices('wide-angle-camera')
const device = devices.back

return (
<Camera
device={device}
isActive={true}
style={StyleSheet.absoluteFill}
/>
)

Defined in​

CameraProps.ts:37


enableDepthData​

• Optional enableDepthData: boolean

Also captures data from depth-perception sensors. (e.g. disparity maps)

Default

false

Defined in​

CameraProps.ts:138


enableFpsGraph​

• Optional enableFpsGraph: boolean

If true, show a debug view to display the FPS of the Camera session. This is useful for debugging your Frame Processor's speed.

Default

false

Defined in​

CameraProps.ts:166


enableHighQualityPhotos​

• Optional enableHighQualityPhotos: boolean

Indicates whether the Camera should prepare the photo pipeline to provide maximum quality photos.

This enables:

Default

false

Defined in​

CameraProps.ts:159


enablePortraitEffectsMatteDelivery​

• Optional enablePortraitEffectsMatteDelivery: boolean

A boolean specifying whether the photo render pipeline is prepared for portrait effects matte delivery.

When enabling this, you must also set enableDepthData to true.

Platform

iOS 12.0+

Default

false

Defined in​

CameraProps.ts:147


enableZoomGesture​

• Optional enableZoomGesture: boolean

Enables or disables the native pinch to zoom gesture.

If you want to implement a custom zoom gesture, see the Zooming with Reanimated documentation.

Default

false

Defined in​

CameraProps.ts:92


format​

• Optional format: CameraDeviceFormat

Selects a given format. By default, the best matching format is chosen.

Defined in​

CameraProps.ts:99


fps​

• Optional fps: number

Specify the frames per second this camera should use. Make sure the given format includes a frame rate range with the given fps.

Requires format to be set.

Defined in​

CameraProps.ts:105


frameProcessor​

• Optional frameProcessor: FrameProcessor

A worklet which will be called for every frame the Camera "sees".

If previewType | previewType is set to "skia", you can draw content to the Frame using the react-native-skia API.

Note: If you want to use video and frameProcessor simultaneously, make sure supportsParallelVideoProcessing is true.

See the Frame Processors documentation for more information

Example

const frameProcessor = useFrameProcessor((frame) => {
'worklet'
const qrCodes = scanQRCodes(frame)
console.log(`Detected QR Codes: ${qrCodes}`)
}, [])

return <Camera {...cameraProps} frameProcessor={frameProcessor} />

Defined in​

CameraProps.ts:201


hdr​

• Optional hdr: boolean

Enables or disables HDR on this camera device. Make sure the given format supports HDR mode.

Requires format to be set.

Defined in​

CameraProps.ts:111


isActive​

• isActive: boolean

Whether the Camera should actively stream video frames, or not. See the documentation about the isActive prop for more information.

This can be compared to a Video component, where isActive specifies whether the video is paused or not.

Note: If you fully unmount the <Camera> component instead of using isActive={false}, the Camera will take a bit longer to start again. In return, it will use less resources since the Camera will be completely destroyed when unmounted.

Defined in​

CameraProps.ts:45


lowLightBoost​

• Optional lowLightBoost: boolean

Enables or disables low-light boost on this camera device. Make sure the given format supports low-light boost.

Requires format to be set.

Defined in​

CameraProps.ts:117


onError​

• Optional onError: (error: CameraRuntimeError) => void

Type declaration​

â–¸ (error): void

Called when any kind of runtime error occured.

Parameters​
NameType
errorCameraRuntimeError
Returns​

void

Defined in​

CameraProps.ts:176


onInitialized​

• Optional onInitialized: () => void

Type declaration​

â–¸ (): void

Called when the camera was successfully initialized.

Returns​

void

Defined in​

CameraProps.ts:180


orientation​

• Optional orientation: Orientation

Represents the orientation of all Camera Outputs (Photo, Video, and Frame Processor). If this value is not set, the device orientation is used.

Defined in​

CameraProps.ts:170


photo​

• Optional photo: boolean

Enables photo capture with the takePhoto function (see "Taking Photos")

Defined in​

CameraProps.ts:51


torch​

• Optional torch: "off" | "on"

Set the current torch mode.

Note: The torch is only available on "back" cameras, and isn't supported by every phone.

Default

"off"

Defined in​

CameraProps.ts:72


video​

• Optional video: boolean

Enables video capture with the startRecording function (see "Recording Videos")

Note: If you want to use video and frameProcessor simultaneously, make sure supportsParallelVideoProcessing is true.

Defined in​

CameraProps.ts:57


videoStabilizationMode​

• Optional videoStabilizationMode: VideoStabilizationMode

Specifies the video stabilization mode to use for this camera device. Make sure the given format contains the given videoStabilizationMode.

Requires format to be set.

Platform

iOS

Defined in​

CameraProps.ts:130


zoom​

• Optional zoom: number

Specifies the zoom factor of the current camera, in "factor"/scale.

This value ranges from minZoom (e.g. 1) to maxZoom (e.g. 128). It is recommended to set this value to the CameraDevice's neutralZoom per default and let the user zoom out to the fish-eye (ultra-wide) camera on demand (if available)

Note: Linearly increasing this value always appears logarithmic to the user.

Default

1.0

Defined in​

CameraProps.ts:84