obsbot-mcp 0.6.3 → 0.7.0
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.
- package/README.md +3 -1
- package/dist/mcp/tools.d.ts +6 -0
- package/dist/mcp/tools.js +123 -17
- package/dist/mcp/tools.js.map +1 -1
- package/dist/transport/helper-process.d.ts +11 -0
- package/dist/transport/helper-process.js +10 -0
- package/dist/transport/helper-process.js.map +1 -1
- package/dist/transport/linux.d.ts +59 -9
- package/dist/transport/linux.js +163 -21
- package/dist/transport/linux.js.map +1 -1
- package/dist/transport/macos.d.ts +8 -0
- package/dist/transport/macos.js +11 -0
- package/dist/transport/macos.js.map +1 -1
- package/dist/transport/transport.d.ts +22 -0
- package/dist/transport/transport.js +20 -0
- package/dist/transport/transport.js.map +1 -1
- package/dist/transport/windows.d.ts +6 -0
- package/dist/transport/windows.js +9 -0
- package/dist/transport/windows.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/native/prebuilt/darwin-arm64/obsbot-helper +0 -0
- package/native/prebuilt/darwin-x64/obsbot-helper +0 -0
- package/native/prebuilt/linux-x64/obsbot-helper +0 -0
- package/native/prebuilt/win32-x64/obsbot-helper.exe +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -60,7 +60,9 @@ With the installed binary, use `"command": "obsbot-mcp"` and `"args": ["--debug"
|
|
|
60
60
|
|
|
61
61
|
## Tools
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
35 tools on Windows and macOS, 34 on Linux (`obsbot_gimbal_move_speed` is unavailable there — see
|
|
64
|
+
[limitations](#linux-gimbal-position-feedback-is-not-live)). `--debug` adds `obsbot_debug_probe` for
|
|
65
|
+
one more. All names below are current as of v0.4.0 — **every tool was renamed in this
|
|
64
66
|
release and there is no backward-compatible alias**; see [CHANGELOG.md](./CHANGELOG.md) for the
|
|
65
67
|
full old→new mapping if you're updating a caller.
|
|
66
68
|
|
package/dist/mcp/tools.d.ts
CHANGED
|
@@ -55,6 +55,12 @@ export interface PresetReadOpts {
|
|
|
55
55
|
attempts?: number;
|
|
56
56
|
backoffMs?: number[];
|
|
57
57
|
}
|
|
58
|
+
export interface PoseSettleOpts {
|
|
59
|
+
pollMs?: number;
|
|
60
|
+
timeoutMs?: number;
|
|
61
|
+
/** Beat between the two pose reads that decide whether the gimbal is moving. */
|
|
62
|
+
motionPollMs?: number;
|
|
63
|
+
}
|
|
58
64
|
export interface ZoomSettleOpts {
|
|
59
65
|
pollMs?: number;
|
|
60
66
|
timeoutMs?: number;
|
package/dist/mcp/tools.js
CHANGED
|
@@ -356,6 +356,115 @@ const napMs = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
|
356
356
|
// reflects the last commanded pose) without implying precision the readout
|
|
357
357
|
// doesn't have.
|
|
358
358
|
const round2 = (deg) => Math.round(deg * 100) / 100;
|
|
359
|
+
// motionPollMs is the sensitivity knob, same idea as readSteadyStatus: a beat of
|
|
360
|
+
// B ms detects any slew faster than POSE_STEADY_TOLERANCE_DEG * 1000/B deg/s.
|
|
361
|
+
// 120ms with a 1° band => 8.3 deg/s, against a measured gimbalSet slew of ~50
|
|
362
|
+
// deg/s (2026-08-21: a 90° pan took ~1.7s) — six times the threshold, while
|
|
363
|
+
// costing each aim one extra pose read and 120ms.
|
|
364
|
+
const POSE_SETTLE_DEFAULTS = {
|
|
365
|
+
pollMs: 100,
|
|
366
|
+
timeoutMs: 3000,
|
|
367
|
+
motionPollMs: 120,
|
|
368
|
+
};
|
|
369
|
+
// The band cannot be zero the way readSteadyStatus's is. A settled gimbal does
|
|
370
|
+
// NOT read identically every time: holding position, this camera dithers by one
|
|
371
|
+
// 3600 arc-second step (measured 2026-08-21: tilt read 40.0, 40.0, 41.0, 40.0
|
|
372
|
+
// while mechanically stationary). One degree is that dither exactly, and the
|
|
373
|
+
// hardware readout is only accurate to ±1° anyway, so a tighter band would spin
|
|
374
|
+
// until the deadline on a camera that is not moving at all.
|
|
375
|
+
const POSE_STEADY_TOLERANCE_DEG = 1;
|
|
376
|
+
/**
|
|
377
|
+
* RELEASE GATE. Settling runs only where pose reads report LIVE position, decided
|
|
378
|
+
* by t.livePoseReads(): OBSBOT_LIVE_POSE forces it either way, otherwise the
|
|
379
|
+
* transport detects it (Linux probes read latency; macOS/Windows default off).
|
|
380
|
+
*
|
|
381
|
+
* The hazard readSteadyPose addresses only exists where pose reads report LIVE
|
|
382
|
+
* position. Today that is macOS always, and Linux only on a kernel carrying the
|
|
383
|
+
* uvcvideo AUTO_UPDATE fixup for 3564:fef8 or the volatile patch — neither of
|
|
384
|
+
* which is upstream yet. On a stock Linux kernel the read is a commanded echo,
|
|
385
|
+
* settling changes no result, and the only effect is +motionPollMs on every aim
|
|
386
|
+
* and preset write. So the default stays off and shipped behaviour is unchanged
|
|
387
|
+
* on every platform.
|
|
388
|
+
*
|
|
389
|
+
* FLIP THE DEFAULT when the uvcvideo change lands upstream. Auto-detection is
|
|
390
|
+
* not available and is not worth building: the fixup restores AUTO_UPDATE
|
|
391
|
+
* WITHOUT advertising V4L2_CTRL_FLAG_VOLATILE, so the flag cannot distinguish it
|
|
392
|
+
* from a stock kernel, and the Linux helper's `flags` field carries a
|
|
393
|
+
* DirectShow-style auto/manual indicator rather than V4L2 control flags anyway.
|
|
394
|
+
*
|
|
395
|
+
* macOS is gated too, deliberately. It reads live and therefore has this bug
|
|
396
|
+
* today, but its behaviour is hardware-verified as shipped and this is not the
|
|
397
|
+
* change to unverify it in — enable the env var there once it has been exercised
|
|
398
|
+
* on Mac hardware.
|
|
399
|
+
*
|
|
400
|
+
* The same gate also enables LinuxTransport's closed-loop move retry; the flag
|
|
401
|
+
* itself lives in transport/transport.ts so both sides read one switch.
|
|
402
|
+
*/
|
|
403
|
+
/**
|
|
404
|
+
* Read the gimbal pose, and refuse to hand it back while the gimbal is still
|
|
405
|
+
* travelling.
|
|
406
|
+
*
|
|
407
|
+
* WHY THIS EXISTS. `aimAtPixel` and preset save/update do not use the pose as a
|
|
408
|
+
* report — they compose a NEW ABSOLUTE TARGET from it. A pose read mid-slew
|
|
409
|
+
* therefore does not merely look wrong, it lands the camera somewhere it was
|
|
410
|
+
* never asked to go: the composed target is short by exactly the distance the
|
|
411
|
+
* gimbal still had left to travel.
|
|
412
|
+
*
|
|
413
|
+
* This was invisible before 2026-08-21 because on Linux it could not happen.
|
|
414
|
+
* uvcvideo served CT_PANTILT_ABSOLUTE from its own cache, so a read taken during
|
|
415
|
+
* a move returned the last COMMANDED pose — the very thing the composition
|
|
416
|
+
* wanted — and the bug was masked by a driver defect. macOS has always read live
|
|
417
|
+
* and has always been exposed. Once the Linux driver reports true position (the
|
|
418
|
+
* uvcvideo AUTO_UPDATE fixup, or the pending volatile patch — see
|
|
419
|
+
* UVCVIDEO-LINUX-POSITION-2026-07-21.md), Linux is exposed too. Measured on
|
|
420
|
+
* hardware: five reads issued immediately after commanding a 90° pan returned
|
|
421
|
+
* 0.0, 18.0, 37.0, 60.0, 79.0 — five different intermediate poses, any of which
|
|
422
|
+
* would have been composed against.
|
|
423
|
+
*
|
|
424
|
+
* Correct on BOTH kernels, which is why it is unconditional rather than gated on
|
|
425
|
+
* a capability. Where the read is a cached setpoint, the two reads agree on the
|
|
426
|
+
* first beat and this returns after one `motionPollMs` with the same value the
|
|
427
|
+
* old code would have used. Where the read is live, it waits for arrival.
|
|
428
|
+
*
|
|
429
|
+
* Returns `settled` rather than throwing on timeout, matching waitForZoomSettle:
|
|
430
|
+
* a gimbal still moving after the bound is information the caller may want to
|
|
431
|
+
* act on, and the pose returned is still the freshest one available. Read
|
|
432
|
+
* failures are NOT swallowed here — unlike the zoom settle, which runs after the
|
|
433
|
+
* write it reports on, this runs BEFORE the move it feeds, and composing a
|
|
434
|
+
* target from a pose we failed to read is exactly the outcome to avoid.
|
|
435
|
+
*/
|
|
436
|
+
async function readSteadyPose(t, opts = {}) {
|
|
437
|
+
const { pollMs, timeoutMs, motionPollMs } = { ...POSE_SETTLE_DEFAULTS, ...opts };
|
|
438
|
+
const deadline = Date.now() + timeoutMs;
|
|
439
|
+
// UVC pan is degrees with our yaw sign (+ = camera-left); UVC tilt is degrees
|
|
440
|
+
// but positive = up, so negate to match our +pitch = down convention. Same
|
|
441
|
+
// read path and same signs as obsbot_gimbal_position.
|
|
442
|
+
const readPose = async () => ({
|
|
443
|
+
yaw: (await t.camCtrlGet(CAMERA_CONTROL_PAN)).value,
|
|
444
|
+
pitch: -(await t.camCtrlGet(CAMERA_CONTROL_TILT)).value,
|
|
445
|
+
});
|
|
446
|
+
if (!(await t.livePoseReads())) {
|
|
447
|
+
// Reads are a commanded echo (or the caller forced the gate off): one read,
|
|
448
|
+
// exactly as before this helper existed. `settled` is an assumption here,
|
|
449
|
+
// not a measurement — it reports "safe to compose" because on an echo kernel
|
|
450
|
+
// it is, not because motion was checked.
|
|
451
|
+
const only = await readPose();
|
|
452
|
+
return { yaw: only.yaw, pitch: only.pitch, settled: true };
|
|
453
|
+
}
|
|
454
|
+
let last = await readPose();
|
|
455
|
+
for (;;) {
|
|
456
|
+
await napMs(motionPollMs);
|
|
457
|
+
const next = await readPose();
|
|
458
|
+
const steady = Math.abs(next.yaw - last.yaw) <= POSE_STEADY_TOLERANCE_DEG &&
|
|
459
|
+
Math.abs(next.pitch - last.pitch) <= POSE_STEADY_TOLERANCE_DEG;
|
|
460
|
+
if (steady)
|
|
461
|
+
return { yaw: next.yaw, pitch: next.pitch, settled: true };
|
|
462
|
+
last = next;
|
|
463
|
+
if (Date.now() >= deadline)
|
|
464
|
+
return { yaw: next.yaw, pitch: next.pitch, settled: false };
|
|
465
|
+
await napMs(pollMs);
|
|
466
|
+
}
|
|
467
|
+
}
|
|
359
468
|
// motionPollMs is the sensitivity knob for readSteadyStatus: zoomPercent is an
|
|
360
469
|
// integer, so a beat of B ms detects any ramp travelling faster than 1000/B
|
|
361
470
|
// percentage points per second. 80ms => 12.5 pt/s, against a measured UVC ramp of
|
|
@@ -1060,10 +1169,10 @@ export function createTools(mgr, capture, debug = false, presetRead = {}, zoomSe
|
|
|
1060
1169
|
};
|
|
1061
1170
|
}
|
|
1062
1171
|
const magnification = resolved.magnification;
|
|
1063
|
-
//
|
|
1064
|
-
//
|
|
1065
|
-
|
|
1066
|
-
const pitch =
|
|
1172
|
+
// Settled pose, not a bare read: this becomes a composed absolute target
|
|
1173
|
+
// below, so a mid-slew reading would aim short by whatever travel was
|
|
1174
|
+
// left. See readSteadyPose.
|
|
1175
|
+
const { yaw, pitch } = await readSteadyPose(t);
|
|
1067
1176
|
// resolveMagnification already folded fovMode and zoomPercent into one
|
|
1068
1177
|
// number — a discrete mode's inherent crop and a continuous zoom are two
|
|
1069
1178
|
// ways of writing to the SAME scale, so there is nothing left to combine.
|
|
@@ -1192,9 +1301,9 @@ export function createTools(mgr, capture, debug = false, presetRead = {}, zoomSe
|
|
|
1192
1301
|
};
|
|
1193
1302
|
}
|
|
1194
1303
|
const magnification = resolved.magnification;
|
|
1195
|
-
// Same read path as
|
|
1196
|
-
|
|
1197
|
-
const pitch =
|
|
1304
|
+
// Same read path as obsbot_aim_at_pixel, and settled for the same reason:
|
|
1305
|
+
// this pose is composed into an absolute target, not reported.
|
|
1306
|
+
const { yaw, pitch } = await readSteadyPose(t);
|
|
1198
1307
|
// Aim uses the CURRENT magnification: it has to match the optics the
|
|
1199
1308
|
// caller's frame was actually captured at, not the new fitted zoom.
|
|
1200
1309
|
const centerX = x + width / 2;
|
|
@@ -1287,11 +1396,10 @@ export function createTools(mgr, capture, debug = false, presetRead = {}, zoomSe
|
|
|
1287
1396
|
if (before[slot - 1].occupied) {
|
|
1288
1397
|
return { ok: false, error: `slot ${slot} is occupied; update or delete first` };
|
|
1289
1398
|
}
|
|
1290
|
-
//
|
|
1291
|
-
//
|
|
1292
|
-
//
|
|
1293
|
-
const yaw =
|
|
1294
|
-
const pitch = -(await t.camCtrlGet(CAMERA_CONTROL_TILT)).value;
|
|
1399
|
+
// Settled pose: a preset is a pose the user will RECALL later, so saving
|
|
1400
|
+
// one sampled mid-slew bakes an arbitrary waypoint into the slot
|
|
1401
|
+
// permanently. See readSteadyPose.
|
|
1402
|
+
const { yaw, pitch } = await readSteadyPose(t);
|
|
1295
1403
|
// T6: ObsbotTransport exposes no zoom getter, so the live zoom ratio can't be
|
|
1296
1404
|
// read back here — zoom is hardcoded to 1 rather than guessed. Not an oversight.
|
|
1297
1405
|
pose = { pan: yaw, tilt: pitch, roll: 0, zoom: 1 };
|
|
@@ -1377,11 +1485,9 @@ export function createTools(mgr, capture, debug = false, presetRead = {}, zoomSe
|
|
|
1377
1485
|
// handing it back costs nothing and is the only restore path the caller has:
|
|
1378
1486
|
// the device keeps no history and UPDATE is not reversible.
|
|
1379
1487
|
previous = before[slot - 1].pose;
|
|
1380
|
-
// Mirror obsbot_preset_save's read path exactly
|
|
1381
|
-
//
|
|
1382
|
-
|
|
1383
|
-
const yaw = (await t.camCtrlGet(CAMERA_CONTROL_PAN)).value;
|
|
1384
|
-
const pitch = -(await t.camCtrlGet(CAMERA_CONTROL_TILT)).value;
|
|
1488
|
+
// Mirror obsbot_preset_save's read path exactly, settled for the same
|
|
1489
|
+
// reason: this pose is written into the slot, not reported.
|
|
1490
|
+
const { yaw, pitch } = await readSteadyPose(t);
|
|
1385
1491
|
// T6: ObsbotTransport exposes no zoom getter, so the live zoom ratio can't be
|
|
1386
1492
|
// read back here — zoom is hardcoded to 1 rather than guessed. Not an oversight.
|
|
1387
1493
|
pose = { pan: yaw, tilt: pitch, roll: 0, zoom: 1 };
|
package/dist/mcp/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,6 +60,17 @@ export declare class HelperProcess {
|
|
|
60
60
|
value: number;
|
|
61
61
|
flags: number;
|
|
62
62
|
}>;
|
|
63
|
+
/**
|
|
64
|
+
* Time repeated GET_CUR reads of a camera control, in the helper (C), so the
|
|
65
|
+
* ~150us cache-vs-live signal is not buried by this JSON-RPC round trip. Used
|
|
66
|
+
* by LinuxTransport.livePoseReads to detect a live-reading kernel without
|
|
67
|
+
* moving the gimbal. Reads only.
|
|
68
|
+
*/
|
|
69
|
+
readLatency(property: number, samples?: number): Promise<{
|
|
70
|
+
meanUs: number;
|
|
71
|
+
minUs: number;
|
|
72
|
+
maxUs: number;
|
|
73
|
+
}>;
|
|
63
74
|
procAmpSet(property: number, value: number, flags: number): Promise<void>;
|
|
64
75
|
procAmpRange(property: number): Promise<{
|
|
65
76
|
min: number;
|
|
@@ -276,6 +276,16 @@ export class HelperProcess {
|
|
|
276
276
|
const resp = await this.rpc({ op: "camctrl_get", property });
|
|
277
277
|
return { value: resp.value, flags: resp.flags };
|
|
278
278
|
}
|
|
279
|
+
/**
|
|
280
|
+
* Time repeated GET_CUR reads of a camera control, in the helper (C), so the
|
|
281
|
+
* ~150us cache-vs-live signal is not buried by this JSON-RPC round trip. Used
|
|
282
|
+
* by LinuxTransport.livePoseReads to detect a live-reading kernel without
|
|
283
|
+
* moving the gimbal. Reads only.
|
|
284
|
+
*/
|
|
285
|
+
async readLatency(property, samples = 40) {
|
|
286
|
+
const resp = await this.rpc({ op: "read_latency", property, samples });
|
|
287
|
+
return { meanUs: resp.meanUs, minUs: resp.minUs, maxUs: resp.maxUs };
|
|
288
|
+
}
|
|
279
289
|
async procAmpSet(property, value, flags) {
|
|
280
290
|
await this.rpc({ op: "procamp_set", property, value, flags });
|
|
281
291
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper-process.js","sourceRoot":"","sources":["../../src/transport/helper-process.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helper-process.js","sourceRoot":"","sources":["../../src/transport/helper-process.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,15 +9,30 @@ import { ObsbotTransport, Snapshot, SnapshotOpts } from "./transport.js";
|
|
|
9
9
|
* Key difference: gimbal absolute movement uses V4L2 pan_absolute/tilt_absolute
|
|
10
10
|
* (hardware-verified to physically move the gimbal, repeatedly, 2026-07-21),
|
|
11
11
|
* NOT vendor V3 frames. camCtrlGet for pan/tilt reads back the same V4L2
|
|
12
|
-
* controls
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
12
|
+
* controls.
|
|
13
|
+
*
|
|
14
|
+
* WHAT THAT READ MEANS DEPENDS ON THE KERNEL, and callers must tolerate both:
|
|
15
|
+
*
|
|
16
|
+
* - Stock uvcvideo: the last-*commanded* value. This camera's GET_INFO is a
|
|
17
|
+
* stub reporting GET|SET only, which strips the UVC_CTRL_FLAG_AUTO_UPDATE
|
|
18
|
+
* that uvcvideo's own control table sets for CT_PANTILT_ABSOLUTE. Nothing
|
|
19
|
+
* then clears ctrl->loaded, so the cache is served forever. Verified
|
|
20
|
+
* 2026-08-21: with the camera physically moved by hand, an unpatched driver
|
|
21
|
+
* kept reporting the stale pose indefinitely.
|
|
22
|
+
* - uvcvideo carrying the AUTO_UPDATE fixup for 3564:fef8, or the pending
|
|
23
|
+
* volatile patch: a genuinely LIVE position, tracking motion the host never
|
|
24
|
+
* commanded. Verified the same day against hand-moved poses on both axes.
|
|
25
|
+
*
|
|
26
|
+
* Neither is detectable from userspace: the fixup restores AUTO_UPDATE without
|
|
27
|
+
* advertising V4L2_CTRL_FLAG_VOLATILE, so QUERY_EXT_CTRL reports these controls
|
|
28
|
+
* as non-volatile in BOTH cases. Do not branch on that flag. Code that composes
|
|
29
|
+
* a new absolute target from the current pose must instead settle first — see
|
|
30
|
+
* readSteadyPose in mcp/tools.ts — which is correct under either kernel. Moves
|
|
31
|
+
* themselves are closed-loop when OBSBOT_LIVE_POSE is set: see panTiltAbsolute.
|
|
32
|
+
*
|
|
33
|
+
* The old raw-USB alternative (detach the driver, read directly) is still
|
|
34
|
+
* unnecessary and still conflicts with concurrent capture; see README's Linux
|
|
35
|
+
* limitations section.
|
|
21
36
|
*/
|
|
22
37
|
export declare class LinuxTransport implements ObsbotTransport {
|
|
23
38
|
private helper;
|
|
@@ -82,6 +97,41 @@ export declare class LinuxTransport implements ObsbotTransport {
|
|
|
82
97
|
* gimbal, it just carries the cancellation risk it always did.
|
|
83
98
|
*/
|
|
84
99
|
private panTiltAbsolute;
|
|
100
|
+
/** Number of closed-loop re-sends this transport has issued. Diagnostics/tests. */
|
|
101
|
+
get moveRetries(): number;
|
|
102
|
+
private moveRetryCount;
|
|
103
|
+
/**
|
|
104
|
+
* Whether this kernel's uvcvideo serves pan/tilt reads LIVE from the device
|
|
105
|
+
* rather than from its own cache — the condition under which the pose-settle
|
|
106
|
+
* and move-retry paths are correct and useful.
|
|
107
|
+
*
|
|
108
|
+
* OBSBOT_LIVE_POSE forces the answer either way. Unset, we PROBE: time a batch
|
|
109
|
+
* of GET_CUR reads in the helper and compare the mean to LIVE_READ_THRESHOLD_US.
|
|
110
|
+
* This detects the actual behaviour (are reads live) rather than a flag or a
|
|
111
|
+
* kernel version, so it fires for Ricardo's AUTO_UPDATE quirk (which advertises
|
|
112
|
+
* nothing), for the volatile patch, and for any future fix alike — and it is
|
|
113
|
+
* immune to the stable-backport and distro-versioning traps that make a
|
|
114
|
+
* uname-based gate wrong on exactly the kernels most users run.
|
|
115
|
+
*
|
|
116
|
+
* Cached for the transport's lifetime: the kernel does not change under us, and
|
|
117
|
+
* the probe reads the device a few dozen times. A probe failure (an older
|
|
118
|
+
* helper with no read_latency op, or an unreadable control) resolves to the
|
|
119
|
+
* override, or false — degrading to today's shipped behaviour, never throwing.
|
|
120
|
+
*/
|
|
121
|
+
livePoseReads(): Promise<boolean>;
|
|
122
|
+
private livePoseReadsCache?;
|
|
123
|
+
private detectLivePoseReads;
|
|
124
|
+
private commitPanTilt;
|
|
125
|
+
private onTarget;
|
|
126
|
+
/** Raw arc-seconds straight from the helper — no degree conversion, no rounding. */
|
|
127
|
+
private readPanTilt;
|
|
128
|
+
/**
|
|
129
|
+
* Wait until two consecutive pan/tilt reads agree within one step on both
|
|
130
|
+
* axes, i.e. the gimbal has stopped. Returns the settled pose, or null if it
|
|
131
|
+
* was still moving at the deadline. Read failures propagate: a move we cannot
|
|
132
|
+
* verify should surface, not be silently declared done.
|
|
133
|
+
*/
|
|
134
|
+
private settlePanTilt;
|
|
85
135
|
/**
|
|
86
136
|
* Drive the gimbal at a speed for a duration, using vendor-frame velocity
|
|
87
137
|
* protocol (fire-and-forget, no position readback). Not reachable from the
|
package/dist/transport/linux.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { livePoseOverride } from "./transport.js";
|
|
1
2
|
import { encodePtzMoveSpeed } from "../codec/commands.js";
|
|
2
3
|
import { readSerialVia } from "./read-serial.js";
|
|
3
4
|
const VENDOR_XU_SELECTOR = 0x02;
|
|
@@ -18,6 +19,24 @@ const STATUS_BLOCK_LEN = 60;
|
|
|
18
19
|
// always reported 0 error while the true physical angle was ~28% of what was asked
|
|
19
20
|
// for.
|
|
20
21
|
const ARCSEC_PER_DEG = 3600;
|
|
22
|
+
// Closed-loop move verification (OBSBOT_LIVE_POSE only) — see panTiltAbsolute.
|
|
23
|
+
// The device's GET_RES for CT_PANTILT_ABSOLUTE is one degree and it routinely
|
|
24
|
+
// lands one step short of a commanded target (measured 2026-08-21: -324000 asec
|
|
25
|
+
// commanded, -320400 reached, repeatably), so "on target" is within one step.
|
|
26
|
+
const PANTILT_STEP_ASEC = 3600;
|
|
27
|
+
// A slew starts within ~150ms of the commit and a 90° pan takes ~1.7s; the first
|
|
28
|
+
// settle read waits out the dead zone so two agreeing reads mean "stopped", not
|
|
29
|
+
// "not started yet".
|
|
30
|
+
const SETTLE_FIRST_READ_MS = 250;
|
|
31
|
+
const SETTLE_BEAT_MS = 150;
|
|
32
|
+
const SETTLE_TIMEOUT_MS = 3000;
|
|
33
|
+
// Read-latency threshold (microseconds) separating a CACHED pan/tilt read from a
|
|
34
|
+
// LIVE one. Measured 2026-08-21 on this camera: cached reads are a driver memcpy
|
|
35
|
+
// at ~2us and pinned flat; live reads are a USB GET_CUR at ~150us and never below
|
|
36
|
+
// ~115us. 40us sits ~20x above the cached ceiling and ~3x below the live floor —
|
|
37
|
+
// orders of magnitude of margin either way. See do_read_latency in
|
|
38
|
+
// native/linux/helper.c and LinuxTransport.livePoseReads.
|
|
39
|
+
const LIVE_READ_THRESHOLD_US = 40;
|
|
21
40
|
/**
|
|
22
41
|
* Linux V4L2 transport — functionally identical to {@link WindowsTransport}
|
|
23
42
|
* because both delegate to the native helper process over the same JSON-RPC
|
|
@@ -27,15 +46,30 @@ const ARCSEC_PER_DEG = 3600;
|
|
|
27
46
|
* Key difference: gimbal absolute movement uses V4L2 pan_absolute/tilt_absolute
|
|
28
47
|
* (hardware-verified to physically move the gimbal, repeatedly, 2026-07-21),
|
|
29
48
|
* NOT vendor V3 frames. camCtrlGet for pan/tilt reads back the same V4L2
|
|
30
|
-
* controls
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
49
|
+
* controls.
|
|
50
|
+
*
|
|
51
|
+
* WHAT THAT READ MEANS DEPENDS ON THE KERNEL, and callers must tolerate both:
|
|
52
|
+
*
|
|
53
|
+
* - Stock uvcvideo: the last-*commanded* value. This camera's GET_INFO is a
|
|
54
|
+
* stub reporting GET|SET only, which strips the UVC_CTRL_FLAG_AUTO_UPDATE
|
|
55
|
+
* that uvcvideo's own control table sets for CT_PANTILT_ABSOLUTE. Nothing
|
|
56
|
+
* then clears ctrl->loaded, so the cache is served forever. Verified
|
|
57
|
+
* 2026-08-21: with the camera physically moved by hand, an unpatched driver
|
|
58
|
+
* kept reporting the stale pose indefinitely.
|
|
59
|
+
* - uvcvideo carrying the AUTO_UPDATE fixup for 3564:fef8, or the pending
|
|
60
|
+
* volatile patch: a genuinely LIVE position, tracking motion the host never
|
|
61
|
+
* commanded. Verified the same day against hand-moved poses on both axes.
|
|
62
|
+
*
|
|
63
|
+
* Neither is detectable from userspace: the fixup restores AUTO_UPDATE without
|
|
64
|
+
* advertising V4L2_CTRL_FLAG_VOLATILE, so QUERY_EXT_CTRL reports these controls
|
|
65
|
+
* as non-volatile in BOTH cases. Do not branch on that flag. Code that composes
|
|
66
|
+
* a new absolute target from the current pose must instead settle first — see
|
|
67
|
+
* readSteadyPose in mcp/tools.ts — which is correct under either kernel. Moves
|
|
68
|
+
* themselves are closed-loop when OBSBOT_LIVE_POSE is set: see panTiltAbsolute.
|
|
69
|
+
*
|
|
70
|
+
* The old raw-USB alternative (detach the driver, read directly) is still
|
|
71
|
+
* unnecessary and still conflicts with concurrent capture; see README's Linux
|
|
72
|
+
* limitations section.
|
|
39
73
|
*/
|
|
40
74
|
export class LinuxTransport {
|
|
41
75
|
helper;
|
|
@@ -83,24 +117,31 @@ export class LinuxTransport {
|
|
|
83
117
|
async camCtrlGet(property) {
|
|
84
118
|
const result = await this.helper.camCtrlGet(property);
|
|
85
119
|
// V4L2 pan_absolute/tilt_absolute return arc-seconds, but the rest of
|
|
86
|
-
// the codebase expects degrees (Windows DirectShow convention).
|
|
87
|
-
//
|
|
120
|
+
// the codebase expects degrees (Windows DirectShow convention). Whether
|
|
121
|
+
// this is a commanded echo or a live position depends on the kernel — see
|
|
122
|
+
// the class comment.
|
|
88
123
|
//
|
|
89
124
|
// Degrees as a float, NOT rounded. UVC specifies CT_PANTILT_ABSOLUTE in
|
|
90
125
|
// arc-seconds, but this device's GET_RES is 3600 asec = 1 degree
|
|
91
126
|
// (PROTOCOL.md's CT_PANTILT_ABSOLUTE table, tiny2_specification.md
|
|
92
127
|
// section 2.1) and the firmware streams whole-degree steps — the device
|
|
93
128
|
// never emits a fraction, so rounding here would not recover any
|
|
94
|
-
// precision the hardware actually has.
|
|
95
|
-
//
|
|
96
|
-
//
|
|
97
|
-
//
|
|
98
|
-
// aimAtPixel's composed target
|
|
99
|
-
//
|
|
100
|
-
//
|
|
101
|
-
//
|
|
102
|
-
//
|
|
103
|
-
//
|
|
129
|
+
// precision the hardware actually has.
|
|
130
|
+
//
|
|
131
|
+
// On a stock kernel this additionally preserves a fractional COMMANDED
|
|
132
|
+
// pose: the read is an echo of what gimbalSet last wrote (round(deg *
|
|
133
|
+
// ARCSEC_PER_DEG)), so e.g. aimAtPixel's composed target survives the round
|
|
134
|
+
// trip instead of being flattened here. On a kernel that reports live
|
|
135
|
+
// position that benefit is gone — the device answers in whole degrees — but
|
|
136
|
+
// not rounding is still the right default: it costs nothing, and it avoids
|
|
137
|
+
// re-introducing a lossy step if a future device or firmware reports finer
|
|
138
|
+
// than a degree. Callers must not read sub-degree agreement between a
|
|
139
|
+
// commanded pose and a subsequent read as meaningful; the hardware readout
|
|
140
|
+
// is ±1° and, live, lands up to a full step short (measured 2026-08-21:
|
|
141
|
+
// commanding -108000 asec settled at -104400).
|
|
142
|
+
//
|
|
143
|
+
// The RANGE above still rounds: min/max are advertised bounds, not a live
|
|
144
|
+
// pose, and no arithmetic accumulates on them.
|
|
104
145
|
if (property === 0 || property === 1) {
|
|
105
146
|
result.value = result.value / ARCSEC_PER_DEG;
|
|
106
147
|
}
|
|
@@ -148,6 +189,78 @@ export class LinuxTransport {
|
|
|
148
189
|
* gimbal, it just carries the cancellation risk it always did.
|
|
149
190
|
*/
|
|
150
191
|
async panTiltAbsolute(panAsec, tiltAsec) {
|
|
192
|
+
await this.commitPanTilt(panAsec, tiltAsec);
|
|
193
|
+
if (!(await this.livePoseReads()))
|
|
194
|
+
return;
|
|
195
|
+
/*
|
|
196
|
+
* Closed loop, Linux only, behind OBSBOT_LIVE_POSE.
|
|
197
|
+
*
|
|
198
|
+
* This camera intermittently moves ONE axis to a previously commanded pose
|
|
199
|
+
* instead of the one just sent. Observed eight times on 2026-08-21, never
|
|
200
|
+
* with a host-side cause: the kernel-traced SET_CUR payload was correct on
|
|
201
|
+
* every occurrence, the helper's pan/tilt repair path never fired, and
|
|
202
|
+
* uvcvideo's restore-on-resume never ran (it is reset-resume only). The
|
|
203
|
+
* trigger was not found — 5/5 in one soak, then 0/54 across every variant
|
|
204
|
+
* isolated from it (zero-delta, post-wake, interrupted slew, USB autosuspend
|
|
205
|
+
* on/off). It lands on a previously commanded value, and re-sending the
|
|
206
|
+
* target corrects it (15/15 when provoked).
|
|
207
|
+
*
|
|
208
|
+
* On a stock kernel this is invisible: the read echoes the command while the
|
|
209
|
+
* gimbal sits elsewhere, so there is nothing to act on and this is gated
|
|
210
|
+
* off. With live reads it is detectable, so: settle, compare, re-send ONCE.
|
|
211
|
+
* Once, not a loop — a firmware that keeps fighting should lose loudly, via
|
|
212
|
+
* the caller's own settle (readSteadyPose) reporting where it really is.
|
|
213
|
+
* The retry is also not pre-emptive (no blind 1° nudge on every move): the
|
|
214
|
+
* fault fires a few times an hour at most, and an honest miss is better
|
|
215
|
+
* than a permanent tax on every move.
|
|
216
|
+
*/
|
|
217
|
+
const landed = await this.settlePanTilt();
|
|
218
|
+
if (landed && this.onTarget(landed, panAsec, tiltAsec))
|
|
219
|
+
return;
|
|
220
|
+
this.moveRetryCount++;
|
|
221
|
+
await this.commitPanTilt(panAsec, tiltAsec);
|
|
222
|
+
await this.settlePanTilt();
|
|
223
|
+
}
|
|
224
|
+
/** Number of closed-loop re-sends this transport has issued. Diagnostics/tests. */
|
|
225
|
+
get moveRetries() {
|
|
226
|
+
return this.moveRetryCount;
|
|
227
|
+
}
|
|
228
|
+
moveRetryCount = 0;
|
|
229
|
+
/**
|
|
230
|
+
* Whether this kernel's uvcvideo serves pan/tilt reads LIVE from the device
|
|
231
|
+
* rather than from its own cache — the condition under which the pose-settle
|
|
232
|
+
* and move-retry paths are correct and useful.
|
|
233
|
+
*
|
|
234
|
+
* OBSBOT_LIVE_POSE forces the answer either way. Unset, we PROBE: time a batch
|
|
235
|
+
* of GET_CUR reads in the helper and compare the mean to LIVE_READ_THRESHOLD_US.
|
|
236
|
+
* This detects the actual behaviour (are reads live) rather than a flag or a
|
|
237
|
+
* kernel version, so it fires for Ricardo's AUTO_UPDATE quirk (which advertises
|
|
238
|
+
* nothing), for the volatile patch, and for any future fix alike — and it is
|
|
239
|
+
* immune to the stable-backport and distro-versioning traps that make a
|
|
240
|
+
* uname-based gate wrong on exactly the kernels most users run.
|
|
241
|
+
*
|
|
242
|
+
* Cached for the transport's lifetime: the kernel does not change under us, and
|
|
243
|
+
* the probe reads the device a few dozen times. A probe failure (an older
|
|
244
|
+
* helper with no read_latency op, or an unreadable control) resolves to the
|
|
245
|
+
* override, or false — degrading to today's shipped behaviour, never throwing.
|
|
246
|
+
*/
|
|
247
|
+
livePoseReads() {
|
|
248
|
+
return (this.livePoseReadsCache ??= this.detectLivePoseReads());
|
|
249
|
+
}
|
|
250
|
+
livePoseReadsCache;
|
|
251
|
+
async detectLivePoseReads() {
|
|
252
|
+
const override = livePoseOverride();
|
|
253
|
+
if (override !== undefined)
|
|
254
|
+
return override;
|
|
255
|
+
try {
|
|
256
|
+
const { meanUs } = await this.helper.readLatency(0);
|
|
257
|
+
return meanUs >= LIVE_READ_THRESHOLD_US;
|
|
258
|
+
}
|
|
259
|
+
catch {
|
|
260
|
+
return false;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
async commitPanTilt(panAsec, tiltAsec) {
|
|
151
264
|
try {
|
|
152
265
|
await this.helper.panTiltSet(panAsec, tiltAsec);
|
|
153
266
|
}
|
|
@@ -157,6 +270,35 @@ export class LinuxTransport {
|
|
|
157
270
|
await Promise.all([this.camCtrlSet(0, panAsec, 2), this.camCtrlSet(1, tiltAsec, 2)]);
|
|
158
271
|
}
|
|
159
272
|
}
|
|
273
|
+
onTarget([pan, tilt], panAsec, tiltAsec) {
|
|
274
|
+
return Math.abs(pan - panAsec) <= PANTILT_STEP_ASEC && Math.abs(tilt - tiltAsec) <= PANTILT_STEP_ASEC;
|
|
275
|
+
}
|
|
276
|
+
/** Raw arc-seconds straight from the helper — no degree conversion, no rounding. */
|
|
277
|
+
async readPanTilt() {
|
|
278
|
+
const [p, t] = await Promise.all([this.helper.camCtrlGet(0), this.helper.camCtrlGet(1)]);
|
|
279
|
+
return [p.value, t.value];
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Wait until two consecutive pan/tilt reads agree within one step on both
|
|
283
|
+
* axes, i.e. the gimbal has stopped. Returns the settled pose, or null if it
|
|
284
|
+
* was still moving at the deadline. Read failures propagate: a move we cannot
|
|
285
|
+
* verify should surface, not be silently declared done.
|
|
286
|
+
*/
|
|
287
|
+
async settlePanTilt() {
|
|
288
|
+
const nap = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
289
|
+
const deadline = Date.now() + SETTLE_TIMEOUT_MS;
|
|
290
|
+
await nap(SETTLE_FIRST_READ_MS);
|
|
291
|
+
let last = await this.readPanTilt();
|
|
292
|
+
for (;;) {
|
|
293
|
+
await nap(SETTLE_BEAT_MS);
|
|
294
|
+
const next = await this.readPanTilt();
|
|
295
|
+
if (this.onTarget(next, last[0], last[1]))
|
|
296
|
+
return next;
|
|
297
|
+
last = next;
|
|
298
|
+
if (Date.now() >= deadline)
|
|
299
|
+
return null;
|
|
300
|
+
}
|
|
301
|
+
}
|
|
160
302
|
/**
|
|
161
303
|
* Drive the gimbal at a speed for a duration, using vendor-frame velocity
|
|
162
304
|
* protocol (fire-and-forget, no position readback). Not reachable from the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linux.js","sourceRoot":"","sources":["../../src/transport/linux.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"linux.js","sourceRoot":"","sources":["../../src/transport/linux.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,14 @@ export declare class MacosTransport implements ObsbotTransport {
|
|
|
33
33
|
value: number;
|
|
34
34
|
flags: number;
|
|
35
35
|
}>;
|
|
36
|
+
/**
|
|
37
|
+
* macOS reads pan/tilt live from the device already, so it is exposed to the
|
|
38
|
+
* pose-composition hazard — but its shipped behaviour is hardware-verified and
|
|
39
|
+
* this gate is not the change to flip that in. Honour OBSBOT_LIVE_POSE only;
|
|
40
|
+
* default off until it has been exercised on Mac hardware. No probe here: the
|
|
41
|
+
* read-latency signal is a Linux/uvcvideo caching artefact.
|
|
42
|
+
*/
|
|
43
|
+
livePoseReads(): Promise<boolean>;
|
|
36
44
|
procAmpSet(property: number, value: number, flags: number): Promise<void>;
|
|
37
45
|
procAmpRange(property: number): Promise<{
|
|
38
46
|
min: number;
|
package/dist/transport/macos.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { livePoseOverride } from "./transport.js";
|
|
1
2
|
import { encodeRecenter, encodePtzMoveAngle, encodePtzMoveSpeed } from "../codec/commands.js";
|
|
2
3
|
import { readSerialVia } from "./read-serial.js";
|
|
3
4
|
// Same XU selector constants as WindowsTransport — they're defined by the
|
|
@@ -97,6 +98,16 @@ export class MacosTransport {
|
|
|
97
98
|
}
|
|
98
99
|
return result;
|
|
99
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* macOS reads pan/tilt live from the device already, so it is exposed to the
|
|
103
|
+
* pose-composition hazard — but its shipped behaviour is hardware-verified and
|
|
104
|
+
* this gate is not the change to flip that in. Honour OBSBOT_LIVE_POSE only;
|
|
105
|
+
* default off until it has been exercised on Mac hardware. No probe here: the
|
|
106
|
+
* read-latency signal is a Linux/uvcvideo caching artefact.
|
|
107
|
+
*/
|
|
108
|
+
async livePoseReads() {
|
|
109
|
+
return livePoseOverride() === true;
|
|
110
|
+
}
|
|
100
111
|
async procAmpSet(property, value, flags) {
|
|
101
112
|
await this.helper.procAmpSet(property, value, flags);
|
|
102
113
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"macos.js","sourceRoot":"","sources":["../../src/transport/macos.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"macos.js","sourceRoot":"","sources":["../../src/transport/macos.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,21 @@ export interface SnapshotOpts {
|
|
|
28
28
|
export declare class CameraBusyError extends Error {
|
|
29
29
|
constructor(message?: string);
|
|
30
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* OBSBOT_LIVE_POSE override for the live-pose behaviours (pose settling before
|
|
33
|
+
* composition in mcp/tools.ts, and the Linux closed-loop move retry in
|
|
34
|
+
* transport/linux.ts). TRI-STATE: `1/true/yes/on` forces them on, `0/false/no/off`
|
|
35
|
+
* forces them off, unset (or empty) means "decide automatically". Returns the
|
|
36
|
+
* forced boolean, or undefined to defer to a transport's own detection.
|
|
37
|
+
*
|
|
38
|
+
* Automatic detection is per-transport: see ObsbotTransport.livePoseReads. On
|
|
39
|
+
* Linux it is a read-latency probe (transport/linux.ts) that measures whether the
|
|
40
|
+
* driver serves pan/tilt from cache or re-queries the device — mechanism-agnostic
|
|
41
|
+
* and immune to the kernel-version/backport traps a uname gate walks into.
|
|
42
|
+
*/
|
|
43
|
+
export declare const livePoseOverride: () => boolean | undefined;
|
|
44
|
+
/** Back-compat: the plain on/off reading of the override (unset => off). */
|
|
45
|
+
export declare const livePoseEnabled: () => boolean;
|
|
31
46
|
export interface ObsbotTransport {
|
|
32
47
|
sendVendor(frame: Buffer): Promise<void>;
|
|
33
48
|
/**
|
|
@@ -64,6 +79,13 @@ export interface ObsbotTransport {
|
|
|
64
79
|
value: number;
|
|
65
80
|
flags: number;
|
|
66
81
|
}>;
|
|
82
|
+
/**
|
|
83
|
+
* Whether pan/tilt reads report LIVE device position (vs a cached setpoint),
|
|
84
|
+
* which decides whether the pose-settle and closed-loop move-retry behaviours
|
|
85
|
+
* run. OBSBOT_LIVE_POSE overrides; otherwise the transport decides (Linux
|
|
86
|
+
* probes read latency, macOS/Windows default off). Cached after first call.
|
|
87
|
+
*/
|
|
88
|
+
livePoseReads(): Promise<boolean>;
|
|
67
89
|
/** IAMVideoProcAmp::Set(property, value, flags) — used for white balance. */
|
|
68
90
|
procAmpSet(property: number, value: number, flags: number): Promise<void>;
|
|
69
91
|
/** IAMVideoProcAmp::GetRange(property) → device-unit min/max. */
|
|
@@ -5,4 +5,24 @@ export class CameraBusyError extends Error {
|
|
|
5
5
|
this.name = "CameraBusyError";
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* OBSBOT_LIVE_POSE override for the live-pose behaviours (pose settling before
|
|
10
|
+
* composition in mcp/tools.ts, and the Linux closed-loop move retry in
|
|
11
|
+
* transport/linux.ts). TRI-STATE: `1/true/yes/on` forces them on, `0/false/no/off`
|
|
12
|
+
* forces them off, unset (or empty) means "decide automatically". Returns the
|
|
13
|
+
* forced boolean, or undefined to defer to a transport's own detection.
|
|
14
|
+
*
|
|
15
|
+
* Automatic detection is per-transport: see ObsbotTransport.livePoseReads. On
|
|
16
|
+
* Linux it is a read-latency probe (transport/linux.ts) that measures whether the
|
|
17
|
+
* driver serves pan/tilt from cache or re-queries the device — mechanism-agnostic
|
|
18
|
+
* and immune to the kernel-version/backport traps a uname gate walks into.
|
|
19
|
+
*/
|
|
20
|
+
export const livePoseOverride = () => {
|
|
21
|
+
const v = process.env.OBSBOT_LIVE_POSE;
|
|
22
|
+
if (v === undefined || v === "")
|
|
23
|
+
return undefined;
|
|
24
|
+
return /^(1|true|yes|on)$/i.test(v);
|
|
25
|
+
};
|
|
26
|
+
/** Back-compat: the plain on/off reading of the override (unset => off). */
|
|
27
|
+
export const livePoseEnabled = () => livePoseOverride() === true;
|
|
8
28
|
//# sourceMappingURL=transport.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/transport/transport.ts"],"names":[],"mappings":"AA4BA,8EAA8E;AAC9E,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,YAAY,OAAO,GAAG,sCAAsC;QAC1D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/transport/transport.ts"],"names":[],"mappings":"AA4BA,8EAA8E;AAC9E,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,YAAY,OAAO,GAAG,sCAAsC;QAC1D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAwB,EAAE;IACxD,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACvC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAClD,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC;AAEF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,eAAe,GAAG,GAAY,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,CAAC"}
|
|
@@ -24,6 +24,12 @@ export declare class WindowsTransport implements ObsbotTransport {
|
|
|
24
24
|
value: number;
|
|
25
25
|
flags: number;
|
|
26
26
|
}>;
|
|
27
|
+
/**
|
|
28
|
+
* Windows drives the gimbal with vendor frames and does not have the uvcvideo
|
|
29
|
+
* cached-read hazard; the settle/retry paths are Linux/macOS concerns. Honour
|
|
30
|
+
* the override for parity, default off.
|
|
31
|
+
*/
|
|
32
|
+
livePoseReads(): Promise<boolean>;
|
|
27
33
|
procAmpSet(property: number, value: number, flags: number): Promise<void>;
|
|
28
34
|
procAmpRange(property: number): Promise<{
|
|
29
35
|
min: number;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { livePoseOverride } from "./transport.js";
|
|
1
2
|
import { encodeRecenter, encodePtzMoveAngle, encodePtzMoveSpeed } from "../codec/commands.js";
|
|
2
3
|
import { readSerialVia } from "./read-serial.js";
|
|
3
4
|
const VENDOR_XU_SELECTOR = 0x02;
|
|
@@ -60,6 +61,14 @@ export class WindowsTransport {
|
|
|
60
61
|
async camCtrlGet(property) {
|
|
61
62
|
return this.helper.camCtrlGet(property);
|
|
62
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Windows drives the gimbal with vendor frames and does not have the uvcvideo
|
|
66
|
+
* cached-read hazard; the settle/retry paths are Linux/macOS concerns. Honour
|
|
67
|
+
* the override for parity, default off.
|
|
68
|
+
*/
|
|
69
|
+
async livePoseReads() {
|
|
70
|
+
return livePoseOverride() === true;
|
|
71
|
+
}
|
|
63
72
|
async procAmpSet(property, value, flags) {
|
|
64
73
|
await this.helper.procAmpSet(property, value, flags);
|
|
65
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows.js","sourceRoot":"","sources":["../../src/transport/windows.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"windows.js","sourceRoot":"","sources":["../../src/transport/windows.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "0.
|
|
1
|
+
export declare const VERSION = "0.7.0";
|
package/dist/version.js
CHANGED
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
//
|
|
7
7
|
// This exists because tsconfig sets rootDir: "src", so importing ../package.json
|
|
8
8
|
// would pull the repo root into the compilation and change the dist/ layout.
|
|
9
|
-
export const VERSION = "0.
|
|
9
|
+
export const VERSION = "0.7.0";
|
|
10
10
|
//# sourceMappingURL=version.js.map
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|