Generic telemetry
This commit is contained in:
@@ -139,6 +139,8 @@ The input edge writes CPU frames into `InputFrameMailbox`. The current DeckLink
|
||||
|
||||
The output edge consumes completed system-memory frames from `SystemFrameExchange`. The current DeckLink backend schedules those frames to DeckLink. If video output is unavailable, the app continues running render cadence, control, preview, telemetry, and logging.
|
||||
|
||||
Runtime state exposes backend-neutral output telemetry through `videoOutput`. Portable fields such as `enabled`, `backend`, and `scheduleFailures` stay at that level; backend-specific counters live under `videoOutput.backendMetrics`.
|
||||
|
||||
`PreviewWindowThread` is optional and uses a non-consuming system-memory tap. It paints with Win32/GDI on its own thread and skips preview ticks instead of blocking the frame exchange.
|
||||
|
||||
Screenshot routes are present in the UI/OpenAPI surface but are not implemented in the current native command path yet.
|
||||
|
||||
@@ -520,6 +520,8 @@ components:
|
||||
$ref: "#/components/schemas/RuntimeStatus"
|
||||
video:
|
||||
$ref: "#/components/schemas/VideoStatus"
|
||||
videoOutput:
|
||||
$ref: "#/components/schemas/VideoOutputStatus"
|
||||
decklink:
|
||||
$ref: "#/components/schemas/DeckLinkStatus"
|
||||
videoIO:
|
||||
@@ -561,6 +563,12 @@ components:
|
||||
type: number
|
||||
enableExternalKeying:
|
||||
type: boolean
|
||||
videoInputBackend:
|
||||
type: string
|
||||
enum: [decklink, none]
|
||||
videoOutputBackend:
|
||||
type: string
|
||||
enum: [decklink, none]
|
||||
inputVideoFormat:
|
||||
type: string
|
||||
inputFrameRate:
|
||||
@@ -589,6 +597,52 @@ components:
|
||||
type: number
|
||||
modeName:
|
||||
type: string
|
||||
VideoOutputStatus:
|
||||
type: object
|
||||
description: Backend-neutral output telemetry. Backend-specific counters live under `backendMetrics`.
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
backend:
|
||||
type: string
|
||||
example: decklink
|
||||
statusMessage:
|
||||
type: string
|
||||
scheduleFailures:
|
||||
type: number
|
||||
completions:
|
||||
type: number
|
||||
late:
|
||||
type: number
|
||||
dropped:
|
||||
type: number
|
||||
backendMetrics:
|
||||
$ref: "#/components/schemas/VideoOutputBackendMetrics"
|
||||
VideoOutputBackendMetrics:
|
||||
type: object
|
||||
description: Backend-specific output metrics. For `decklink`, this contains DeckLink schedule and buffer telemetry.
|
||||
additionalProperties: true
|
||||
properties:
|
||||
bufferedAvailable:
|
||||
type: boolean
|
||||
buffered:
|
||||
type: number
|
||||
nullable: true
|
||||
scheduleCallMs:
|
||||
type: number
|
||||
scheduleLeadAvailable:
|
||||
type: boolean
|
||||
scheduleLeadFrames:
|
||||
type: number
|
||||
nullable: true
|
||||
playbackFrameIndex:
|
||||
type: number
|
||||
nextScheduleFrameIndex:
|
||||
type: number
|
||||
playbackStreamTime:
|
||||
type: number
|
||||
scheduleRealignments:
|
||||
type: number
|
||||
DeckLinkStatus:
|
||||
type: object
|
||||
deprecated: true
|
||||
|
||||
Reference in New Issue
Block a user