@blueyerobotics/protocol-definitions 3.2.0-bb5ffe79 → 3.2.0-c2a9067e

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -154,6 +154,22 @@ export declare enum NotificationLevel {
154
154
  }
155
155
  export declare function notificationLevelFromJSON(object: any): NotificationLevel;
156
156
  export declare function notificationLevelToJSON(object: NotificationLevel): string;
157
+ /**
158
+ * Storage location.
159
+ *
160
+ * Used to specify which storage location to use for recording photos and videos.
161
+ */
162
+ export declare enum StorageLocation {
163
+ /** STORAGE_LOCATION_UNSPECIFIED - Unspecified. */
164
+ STORAGE_LOCATION_UNSPECIFIED = 0,
165
+ /** STORAGE_LOCATION_INTERNAL - Internal storage of the drone. */
166
+ STORAGE_LOCATION_INTERNAL = 1,
167
+ /** STORAGE_LOCATION_REMOVABLE - Removable storage device. */
168
+ STORAGE_LOCATION_REMOVABLE = 2,
169
+ UNRECOGNIZED = -1
170
+ }
171
+ export declare function storageLocationFromJSON(object: any): StorageLocation;
172
+ export declare function storageLocationToJSON(object: StorageLocation): string;
157
173
  /** Drone models produced by Blueye. */
158
174
  export declare enum Model {
159
175
  /** MODEL_UNSPECIFIED - ModelName not specified. */
@@ -168,6 +184,8 @@ export declare enum Model {
168
184
  MODEL_X3 = 3,
169
185
  /** MODEL_X3_ULTRA - Blueye X3 Ultra. */
170
186
  MODEL_X3_ULTRA = 6,
187
+ /** MODEL_X7 - Blueye X7. */
188
+ MODEL_X7 = 7,
171
189
  /** MODEL_NEXT - Blueye ? */
172
190
  MODEL_NEXT = 5,
173
191
  UNRECOGNIZED = -1
@@ -194,28 +212,35 @@ export declare function pressureSensorTypeToJSON(object: PressureSensorType): st
194
212
  export declare enum Resolution {
195
213
  /** RESOLUTION_UNSPECIFIED - Resolution not specified. */
196
214
  RESOLUTION_UNSPECIFIED = 0,
197
- /** RESOLUTION_VGA - VGA (640x480). */
198
- RESOLUTION_VGA = 4,
199
- /** RESOLUTION_SVGA - SVGA (800x600). */
200
- RESOLUTION_SVGA = 5,
215
+ /** RESOLUTION_VGA_480P - VGA (640x480). */
216
+ RESOLUTION_VGA_480P = 4,
201
217
  /** RESOLUTION_HD_720P - 720p HD (1280x720). */
202
218
  RESOLUTION_HD_720P = 2,
203
219
  /** RESOLUTION_FULLHD_1080P - 1080p Full HD (1920x1080). */
204
220
  RESOLUTION_FULLHD_1080P = 1,
205
- /** RESOLUTION_UHD_4K - 4K Ultra HD (3840x2160). */
221
+ /** RESOLUTION_UHD_4K - 4K Ultra HD (3840x2160, Only supported on X3 Ultra). */
206
222
  RESOLUTION_UHD_4K = 3,
223
+ /** RESOLUTION_QHD_2K - 2K QHD (2560x1440, Only supported on X3 Ultra). */
224
+ RESOLUTION_QHD_2K = 5,
207
225
  UNRECOGNIZED = -1
208
226
  }
209
227
  export declare function resolutionFromJSON(object: any): Resolution;
210
228
  export declare function resolutionToJSON(object: Resolution): string;
211
- /** Available camera frame rates. */
229
+ /**
230
+ * Available camera frame rates.
231
+ *
232
+ * If the requested frame rate is higher than what is supported at the current resolution,
233
+ * the frame rate will be reduced while the resolution is respected.
234
+ */
212
235
  export declare enum Framerate {
213
236
  /** FRAMERATE_UNSPECIFIED - Framerate not specified. */
214
237
  FRAMERATE_UNSPECIFIED = 0,
215
238
  /** FRAMERATE_FPS_30 - 30 frames per second. */
216
239
  FRAMERATE_FPS_30 = 1,
217
- /** FRAMERATE_FPS_25 - 25 frames per second. */
240
+ /** FRAMERATE_FPS_25 - 25 frames per second. (Only supported on Pioneer/Pro/X1/X3) */
218
241
  FRAMERATE_FPS_25 = 2,
242
+ /** FRAMERATE_FPS_60 - 60 frames per second. (Only supported on X3 Ultra at QHD, 1080p and 720p) */
243
+ FRAMERATE_FPS_60 = 3,
219
244
  UNRECOGNIZED = -1
220
245
  }
221
246
  export declare function framerateFromJSON(object: any): Framerate;
@@ -237,12 +262,24 @@ export declare enum StreamingProtocol {
237
262
  STREAMING_PROTOCOL_UNSPECIFIED = 0,
238
263
  /** STREAMING_PROTOCOL_RTSP_H264 - RTSP streaming protocol using H264 codec. */
239
264
  STREAMING_PROTOCOL_RTSP_H264 = 1,
240
- /** STREAMING_PROTOCOL_RTSP_MJPEG - RTSP streaming protocol using MJPEG codec. */
265
+ /** STREAMING_PROTOCOL_RTSP_MJPEG - RTSP streaming protocol using MJPEG codec. No recording when activated. */
241
266
  STREAMING_PROTOCOL_RTSP_MJPEG = 2,
242
267
  UNRECOGNIZED = -1
243
268
  }
244
269
  export declare function streamingProtocolFromJSON(object: any): StreamingProtocol;
245
270
  export declare function streamingProtocolToJSON(object: StreamingProtocol): string;
271
+ /** Recording video codec. */
272
+ export declare enum RecordingCodec {
273
+ /** RECORDING_CODEC_UNSPECIFIED - Use platform default (H.264). */
274
+ RECORDING_CODEC_UNSPECIFIED = 0,
275
+ /** RECORDING_CODEC_H264 - H.264/AVC codec. Wider compatibility with players/editors. */
276
+ RECORDING_CODEC_H264 = 1,
277
+ /** RECORDING_CODEC_H265 - H.265/HEVC codec. Better compression, limited compatibility. Ultra only. */
278
+ RECORDING_CODEC_H265 = 2,
279
+ UNRECOGNIZED = -1
280
+ }
281
+ export declare function recordingCodecFromJSON(object: any): RecordingCodec;
282
+ export declare function recordingCodecToJSON(object: RecordingCodec): string;
246
283
  /** Available temperature units. */
247
284
  export declare enum TemperatureUnit {
248
285
  /** TEMPERATURE_UNIT_UNSPECIFIED - Temperature unit not specified. */
@@ -405,8 +442,14 @@ export declare enum GuestPortDeviceID {
405
442
  GUEST_PORT_DEVICE_ID_WATERLINKED_SONAR_3D15 = 43,
406
443
  /** GUEST_PORT_DEVICE_ID_CERULEAN_TRACKER_650 - Cerulean Tracker 650. */
407
444
  GUEST_PORT_DEVICE_ID_CERULEAN_TRACKER_650 = 44,
408
- /** GUEST_PORT_DEVICE_ID_BLUEYE_EXTERNAL_USB_STORAGE - Blueye External USB Storage */
445
+ /** GUEST_PORT_DEVICE_ID_BLUEYE_EXTERNAL_USB_STORAGE - Blueye External USB Storage. */
409
446
  GUEST_PORT_DEVICE_ID_BLUEYE_EXTERNAL_USB_STORAGE = 45,
447
+ /** GUEST_PORT_DEVICE_ID_BLUEYE_MULTIBEAM_SERVO_V2 - Blueye Multibeam Skid Servo V2. */
448
+ GUEST_PORT_DEVICE_ID_BLUEYE_MULTIBEAM_SERVO_V2 = 46,
449
+ /** GUEST_PORT_DEVICE_ID_CERULEAN_OMNISCAN_450_COMPACT - Cerulean Omniscan 450 Compact. */
450
+ GUEST_PORT_DEVICE_ID_CERULEAN_OMNISCAN_450_COMPACT = 47,
451
+ /** GUEST_PORT_DEVICE_ID_BLUEYE_SCALING_LASER - Blueye Scaling Laser. */
452
+ GUEST_PORT_DEVICE_ID_BLUEYE_SCALING_LASER = 48,
410
453
  UNRECOGNIZED = -1
411
454
  }
412
455
  export declare function guestPortDeviceIDFromJSON(object: any): GuestPortDeviceID;
@@ -492,6 +535,18 @@ export declare enum MultibeamFrequencyMode {
492
535
  }
493
536
  export declare function multibeamFrequencyModeFromJSON(object: any): MultibeamFrequencyMode;
494
537
  export declare function multibeamFrequencyModeToJSON(object: MultibeamFrequencyMode): string;
538
+ /** Thermal zone identifiers. */
539
+ export declare enum ThermalZoneId {
540
+ /** THERMAL_ZONE_ID_UNSPECIFIED - Unspecified thermal zone. */
541
+ THERMAL_ZONE_ID_UNSPECIFIED = 0,
542
+ /** THERMAL_ZONE_ID_TJ - Junction temperature (Tj). */
543
+ THERMAL_ZONE_ID_TJ = 1,
544
+ /** THERMAL_ZONE_ID_CANISTER - Canister temperature. */
545
+ THERMAL_ZONE_ID_CANISTER = 2,
546
+ UNRECOGNIZED = -1
547
+ }
548
+ export declare function thermalZoneIdFromJSON(object: any): ThermalZoneId;
549
+ export declare function thermalZoneIdToJSON(object: ThermalZoneId): string;
495
550
  /**
496
551
  * Wrapper message for each entry in the drone telemetry logfile.
497
552
  *
@@ -548,6 +603,49 @@ export declare enum LogEntry_LogLevel {
548
603
  }
549
604
  export declare function logEntry_LogLevelFromJSON(object: any): LogEntry_LogLevel;
550
605
  export declare function logEntry_LogLevelToJSON(object: LogEntry_LogLevel): string;
606
+ export interface KernelLogEntry {
607
+ /** Log level, info, warning, error, etc. */
608
+ level: KernelLogEntry_KernelLogLevel;
609
+ /** Sequence number of the log entry. */
610
+ seqnum: number;
611
+ /** Timestamp of the log entry. */
612
+ timestamp: Date | undefined;
613
+ /** Log messages. */
614
+ messages: string[];
615
+ /** List of key-value pairs. */
616
+ fields: KernelLogEntry_KeyValuePair[];
617
+ }
618
+ /** Kernel log level. */
619
+ export declare enum KernelLogEntry_KernelLogLevel {
620
+ /** KERNEL_LOG_LEVEL_UNSPECIFIED - Unspecified log level. */
621
+ KERNEL_LOG_LEVEL_UNSPECIFIED = 0,
622
+ /** KERNEL_LOG_LEVEL_EMERG - Emergency log level. */
623
+ KERNEL_LOG_LEVEL_EMERG = 1,
624
+ /** KERNEL_LOG_LEVEL_ALERT - Alert log level. */
625
+ KERNEL_LOG_LEVEL_ALERT = 2,
626
+ /** KERNEL_LOG_LEVEL_CRIT - Critical log level. */
627
+ KERNEL_LOG_LEVEL_CRIT = 3,
628
+ /** KERNEL_LOG_LEVEL_ERR - Error log level. */
629
+ KERNEL_LOG_LEVEL_ERR = 4,
630
+ /** KERNEL_LOG_LEVEL_WARNING - Warning log level. */
631
+ KERNEL_LOG_LEVEL_WARNING = 5,
632
+ /** KERNEL_LOG_LEVEL_NOTICE - Notice log level. */
633
+ KERNEL_LOG_LEVEL_NOTICE = 6,
634
+ /** KERNEL_LOG_LEVEL_INFO - Informational log level. */
635
+ KERNEL_LOG_LEVEL_INFO = 7,
636
+ /** KERNEL_LOG_LEVEL_DEBUG - Debug log level. */
637
+ KERNEL_LOG_LEVEL_DEBUG = 8,
638
+ UNRECOGNIZED = -1
639
+ }
640
+ export declare function kernelLogEntry_KernelLogLevelFromJSON(object: any): KernelLogEntry_KernelLogLevel;
641
+ export declare function kernelLogEntry_KernelLogLevelToJSON(object: KernelLogEntry_KernelLogLevel): string;
642
+ /** Key-value pair used for structured logging. */
643
+ export interface KernelLogEntry_KeyValuePair {
644
+ /** Key of the key-value pair. */
645
+ key: string;
646
+ /** Value of the key-value pair. */
647
+ value: string;
648
+ }
551
649
  /** If you use both values at the same time they cancel each other out. */
552
650
  export interface MotionInput {
553
651
  /** Forward (positive) and backwards (negative) movement. (-1..1). */
@@ -717,6 +815,12 @@ export interface RecordState {
717
815
  multibeamSeconds: number;
718
816
  /** Multibeam record fps. */
719
817
  multibeamFps: number;
818
+ /** Storage location used for main camera recording. */
819
+ mainStorageLocation: StorageLocation;
820
+ /** Storage location used for guestport camera recording. */
821
+ guestportStorageLocation: StorageLocation;
822
+ /** Storage location used for multibeam recording. */
823
+ multibeamStorageLocation: StorageLocation;
720
824
  }
721
825
  /** Time-lapse state published if time-lapse mission is running. */
722
826
  export interface TimeLapseState {
@@ -762,7 +866,7 @@ export interface WaterTemperature {
762
866
  /** Water temperature (°C). */
763
867
  value: number;
764
868
  }
765
- /** CPU temperature. */
869
+ /** CPU temperature (deprecated, use SystemPerformanceInfo.thermal_zones instead). */
766
870
  export interface CPUTemperature {
767
871
  /** CPU temperature (°C). */
768
872
  value: number;
@@ -1184,7 +1288,7 @@ export interface DiveTime {
1184
1288
  /** Number of seconds the drone has been submerged. */
1185
1289
  value: number;
1186
1290
  }
1187
- /** Which cameras are supposed to be recording. */
1291
+ /** Which cameras or multibeam are supposed to be recording. */
1188
1292
  export interface RecordOn {
1189
1293
  /** Record the main camera. */
1190
1294
  main: boolean;
@@ -1210,6 +1314,8 @@ export interface StoragePartition {
1210
1314
  devicePath: string;
1211
1315
  /** Mount path of the partition. */
1212
1316
  mountPath: string;
1317
+ /** Label of the partition. */
1318
+ label: string;
1213
1319
  }
1214
1320
  /** Removable storage device. */
1215
1321
  export interface RemovableStorageDevice {
@@ -1232,10 +1338,12 @@ export declare enum RemovableStorageDevice_Status {
1232
1338
  STATUS_UNSPECIFIED = 0,
1233
1339
  /** STATUS_READY - The storage device is valid and ready for use. */
1234
1340
  STATUS_READY = 1,
1235
- /** STATUS_FORMATTING - The storage device is being formatted */
1341
+ /** STATUS_FORMATTING - The storage device is being formatted. */
1236
1342
  STATUS_FORMATTING = 2,
1237
1343
  /** STATUS_ERROR - The storage device is in an error state. */
1238
1344
  STATUS_ERROR = 3,
1345
+ /** STATUS_UNPLUGGED - The storage device is not present. */
1346
+ STATUS_UNPLUGGED = 4,
1239
1347
  UNRECOGNIZED = -1
1240
1348
  }
1241
1349
  export declare function removableStorageDevice_StatusFromJSON(object: any): RemovableStorageDevice_Status;
@@ -1484,6 +1592,12 @@ export interface CameraParameters {
1484
1592
  backlightCompensation: number;
1485
1593
  /** Noise reduction (-20..20), -20 as default. Only available on Ultra. */
1486
1594
  denoise: number;
1595
+ /** Enable eHDR mode. Default true. Only available on Ultra. */
1596
+ ehdrEnabled: boolean;
1597
+ /** Minimum number of eHDR frames. (1..4), default 1. Only available on Ultra. */
1598
+ ehdrExposureMinNumber: number;
1599
+ /** Maximum number of eHDR frames. (1..4), default 2. Only on Ultra. Setting larger than 2 can reduce the framerate. */
1600
+ ehdrExposureMaxNumber: number;
1487
1601
  /** Stream, recording and image resolution (deprecated). */
1488
1602
  resolution: Resolution;
1489
1603
  /** Stream resolution. */
@@ -1496,8 +1610,19 @@ export interface CameraParameters {
1496
1610
  framerate: Framerate;
1497
1611
  /** Which camera the parameters belong to. */
1498
1612
  camera: Camera;
1499
- /** Prioritize fixed frame rate over quality on Ultra. */
1500
- fixedFramerate: boolean;
1613
+ /**
1614
+ * Network MTU (Maximum Transmission Unit) size for video streaming in bytes (68..65535).
1615
+ * If 0 or unset, the system will use a default of 1400.
1616
+ * The Blueye App allows users to set values between 500 and 1460.
1617
+ */
1618
+ mtuSize: number;
1619
+ /** Recording video codec. If unset, uses platform default. */
1620
+ recordingCodec: RecordingCodec;
1621
+ /**
1622
+ * Recording bitrate in bits/sec. If 0 or unset, a default is computed based
1623
+ * on resolution, framerate, and encoding. Set explicitly to override.
1624
+ */
1625
+ recordingBitrate: number;
1501
1626
  }
1502
1627
  /**
1503
1628
  * Overlay parameters.
@@ -1723,8 +1848,7 @@ export interface MultibeamPing {
1723
1848
  /** Size in bytes of each row in the ping data image. */
1724
1849
  step: number;
1725
1850
  /**
1726
- * Bearing angle of each column of the sonar data
1727
- * (in 100th of a degree, multiply by 0.01 to get a value in degrees).
1851
+ * Bearing angle of each column of the sonar data in degrees.
1728
1852
  * The sonar image is not sampled uniformly in the bearing direction.
1729
1853
  */
1730
1854
  bearings: number[];
@@ -1864,7 +1988,7 @@ export interface PersistentStorageSettings {
1864
1988
  accCalibration: boolean;
1865
1989
  }
1866
1990
  /**
1867
- * CPU information.
1991
+ * CPU information (deprecated, use SystemPerformanceInfo instead).
1868
1992
  *
1869
1993
  * Contains information about the CPU load and memory usage of the drone.
1870
1994
  */
@@ -1880,6 +2004,119 @@ export interface CPUInfo {
1880
2004
  /** Communication queue load (0..1). */
1881
2005
  commQueueLoad: number;
1882
2006
  }
2007
+ /** Per-core CPU utilization. */
2008
+ export interface CpuCoreLoad {
2009
+ /** Core index (0-based). */
2010
+ coreIndex: number;
2011
+ /** Core load (0..1). */
2012
+ load: number;
2013
+ /** Current clock frequency (MHz). */
2014
+ frequencyMhz: number;
2015
+ }
2016
+ /** GPU utilization and status. */
2017
+ export interface GpuInfo {
2018
+ /** GPU load (0..1). */
2019
+ load: number;
2020
+ /** Current GPU clock frequency (MHz). */
2021
+ frequencyMhz: number;
2022
+ }
2023
+ /**
2024
+ * Deep Learning Accelerator (DLA) utilization.
2025
+ *
2026
+ * Jetson Orin NX has two DLA engines used for inference offload.
2027
+ */
2028
+ export interface DlaInfo {
2029
+ /** DLA engine index (0-based). */
2030
+ engineIndex: number;
2031
+ /** DLA engine load (0..1). */
2032
+ load: number;
2033
+ /** Core clock frequency (MHz). 0 when disabled. */
2034
+ frequencyMhz: number;
2035
+ /** True when the DLA engine is actively processing. */
2036
+ enabled: boolean;
2037
+ /** Falcon microcontroller clock frequency (MHz). 0 when disabled. */
2038
+ falconFrequencyMhz: number;
2039
+ }
2040
+ /** System memory information. */
2041
+ export interface MemoryInfo {
2042
+ /** Total RAM (bytes). */
2043
+ totalBytes: number;
2044
+ /** Used RAM (bytes). */
2045
+ usedBytes: number;
2046
+ /** Cached RAM (bytes). */
2047
+ cachedBytes: number;
2048
+ /** Memory bus utilization (0..1). i.MX only. */
2049
+ busLoad: number;
2050
+ }
2051
+ /** Thermal zone reading. */
2052
+ export interface ThermalZone {
2053
+ /** Thermal zone identifier. */
2054
+ zone: ThermalZoneId;
2055
+ /** Temperature (°C). */
2056
+ temperature: number;
2057
+ }
2058
+ /** Video codec engine status. */
2059
+ export interface VideoCodecInfo {
2060
+ /** Jetson only (NVENC/NVDEC/NVJPG/VIC devfreq). */
2061
+ encoderActive: boolean;
2062
+ /** Video encoder clock frequency (MHz). */
2063
+ encoderFrequencyMhz: number;
2064
+ /** Video decoder (NVDEC) is active. */
2065
+ decoderActive: boolean;
2066
+ /** Video decoder clock frequency (MHz). */
2067
+ decoderFrequencyMhz: number;
2068
+ /** JPEG engine (NVJPG) is active. */
2069
+ nvjpgActive: boolean;
2070
+ /** JPEG engine clock frequency (MHz). */
2071
+ nvjpgFrequencyMhz: number;
2072
+ /** Video Image Compositor (VIC) is active. */
2073
+ vicActive: boolean;
2074
+ /** VIC clock frequency (MHz). */
2075
+ vicFrequencyMhz: number;
2076
+ /** i.MX only (CODA VPU). */
2077
+ vpuActive: boolean;
2078
+ /** VPU AXI clock frequency (MHz). */
2079
+ vpuFrequencyMhz: number;
2080
+ /** Cumulative VPU_CODEC_IRQ count. */
2081
+ vpuCodecIrqCount: number;
2082
+ /** Cumulative VPU_JPG_IRQ count. */
2083
+ vpuJpgIrqCount: number;
2084
+ }
2085
+ /**
2086
+ * System performance information.
2087
+ *
2088
+ * Comprehensive performance metrics for the drone's compute platform.
2089
+ * Covers CPU, GPU, DLA, memory, thermals, and video codec utilization.
2090
+ * Fields not applicable to a platform are left at their zero/empty defaults.
2091
+ */
2092
+ export interface SystemPerformanceInfo {
2093
+ /** Per-core CPU utilization. */
2094
+ cpuCores: CpuCoreLoad[];
2095
+ /** Mean CPU utilization across all cores (0..1). */
2096
+ cpuUtilization: number;
2097
+ /** GPU utilization. */
2098
+ gpu: GpuInfo | undefined;
2099
+ /** DLA engine utilization (Jetson only). */
2100
+ dlaEngines: DlaInfo[];
2101
+ /** RAM usage. */
2102
+ memory: MemoryInfo | undefined;
2103
+ /** All thermal zone readings. */
2104
+ thermalZones: ThermalZone[];
2105
+ /** Video encoder/decoder status. */
2106
+ videoCodec: VideoCodecInfo | undefined;
2107
+ /** Main queue load (0..1). */
2108
+ mainQueueLoad: number;
2109
+ /** Guestport queue load (0..1). */
2110
+ guestportQueueLoad: number;
2111
+ /** Communication queue load (0..1). */
2112
+ commQueueLoad: number;
2113
+ /** Camera queue load (0..1). */
2114
+ cameraQueueLoad: number;
2115
+ /** Overlay queue load (0..1). */
2116
+ overlayQueueLoad: number;
2117
+ /** Position observer queue load (0..1). */
2118
+ positionObserverQueueLoad: number;
2119
+ }
1883
2120
  /**
1884
2121
  * Surface Unit battery information.
1885
2122
  *
@@ -1911,8 +2148,82 @@ export interface SurfaceUnitVersionInfo {
1911
2148
  /** Surface Unit firmware version (x.y.z). */
1912
2149
  version: string;
1913
2150
  }
2151
+ /**
2152
+ * Bounding box for object detection.
2153
+ *
2154
+ * Coordinates are in pixels relative to the camera image,
2155
+ * where (x, y) is the top-left corner of the bounding box.
2156
+ */
2157
+ export interface BoundingBox {
2158
+ /** Horizontal offset of the top-left corner (px). */
2159
+ x: number;
2160
+ /** Vertical offset of the top-left corner (px). */
2161
+ y: number;
2162
+ /** Width of the bounding box (px). */
2163
+ width: number;
2164
+ /** Height of the bounding box (px). */
2165
+ height: number;
2166
+ }
2167
+ /** A single object detection from a computer vision model. */
2168
+ export interface ObjectDetection {
2169
+ /** Bounding box of the detected object. */
2170
+ boundingBox: BoundingBox | undefined;
2171
+ /** Detection confidence score (0..1). */
2172
+ confidence: number;
2173
+ /** Numeric class identifier from the model. */
2174
+ classId: number;
2175
+ /** Human-readable class name. */
2176
+ className: string;
2177
+ /** Unique ID for tracking the same object across frames. */
2178
+ trackingId: number;
2179
+ }
2180
+ /** A list of object detections from a single video frame. */
2181
+ export interface ObjectDetections {
2182
+ /** List of detections in the frame. */
2183
+ detections: ObjectDetection[];
2184
+ /** Which camera the detections are from. */
2185
+ camera: Camera;
2186
+ /** Width of the source image (px). */
2187
+ imageWidth: number;
2188
+ /** Height of the source image (px). */
2189
+ imageHeight: number;
2190
+ }
2191
+ /** Generic filter settings. */
2192
+ export interface FilterMessage {
2193
+ /** If the filter is enabled. */
2194
+ enabled: boolean;
2195
+ /** Intensity of the filter (0..1). */
2196
+ intensity: number;
2197
+ }
2198
+ /**
2199
+ * Digital pan, tilt, and zoom state for the main camera.
2200
+ *
2201
+ * Only supported on X3 Ultra. Controls digital (not mechanical) zoom.
2202
+ */
2203
+ export interface CameraPanTiltZoom {
2204
+ /** Horizontal pan (-1.0..1.0), where 0.0 is center. */
2205
+ pan: number;
2206
+ /** Vertical tilt (-1.0..1.0), where 0.0 is center. */
2207
+ tilt: number;
2208
+ /** Zoom level (0.0..1.0), where 0.0 is no zoom and 1.0 is maximum zoom. */
2209
+ zoom: number;
2210
+ }
2211
+ /**
2212
+ * Information about the operator controlling the drone.
2213
+ *
2214
+ * Used to identify who started a dive, for reporting and when importing
2215
+ * dives to Blueye Cloud.
2216
+ */
2217
+ export interface OperatorInfo {
2218
+ /** Full name of the operator. */
2219
+ name: string;
2220
+ /** E-mail address of the operator. */
2221
+ email: string;
2222
+ }
1914
2223
  export declare const BinlogRecord: MessageFns<BinlogRecord>;
1915
2224
  export declare const LogEntry: MessageFns<LogEntry>;
2225
+ export declare const KernelLogEntry: MessageFns<KernelLogEntry>;
2226
+ export declare const KernelLogEntry_KeyValuePair: MessageFns<KernelLogEntry_KeyValuePair>;
1916
2227
  export declare const MotionInput: MessageFns<MotionInput>;
1917
2228
  export declare const Lights: MessageFns<Lights>;
1918
2229
  export declare const Laser: MessageFns<Laser>;
@@ -1998,8 +2309,21 @@ export declare const MultibeamFrameOffset: MessageFns<MultibeamFrameOffset>;
1998
2309
  export declare const MutltibeamRecordingIndex: MessageFns<MutltibeamRecordingIndex>;
1999
2310
  export declare const PersistentStorageSettings: MessageFns<PersistentStorageSettings>;
2000
2311
  export declare const CPUInfo: MessageFns<CPUInfo>;
2312
+ export declare const CpuCoreLoad: MessageFns<CpuCoreLoad>;
2313
+ export declare const GpuInfo: MessageFns<GpuInfo>;
2314
+ export declare const DlaInfo: MessageFns<DlaInfo>;
2315
+ export declare const MemoryInfo: MessageFns<MemoryInfo>;
2316
+ export declare const ThermalZone: MessageFns<ThermalZone>;
2317
+ export declare const VideoCodecInfo: MessageFns<VideoCodecInfo>;
2318
+ export declare const SystemPerformanceInfo: MessageFns<SystemPerformanceInfo>;
2001
2319
  export declare const SurfaceUnitBatteryInfo: MessageFns<SurfaceUnitBatteryInfo>;
2002
2320
  export declare const SurfaceUnitVersionInfo: MessageFns<SurfaceUnitVersionInfo>;
2321
+ export declare const BoundingBox: MessageFns<BoundingBox>;
2322
+ export declare const ObjectDetection: MessageFns<ObjectDetection>;
2323
+ export declare const ObjectDetections: MessageFns<ObjectDetections>;
2324
+ export declare const FilterMessage: MessageFns<FilterMessage>;
2325
+ export declare const CameraPanTiltZoom: MessageFns<CameraPanTiltZoom>;
2326
+ export declare const OperatorInfo: MessageFns<OperatorInfo>;
2003
2327
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
2004
2328
  type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
2005
2329
  [K in keyof T]?: DeepPartial<T[K]>;