or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

camera-features.mdformat7.mdimage-conversion.mdindex.mdiso-resource-management.mdlogging.mdsystem-management.mdtrigger-control.mdutility-functions.mdvideo-capture.mdvideo-modes.md
tile.json

tessl/maven-org-bytedeco--libdc1394

JavaCPP Presets for libdc1394 - Java bindings for controlling IEEE 1394 (FireWire) digital cameras following IIDC/DCAM specifications

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
mavenpkg:maven/org.bytedeco/libdc1394@2.2.x

To install, run

npx @tessl/cli install tessl/maven-org-bytedeco--libdc1394@2.2.0

index.mddocs/

libdc1394

libdc1394 provides Java bindings for the libdc1394 library, which offers high-level API for controlling IEEE 1394 (FireWire) digital cameras following IIDC/DCAM specifications. The library enables cross-platform camera management and control, supporting approximately 500 camera models with features including camera detection, comprehensive feature controls, multiple video mode support, high-performance video capture using DMA, color space conversion capabilities, and demosaicing of Bayer color pattern images.

Package Information

  • Package Name: org.bytedeco:libdc1394
  • Package Type: maven
  • Language: Java (JavaCPP bindings for C library)
  • Installation: Maven dependency:
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>libdc1394-platform</artifactId>
      <version>2.2.6-1.5.12</version>
    </dependency>

Core Imports

import org.bytedeco.libdc1394.*;
import static org.bytedeco.libdc1394.global.dc1394.*;

Basic Usage

import org.bytedeco.libdc1394.*;
import static org.bytedeco.libdc1394.global.dc1394.*;
import java.io.*;

// Initialize libdc1394 system
dc1394_t d = dc1394_new();
if (d == null) {
    System.exit(1);
}

// Enumerate cameras
dc1394camera_list_t list = new dc1394camera_list_t();
int err = dc1394_camera_enumerate(d, list);
if (err != 0 || list.num() == 0) {
    dc1394_log_error("No cameras found");
    dc1394_free(d);
    System.exit(1);
}

// Create camera instance
dc1394camera_t camera = dc1394_camera_new(d, list.ids().guid());
if (camera == null) {
    dc1394_log_error("Failed to initialize camera");
    dc1394_camera_free_list(list);
    dc1394_free(d);
    System.exit(1);
}
dc1394_camera_free_list(list);

// Configure camera
dc1394_video_set_iso_speed(camera, DC1394_ISO_SPEED_400);
dc1394_video_set_mode(camera, DC1394_VIDEO_MODE_640x480_RGB8);
dc1394_video_set_framerate(camera, DC1394_FRAMERATE_7_5);

// Setup capture
dc1394_capture_setup(camera, 4, DC1394_CAPTURE_FLAGS_DEFAULT);
dc1394_video_set_transmission(camera, DC1394_ON);

// Capture frame
dc1394video_frame_t frame = new dc1394video_frame_t(null);
dc1394_capture_dequeue(camera, DC1394_CAPTURE_POLICY_WAIT, frame);

// Process frame data
byte[] imageData = new byte[(int)frame.total_bytes()];
frame.image().get(imageData);

// Return frame and cleanup
dc1394_capture_enqueue(camera, frame);
dc1394_video_set_transmission(camera, DC1394_OFF);
dc1394_capture_stop(camera);
dc1394_camera_free(camera);
dc1394_free(d);

Architecture

libdc1394 is built around several key components:

  • System Context: dc1394_t provides the main library context for all operations
  • Camera Management: Discovery, initialization, and control of individual cameras through dc1394camera_t
  • Video Capture: Frame-based image acquisition with DMA transfer support
  • Feature Control: Comprehensive camera parameter control (exposure, gain, white balance, etc.)
  • Format7 Support: Scalable image format with ROI (Region of Interest) capabilities
  • Image Conversion: Built-in color space conversion and Bayer demosaicing
  • Trigger Control: External and software trigger support for synchronized capture

Capabilities

System Management

Core system initialization, camera discovery, and resource management functionality.

// System context management
dc1394_t dc1394_new();
void dc1394_free(dc1394_t d);

// Camera discovery and management
int dc1394_camera_enumerate(dc1394_t d, dc1394camera_list_t list);
void dc1394_camera_free_list(dc1394camera_list_t list);
dc1394camera_t dc1394_camera_new(dc1394_t d, long guid);
dc1394camera_t dc1394_camera_new_unit(dc1394_t d, long guid, int unit);
void dc1394_camera_free(dc1394camera_t camera);

System Management

Video Capture

High-performance video frame capture with DMA support and flexible capture policies.

// Capture setup and control
int dc1394_capture_setup(dc1394camera_t camera, int num_dma_buffers, int flags);
int dc1394_capture_dequeue(dc1394camera_t camera, int policy, dc1394video_frame_t frame);
int dc1394_capture_enqueue(dc1394camera_t camera, dc1394video_frame_t frame);
int dc1394_capture_stop(dc1394camera_t camera);

// Frame structure access
interface dc1394video_frame_t {
    BytePointer image();           // Raw image data
    long total_bytes();           // Total frame size in bytes
    long image_bytes();           // Image data size in bytes
    int size(int i);              // Width (i=0) and height (i=1)
    int color_coding();           // Color format
    int video_mode();             // Video mode
    long timestamp();             // Frame timestamp
}

Video Capture

Camera Features

Comprehensive camera feature control including exposure, gain, white balance, focus, and advanced parameters.

// Feature information and control
int dc1394_feature_get_all(dc1394camera_t camera, dc1394featureset_t features);
int dc1394_feature_get_value(dc1394camera_t camera, int feature, IntPointer value);
int dc1394_feature_set_value(dc1394camera_t camera, int feature, int value);
int dc1394_feature_get_mode(dc1394camera_t camera, int feature, IntPointer mode);
int dc1394_feature_set_mode(dc1394camera_t camera, int feature, int mode);

// Feature structure
interface dc1394feature_info_t {
    int id();                     // Feature identifier
    boolean available();          // Feature availability
    boolean absolute_capable();   // Absolute value support
    int min();                   // Minimum value
    int max();                   // Maximum value
    int value();                 // Current value
    int mode();                  // Control mode (manual/auto)
}

Camera Features

Video Modes and Formats

Video mode configuration with support for standard formats and scalable Format7 modes.

// Video mode control
int dc1394_video_get_supported_modes(dc1394camera_t camera, dc1394video_modes_t modes);
int dc1394_video_set_mode(dc1394camera_t camera, int video_mode);
int dc1394_video_get_mode(dc1394camera_t camera, IntPointer video_mode);
int dc1394_video_set_framerate(dc1394camera_t camera, int framerate);
int dc1394_video_get_framerate(dc1394camera_t camera, IntPointer framerate);

// Standard video modes (32 constants)
static final int DC1394_VIDEO_MODE_160x120_YUV444 = 64;
static final int DC1394_VIDEO_MODE_640x480_RGB8 = 68;
static final int DC1394_VIDEO_MODE_800x600_MONO8 = 73;
static final int DC1394_VIDEO_MODE_1600x1200_MONO16 = 86;
// ... and 28 more video modes

Video Modes and Formats

Format7 (Scalable Format)

Advanced scalable format support allowing custom image sizes, positions, and region of interest (ROI) configuration.

// Format7 mode configuration
int dc1394_format7_get_modeset(dc1394camera_t camera, dc1394format7modeset_t modeset);
int dc1394_format7_set_roi(dc1394camera_t camera, int mode, int color_coding, 
                          int packet_size, int left, int top, int width, int height);
int dc1394_format7_get_max_image_size(dc1394camera_t camera, int mode, 
                                    IntPointer h_size, IntPointer v_size);
int dc1394_format7_set_image_size(dc1394camera_t camera, int mode, int width, int height);
int dc1394_format7_set_color_coding(dc1394camera_t camera, int mode, int color_coding);

// Format7 mode structure
interface dc1394format7mode_t {
    boolean present();            // Mode availability
    int max_size_x();            // Maximum width
    int max_size_y();            // Maximum height
    int unit_size_x();           // Width increment unit
    int unit_size_y();           // Height increment unit
    int packet_size_per_unit();  // Packet size per unit
}

Format7 Support

Trigger Control

External and software trigger control for synchronized image capture and multi-camera setups.

// Trigger configuration
int dc1394_external_trigger_set_mode(dc1394camera_t camera, int mode);
int dc1394_external_trigger_get_mode(dc1394camera_t camera, IntPointer mode);
int dc1394_external_trigger_set_source(dc1394camera_t camera, int source);
int dc1394_external_trigger_set_polarity(dc1394camera_t camera, int polarity);
int dc1394_external_trigger_set_power(dc1394camera_t camera, int pwr);
int dc1394_software_trigger_set_power(dc1394camera_t camera, int pwr);

// Trigger modes and sources
static final int DC1394_TRIGGER_MODE_0 = 384;
static final int DC1394_TRIGGER_SOURCE_0 = 576;
static final int DC1394_TRIGGER_SOURCE_SOFTWARE = 580;
static final int DC1394_TRIGGER_ACTIVE_LOW = 518;
static final int DC1394_TRIGGER_ACTIVE_HIGH = 519;

Trigger Control

Image Conversion

Built-in image format conversion including Bayer pattern demosaicing, color space conversion, and stereo processing.

// Bayer pattern demosaicing
int dc1394_bayer_decoding_8bit(BytePointer bayer, BytePointer rgb, int sx, int sy, 
                              int tile, int method);
int dc1394_bayer_decoding_16bit(ShortPointer bayer, ShortPointer rgb, int sx, int sy, 
                               int tile, int method, int bits);

// Format conversion
int dc1394_convert_to_YUV422(BytePointer src, BytePointer dest, int width, int height, 
                             int byte_order, int source_coding, int bits);
int dc1394_convert_to_RGB8(BytePointer src, BytePointer dest, int width, int height, 
                           int byte_order, int source_coding, int bits);

// Bayer methods and color filters
static final int DC1394_BAYER_METHOD_NEAREST = 0;
static final int DC1394_BAYER_METHOD_BILINEAR = 2;
static final int DC1394_COLOR_FILTER_RGGB = 512;
static final int DC1394_COLOR_FILTER_GBRG = 513;

Image Conversion

ISO Resource Management

IEEE 1394 bus resource allocation for bandwidth and channel management in multi-camera setups.

// Channel and bandwidth allocation
int dc1394_iso_allocate_channel(dc1394camera_t camera, long channels_allowed, IntPointer channel);
int dc1394_iso_release_channel(dc1394camera_t camera, int channel);
int dc1394_iso_allocate_bandwidth(dc1394camera_t camera, int bandwidth_units);
int dc1394_iso_release_bandwidth(dc1394camera_t camera, int bandwidth_units);
int dc1394_iso_set_persist(dc1394camera_t camera);
int dc1394_iso_release_all(dc1394camera_t camera);

ISO Resource Management

Utility Functions

Helper functions for format validation, error handling, and data conversion.

// Format validation and conversion
int dc1394_get_image_size_from_video_mode(dc1394camera_t camera, int video_mode, 
                                        IntPointer width, IntPointer height);
int dc1394_framerate_as_float(int framerate_enum, FloatPointer framerate);
boolean dc1394_is_video_mode_scalable(int video_mode);
boolean dc1394_is_same_camera(dc1394camera_id_t id1, dc1394camera_id_t id2);
BytePointer dc1394_feature_get_string(int feature);
BytePointer dc1394_error_get_string(int error);

Utility Functions

Logging and Debugging

Error reporting, debug logging, and custom message handling.

// Built-in logging functions
void dc1394_log_error(String format);
void dc1394_log_warning(String format);  
void dc1394_log_debug(String format);

// Custom log handler registration
int dc1394_log_register_handler(int type, Log_handler_int_BytePointer_Pointer log_handler, 
                               Pointer user);
int dc1394_log_set_default_handler(int type);

Logging and Debugging

Types

Core System Types

// Main system context
class dc1394_t extends Pointer {
    // Opaque system context - no direct field access
}

// Camera list for discovery
class dc1394camera_list_t extends Pointer {
    int num();                    // Number of cameras found
    dc1394camera_id_t ids();     // Array of camera identifiers
}

// Camera identifier
class dc1394camera_id_t extends Pointer {
    int unit();                   // Camera unit number
    long guid();                  // Camera GUID
}

Camera Object

// Main camera object with 22 properties
class dc1394camera_t extends Pointer {
    // System information
    long guid();                  // Camera GUID
    int unit();                   // Unit number on bus
    String vendor();              // Vendor name
    String model();               // Camera model
    
    // Hardware identifiers
    int vendor_id();              // Vendor ID
    int model_id();               // Model ID
    int unit_spec_ID();           // Unit specification ID
    
    // Firmware information
    int unit_sw_version();        // Software version
    int unit_sub_sw_version();    // Sub software version
    int iidc_version();           // IIDC version
    
    // Capabilities
    boolean bmode_capable();      // B-mode capability
    boolean one_shot_capable();   // One-shot capability
    boolean multi_shot_capable(); // Multi-shot capability
    boolean can_switch_on_off();  // Power switch capability
    
    // ... and 8 more fields for memory layout and CSR addresses
}

Video Frame Structure

// Video frame with comprehensive metadata
class dc1394video_frame_t extends Pointer {
    // Image data
    BytePointer image();          // Raw image data pointer
    long total_bytes();           // Total frame size in bytes
    long image_bytes();           // Image data size in bytes
    long allocated_image_bytes(); // Allocated buffer size
    
    // Frame dimensions and position
    int size(int i);              // Width (i=0) and height (i=1)
    int _position(int i);         // Left (i=0) and top (i=1) position
    
    // Format information
    int color_coding();           // Color coding format
    int color_filter();           // Bayer color filter pattern
    int video_mode();             // Video mode
    int data_depth();             // Bits per pixel
    int stride();                 // Bytes per line
    
    // Timing and metadata
    long timestamp();             // Frame timestamp
    int frames_behind();          // Frames behind in buffer
    int packet_size();            // Packet size for Format7
    int packets_per_frame();      // Packets per frame
    
    // Status information
    int padding_bytes();          // Padding bytes
    boolean little_endian();      // Byte order
    boolean data_in_padding();    // Data in padding area
    dc1394camera_t camera();      // Source camera
    long id();                    // Frame ID
}

Feature Control Types

// Individual feature information (22 fields)
class dc1394feature_info_t extends Pointer {
    int id();                     // Feature identifier (DC1394_FEATURE_*)
    boolean available();          // Feature availability
    boolean absolute_capable();   // Absolute value support
    boolean on_off_capable();     // On/off control support
    boolean polarity_capable();   // Polarity control support
    boolean is_on();             // Current on/off state
    boolean auto_capable();       // Auto mode support
    boolean manual_capable();     // Manual mode support
    boolean one_push_capable();   // One-push auto support
    int one_push();              // One-push state
    boolean readout_capable();    // Readout capability
    int polarity();              // Current polarity
    int mode();                  // Control mode
    int min();                   // Minimum value
    int max();                   // Maximum value
    int value();                 // Current value
    int BU_value();              // Blue/U component value (for white balance)
    int RV_value();              // Red/V component value (for white balance)
    int target_value();          // Target value for auto mode
    boolean abs_capable();        // Absolute value capability
    float abs_value();           // Absolute value
    float abs_min();             // Absolute minimum
    float abs_max();             // Absolute maximum
}

// Complete feature set
class dc1394featureset_t extends Pointer {
    dc1394feature_info_t feature(int i); // Access individual features by index
}

Constants

Error Codes

// Core operation results
static final int DC1394_SUCCESS = 0;
static final int DC1394_FAILURE = -1;
static final int DC1394_NOT_A_CAMERA = -2;
static final int DC1394_FUNCTION_NOT_SUPPORTED = -3;
static final int DC1394_CAMERA_NOT_INITIALIZED = -4;
static final int DC1394_MEMORY_ALLOCATION_FAILURE = -5;
static final int DC1394_INVALID_ARGUMENT_VALUE = -6;
static final int DC1394_INVALID_FEATURE = -7;
static final int DC1394_INVALID_VIDEO_FORMAT = -8;
static final int DC1394_INVALID_VIDEO_MODE = -9;
static final int DC1394_INVALID_FRAMERATE = -10;
static final int DC1394_INVALID_TRIGGER_MODE = -11;
static final int DC1394_INVALID_TRIGGER_SOURCE = -12;
static final int DC1394_INVALID_ISO_SPEED = -13;
static final int DC1394_INVALID_IIDC_VERSION = -14;
static final int DC1394_INVALID_COLOR_CODING = -15;
static final int DC1394_INVALID_COLOR_FILTER = -16;
static final int DC1394_INVALID_CAPTURE_POLICY = -17;
static final int DC1394_INVALID_ERROR_CODE = -18;
static final int DC1394_INVALID_BAYER_METHOD = -19;
static final int DC1394_INVALID_VIDEO_SETTING = -20;
static final int DC1394_INVALID_FORMAT7_MODE = -21;
static final int DC1394_INVALID_FORMAT7_SETTING = -22;
static final int DC1394_INVALID_WHITEBALANCE_MODE = -23;
static final int DC1394_INVALID_TEMPERATURE_MODE = -24;
static final int DC1394_INVALID_OPERATION_MODE = -25;
static final int DC1394_REQ_VALUE_OUTSIDE_RANGE = -26;
static final int DC1394_INVALID_REGISTER = -27;
static final int DC1394_INVALID_ADDRSPACE = -28;
static final int DC1394_INVALID_CAPTURE_BUFFER = -29;
static final int DC1394_INVALID_CAMERA = -30;
static final int DC1394_UNABLE_TO_AQUIRE_CAMERA = -31;
static final int DC1394_SYNCHRONIZATION_FAILURE = -32;
static final int DC1394_CAMERA_ALREADY_USED = -33;
static final int DC1394_RAW1394_FAILURE = -34;
static final int DC1394_FORMAT7_ERROR_FLAG_1 = -35;
static final int DC1394_FORMAT7_ERROR_FLAG_2 = -36;
static final int DC1394_INVALID_STATE = -37;
static final int DC1394_FEATURE_NOT_AVAILABLE = -38;
static final int DC1394_FEATURE_NOT_SWITCHABLE = -39;

Boolean and State Constants

// Boolean values
static final int DC1394_FALSE = 0;
static final int DC1394_TRUE = 1;

// Power states
static final int DC1394_OFF = 0;
static final int DC1394_ON = 1;

// Switch states
static final int DC1394_SWITCH_MIN = 0;
static final int DC1394_SWITCH_MAX = 1;

Video Mode Constants

// Standard video modes (32 modes)
static final int DC1394_VIDEO_MODE_160x120_YUV444 = 64;
static final int DC1394_VIDEO_MODE_320x240_YUV422 = 65;
static final int DC1394_VIDEO_MODE_640x480_YUV411 = 66;
static final int DC1394_VIDEO_MODE_640x480_YUV422 = 67;
static final int DC1394_VIDEO_MODE_640x480_RGB8 = 68;
static final int DC1394_VIDEO_MODE_640x480_MONO8 = 69;
static final int DC1394_VIDEO_MODE_640x480_MONO16 = 70;
static final int DC1394_VIDEO_MODE_800x600_YUV422 = 71;
static final int DC1394_VIDEO_MODE_800x600_RGB8 = 72;
static final int DC1394_VIDEO_MODE_800x600_MONO8 = 73;
static final int DC1394_VIDEO_MODE_1024x768_YUV422 = 74;
static final int DC1394_VIDEO_MODE_1024x768_RGB8 = 75;
static final int DC1394_VIDEO_MODE_1024x768_MONO8 = 76;
static final int DC1394_VIDEO_MODE_800x600_MONO16 = 77;
static final int DC1394_VIDEO_MODE_1024x768_MONO16 = 78;
static final int DC1394_VIDEO_MODE_1280x960_YUV422 = 79;
static final int DC1394_VIDEO_MODE_1280x960_RGB8 = 80;
static final int DC1394_VIDEO_MODE_1280x960_MONO8 = 81;
static final int DC1394_VIDEO_MODE_1600x1200_YUV422 = 82;
static final int DC1394_VIDEO_MODE_1600x1200_RGB8 = 83;
static final int DC1394_VIDEO_MODE_1600x1200_MONO8 = 84;
static final int DC1394_VIDEO_MODE_1280x960_MONO16 = 85;
static final int DC1394_VIDEO_MODE_1600x1200_MONO16 = 86;
static final int DC1394_VIDEO_MODE_EXIF = 87;
static final int DC1394_VIDEO_MODE_FORMAT7_0 = 88;
static final int DC1394_VIDEO_MODE_FORMAT7_1 = 89;
static final int DC1394_VIDEO_MODE_FORMAT7_2 = 90;
static final int DC1394_VIDEO_MODE_FORMAT7_3 = 91;
static final int DC1394_VIDEO_MODE_FORMAT7_4 = 92;
static final int DC1394_VIDEO_MODE_FORMAT7_5 = 93;
static final int DC1394_VIDEO_MODE_FORMAT7_6 = 94;
static final int DC1394_VIDEO_MODE_FORMAT7_7 = 95;

Color Coding Constants

// Color coding formats (11 formats)
static final int DC1394_COLOR_CODING_MONO8 = 352;
static final int DC1394_COLOR_CODING_YUV422 = 353;
static final int DC1394_COLOR_CODING_YUV411 = 354;
static final int DC1394_COLOR_CODING_YUV444 = 355;
static final int DC1394_COLOR_CODING_RGB8 = 356;
static final int DC1394_COLOR_CODING_MONO16 = 357;
static final int DC1394_COLOR_CODING_RGB16 = 358;
static final int DC1394_COLOR_CODING_MONO16S = 359;
static final int DC1394_COLOR_CODING_RGB16S = 360;
static final int DC1394_COLOR_CODING_RAW8 = 361;
static final int DC1394_COLOR_CODING_RAW16 = 362;

// Color filter patterns (4 patterns)
static final int DC1394_COLOR_FILTER_RGGB = 512;
static final int DC1394_COLOR_FILTER_GBRG = 513;
static final int DC1394_COLOR_FILTER_GRBG = 514;
static final int DC1394_COLOR_FILTER_BGGR = 515;

// Byte order (2 values)
static final int DC1394_BYTE_ORDER_UYVY = 800;
static final int DC1394_BYTE_ORDER_YUYV = 801;

Framerate and Speed Constants

// Framerates (8 rates)
static final int DC1394_FRAMERATE_1_875 = 32;
static final int DC1394_FRAMERATE_3_75 = 33;
static final int DC1394_FRAMERATE_7_5 = 34;
static final int DC1394_FRAMERATE_15 = 35;
static final int DC1394_FRAMERATE_30 = 36;
static final int DC1394_FRAMERATE_60 = 37;
static final int DC1394_FRAMERATE_120 = 38;
static final int DC1394_FRAMERATE_240 = 39;

// ISO speeds (6 speeds)
static final int DC1394_ISO_SPEED_100 = 0;
static final int DC1394_ISO_SPEED_200 = 1;
static final int DC1394_ISO_SPEED_400 = 2;
static final int DC1394_ISO_SPEED_800 = 3;
static final int DC1394_ISO_SPEED_1600 = 4;
static final int DC1394_ISO_SPEED_3200 = 5;

// Operation modes (2 modes)
static final int DC1394_OPERATION_MODE_LEGACY = 480;
static final int DC1394_OPERATION_MODE_1394B = 481;

Feature Constants

// Camera features (22 features)
static final int DC1394_FEATURE_BRIGHTNESS = 416;
static final int DC1394_FEATURE_EXPOSURE = 417;
static final int DC1394_FEATURE_SHARPNESS = 418;
static final int DC1394_FEATURE_WHITE_BALANCE = 419;
static final int DC1394_FEATURE_HUE = 420;
static final int DC1394_FEATURE_SATURATION = 421;
static final int DC1394_FEATURE_GAMMA = 422;
static final int DC1394_FEATURE_SHUTTER = 423;
static final int DC1394_FEATURE_GAIN = 424;
static final int DC1394_FEATURE_IRIS = 425;
static final int DC1394_FEATURE_FOCUS = 426;
static final int DC1394_FEATURE_TEMPERATURE = 427;
static final int DC1394_FEATURE_TRIGGER = 428;
static final int DC1394_FEATURE_TRIGGER_DELAY = 429;
static final int DC1394_FEATURE_WHITE_SHADING = 430;
static final int DC1394_FEATURE_FRAME_RATE = 431;
static final int DC1394_FEATURE_ZOOM = 432;
static final int DC1394_FEATURE_PAN = 433;
static final int DC1394_FEATURE_TILT = 434;
static final int DC1394_FEATURE_OPTICAL_FILTER = 435;
static final int DC1394_FEATURE_CAPTURE_SIZE = 436;
static final int DC1394_FEATURE_CAPTURE_QUALITY = 437;

// Feature modes (3 modes)
static final int DC1394_FEATURE_MODE_MANUAL = 736;
static final int DC1394_FEATURE_MODE_AUTO = 737;
static final int DC1394_FEATURE_MODE_ONE_PUSH_AUTO = 738;

Trigger Constants

// Trigger modes (8 modes)
static final int DC1394_TRIGGER_MODE_0 = 384;
static final int DC1394_TRIGGER_MODE_1 = 385;
static final int DC1394_TRIGGER_MODE_2 = 386;
static final int DC1394_TRIGGER_MODE_3 = 387;
static final int DC1394_TRIGGER_MODE_4 = 388;
static final int DC1394_TRIGGER_MODE_5 = 389;
static final int DC1394_TRIGGER_MODE_14 = 390;
static final int DC1394_TRIGGER_MODE_15 = 391;

// Trigger sources (5 sources)
static final int DC1394_TRIGGER_SOURCE_0 = 576;
static final int DC1394_TRIGGER_SOURCE_1 = 577;
static final int DC1394_TRIGGER_SOURCE_2 = 578;
static final int DC1394_TRIGGER_SOURCE_3 = 579;
static final int DC1394_TRIGGER_SOURCE_SOFTWARE = 580;

// Trigger polarity (2 values)
static final int DC1394_TRIGGER_ACTIVE_LOW = 518;
static final int DC1394_TRIGGER_ACTIVE_HIGH = 519;

Capture Constants

// Capture policies (2 policies)
static final int DC1394_CAPTURE_POLICY_WAIT = 672;
static final int DC1394_CAPTURE_POLICY_POLL = 673;

// Capture flags (4 flags)
static final int DC1394_CAPTURE_FLAGS_CHANNEL_ALLOC = 1;
static final int DC1394_CAPTURE_FLAGS_BANDWIDTH_ALLOC = 2;
static final int DC1394_CAPTURE_FLAGS_DEFAULT = 4;
static final int DC1394_CAPTURE_FLAGS_AUTO_ISO = 8;

Image Processing Constants

// Bayer decoding methods (8 methods)
static final int DC1394_BAYER_METHOD_NEAREST = 0;
static final int DC1394_BAYER_METHOD_SIMPLE = 1;
static final int DC1394_BAYER_METHOD_BILINEAR = 2;
static final int DC1394_BAYER_METHOD_HQLINEAR = 3;
static final int DC1394_BAYER_METHOD_DOWNSAMPLE = 4;
static final int DC1394_BAYER_METHOD_EDGESENSE = 5;
static final int DC1394_BAYER_METHOD_VNG = 6;
static final int DC1394_BAYER_METHOD_AHD = 7;

// Stereo decoding methods (2 methods)
static final int DC1394_STEREO_METHOD_INTERLACED = 0;
static final int DC1394_STEREO_METHOD_FIELD = 1;

Format7 Constants

// Format7 special values (3 values)
static final int DC1394_QUERY_FROM_CAMERA = -1;
static final int DC1394_USE_MAX_AVAIL = -2;
static final int DC1394_USE_RECOMMENDED = -3;

Log Level Constants

// Log levels (3 levels)
static final int DC1394_LOG_ERROR = 768;
static final int DC1394_LOG_WARNING = 769;
static final int DC1394_LOG_DEBUG = 770;

IIDC Version Constants

// IIDC specification versions (13 versions)
static final int DC1394_IIDC_VERSION_1_04 = 544;
static final int DC1394_IIDC_VERSION_1_20 = 545;
static final int DC1394_IIDC_VERSION_PTGREY = 546;
static final int DC1394_IIDC_VERSION_1_30 = 547;
static final int DC1394_IIDC_VERSION_1_31 = 548;
static final int DC1394_IIDC_VERSION_1_32 = 549;
static final int DC1394_IIDC_VERSION_1_33 = 550;
static final int DC1394_IIDC_VERSION_1_34 = 551;
static final int DC1394_IIDC_VERSION_1_35 = 552;
static final int DC1394_IIDC_VERSION_1_36 = 553;
static final int DC1394_IIDC_VERSION_1_37 = 554;
static final int DC1394_IIDC_VERSION_1_38 = 555;
static final int DC1394_IIDC_VERSION_1_39 = 556;

Power Class Constants

// Power class specifications (8 classes)
static final int DC1394_POWER_CLASS_NONE = 608;
static final int DC1394_POWER_CLASS_PROV_MIN_15W = 609;
static final int DC1394_POWER_CLASS_PROV_MIN_20W = 610;
static final int DC1394_POWER_CLASS_PROV_MIN_25W = 611;
static final int DC1394_POWER_CLASS_PROV_MIN_30W = 612;
static final int DC1394_POWER_CLASS_USES_MAX_1W = 613;
static final int DC1394_POWER_CLASS_USES_MAX_3W = 614;
static final int DC1394_POWER_CLASS_USES_MAX_6W = 615;
static final int DC1394_POWER_CLASS_USES_MAX_10W = 616;