Skip to content

Raw Image Capture #774

@stefanoschrs

Description

@stefanoschrs

Is your feature request related to a problem? Please describe.
I am currently limited by the post-processing and compression artifacts inherent in standard JPEG/PNG capture. When building applications that require high-fidelity image analysis, such as computational photography, advanced OCR, or machine learning-based diagnostic tools, the loss of data in processed images significantly degrades the accuracy of our models. I'm frustrated when I cannot access the "raw" sensor data (DNG/RAW) that the underlying hardware is clearly capable of providing.

Describe the solution you'd like
I would like a new prop or method added to the camera component (e.g., captureQuality="raw" or a takePictureAsync option { format: 'raw' }) that allows for the capture of Bayer raw data, preferably saved in the DNG (Digital Negative) format.

  • For iOS: This should leverage AVCapturePhotoOutput with RAW pixel format types.

  • For Android: This should utilize the Camera2 API's CaptureResult and DngCreator class to save the sensor data.
    The resulting URI should point to a .dng file in the temporary directory.

Describe alternatives you've considered

  1. High-quality JPEGs: Even at 100% quality, the ISP (Image Signal Processor) still applies noise reduction and sharpening that cannot be undone.

  2. Native Modules: Building a custom bridge for both platforms is a significant overhead for a feature that is becoming a standard requirement for modern camera-heavy applications.

  3. External Libraries: Most existing React Native camera wrappers focus on UI/UX rather than low-level sensor access, leaving a gap for technical photography needs.

Additional context
Capturing in RAW is essential for apps that want to provide "Pro Mode" features. Modern devices (iPhone 12 Pro+ and most Android flagships) support this via the Camera2/AVFoundation APIs. Adding this would make this library the go-to choice for professional-grade imaging apps in the React Native ecosystem.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions