Add native self-hosted instance connection to fluxer_desktop

Trimmed monorepo checkout (fluxer_desktop + packages/voice_engine_v2 +
tools/ci) with a "Connect to a Different Server" menu item and popout
that lets the desktop app switch to any self-hosted Fluxer instance,
plus fixes for well-known discovery on single-domain self-hosted
deployments and a false-positive ERR_ABORTED on same-origin client
redirects during the switch. Defaults to chat.fluxr.chat and uses an
isolated userData directory from the official build.
This commit is contained in:
2026-07-01 18:22:43 -04:00
commit 682afacd30
1763 changed files with 613720 additions and 0 deletions
@@ -0,0 +1,391 @@
{
"status": "fail",
"startedAt": "2026-06-05T21:57:48.945Z",
"endedAt": "2026-06-05T21:58:12.868Z",
"platform": "win32",
"arch": "x64",
"config": {
"url": "ws://100.79.83.54:17880",
"serverApiUrl": "http://100.79.83.54:17880",
"apiKey": "devkey",
"room": "fluxer-webrtc-harness-1272-581b0bd8-4044-45a9-bb0d-695ca988d59c",
"externalTokens": false,
"publisherIdentity": "fluxer-native-publisher-1272",
"secondaryPublisherIdentity": "fluxer-native-publisher-2-1272",
"subscriberIdentity": "fluxer-native-subscriber-1272",
"required": true,
"strict": true,
"timeoutMs": 30000,
"connectTimeoutMs": 30000,
"disconnectTimeoutMs": 10000,
"probeTimeoutMs": 1500,
"durationMs": 20000,
"width": 1280,
"height": 720,
"expectedWidth": 1280,
"expectedHeight": 720,
"fps": 30,
"minFpsRatio": 0.95,
"maxFrameGapMs": 250,
"maxAudioFrameGapMs": 250,
"maxAvDriftMs": 80,
"maxPacketLoss": null,
"requireStableResolution": true,
"videoPattern": "gradient",
"videoInput": "bgra",
"subscriberVideoQuality": "high",
"screenCodecs": ["h264"],
"expectedScreenCodecs": ["h264"],
"codec": "h264",
"expectedScreenCodec": "video/H264",
"secondaryPublisher": false,
"secondaryPublisherCodec": "h264",
"secondaryPublisherCodecExplicit": false,
"expectedSecondaryPublisherCodec": "video/H264",
"expectedSecondaryPublisherCodecExplicit": false,
"screenSimulcast": false,
"secondaryPublisherScreenSimulcast": false,
"adaptiveSend": true,
"minVideoFps": 15,
"minResolutionScale": 0.5,
"maxAudioBufferMs": 750,
"secondaryPublisherMicrophone": true,
"secondaryPublisherScreenAudio": true,
"maxBitrateBps": 5000000,
"sampleRate": 48000,
"channels": 1,
"audioChunkMs": 20,
"microphone": true,
"screenAudio": true,
"dataPacket": true,
"subscriptionCycle": true,
"validateServerPublishing": true,
"camera": false,
"cameraDeviceId": null,
"expectedCameraCodec": null,
"expectedHardwareEncoder": null,
"reportPath": "C:\\f\\fluxer_desktop\\native\\webrtc-sender\\native-media-reports\\windows-mx450-livekit-h264-single-egress-adaptive-20260605.json",
"verbose": false,
"scenarioName": "codec-h264",
"apiSecret": "<redacted>",
"e2eeKey": null,
"publisherToken": null,
"secondaryPublisherToken": null,
"subscriberToken": null
},
"checks": [
{
"name": "publisher connected",
"pass": true
},
{
"name": "subscriber connected",
"pass": true
},
{
"name": "publisher local screenshare publication",
"pass": true
},
{
"name": "subscriber remote screenshare subscription",
"pass": true
},
{
"name": "subscriber inbound video frames >= 3",
"pass": true
},
{
"name": "subscriber video frame callback",
"pass": true
},
{
"name": "publisher outbound screenshare stats",
"pass": true
},
{
"name": "subscriber inbound video stats",
"pass": true
},
{
"name": "subscriber inbound video stats count >= 1",
"pass": true
},
{
"name": "subscriber video resolution 1280x720",
"pass": true
},
{
"name": "subscriber aggregate inbound audio frames >= 6",
"pass": true
},
{
"name": "subscriber inbound audio stats count >= 2",
"pass": true
},
{
"name": "publisher local microphone publication",
"pass": true
},
{
"name": "subscriber remote microphone subscription",
"pass": true
},
{
"name": "subscriber inbound audio frames >= 6",
"pass": true
},
{
"name": "publisher outbound microphone stats",
"pass": true
},
{
"name": "subscriber inbound audio stats",
"pass": true
},
{
"name": "publisher local screen-share audio publication",
"pass": true
},
{
"name": "subscriber remote screen-share audio subscription",
"pass": true
},
{
"name": "publisher outbound screen-share audio stats",
"pass": true
},
{
"name": "subscriber data packet received",
"pass": true
},
{
"name": "publisher outbound screenshare codec video/H264",
"pass": true
},
{
"name": "subscriber inbound video codec video/H264",
"pass": true
},
{
"name": "server publishing API participants listed",
"pass": true
},
{
"name": "server sees publisher screenshare publication",
"pass": true
},
{
"name": "server sees publisher microphone publication",
"pass": true
},
{
"name": "server sees publisher screen-share audio publication",
"pass": true
}
],
"skippedReason": null,
"error": "received FPS 6.59 below 28.5; max video frame gap 552ms exceeds 250ms",
"hardwareEncoder": {
"available": false,
"backend": "none",
"compiled": true,
"runtime": false,
"codecs": [],
"zeroCopy": false,
"nativeInputs": [],
"reason": "no_supported_devices",
"detail": "missing NVENC encode session (checked 1 CUDA device; last status NV_ENC_ERR_UNSUPPORTED_DEVICE (2))"
},
"metrics": {
"inboundAudioFrames": 4315,
"inboundVideoFrames": 136,
"strictAudioFrames": 199,
"strictVideoFrames": 132,
"videoCallbacks": 135,
"videoBytes": 186624000,
"receivedFps": 6.59,
"requiredFps": 28.5,
"maxVideoFrameGapMs": 552,
"maxAudioFrameGapMs": 112,
"maxVideoFrameGapOverallMs": 557,
"maxAudioFrameGapOverallMs": 112,
"avDriftMs": 22,
"maxObservedPacketLoss": 0,
"maxObservedPacketLossDelta": 0,
"videoResolutionCounts": {
"1280x720": 132
},
"videoResolutionMismatchCount": 0,
"droppedVideoFrameCallbacks": 0,
"publisherVideoPump": {
"input": "bgra",
"pattern": "gradient",
"targetFps": 30,
"startedAtMs": 1780696671200,
"stoppedAtMs": null,
"framesPushed": 650,
"framesRejected": 0,
"errors": 0,
"maxPushGapMs": 64,
"lastPushAtMs": 1780696692841,
"elapsedMs": 21772,
"producedFps": 29.85
},
"secondaryPublisherVideoPump": null,
"serverPublishing": {
"fetchedAtMs": 1780696672853,
"error": null,
"participants": [
{
"identity": "fluxer-native-publisher-1272",
"trackCount": 3,
"tracks": [
{
"sid": "TR_AM3TQzwbFTcoXT",
"name": "mic",
"kind": "audio",
"source": "microphone",
"mimeType": "audio/red",
"muted": false
},
{
"sid": "TR_AsW4JLnmWG6cce",
"name": "screen-audio",
"kind": "audio",
"source": "screenshareAudio",
"mimeType": "audio/red",
"muted": false
},
{
"sid": "TR_VSxrpLn4EJfUEg",
"name": "screen",
"kind": "video",
"source": "screenshare",
"mimeType": "video/H264",
"muted": false
}
]
},
{
"identity": "fluxer-native-subscriber-1272",
"trackCount": 0,
"tracks": []
}
]
},
"lastVideoMeta": {
"participantSid": "PA_7EoucgabpBG8",
"trackSid": "TR_VSxrpLn4EJfUEg",
"width": 1280,
"height": 720,
"timestampUs": 3306206000
},
"publisherStats": {
"rttMs": 15,
"outbound": [
{
"trackSid": "TR_AM3TQzwbFTcoXT",
"source": "microphone",
"kind": "audio",
"bitrateKbps": 95.3,
"packetsLost": 0,
"codec": "audio/opus"
},
{
"trackSid": "TR_VSxrpLn4EJfUEg",
"source": "screenshare",
"kind": "video",
"bitrateKbps": 5106.2,
"packetsLost": 0,
"fps": 11,
"codec": "video/H264"
},
{
"trackSid": "TR_AsW4JLnmWG6cce",
"source": "screenshareAudio",
"kind": "audio",
"bitrateKbps": 300.6,
"packetsLost": 0,
"codec": "audio/opus"
}
],
"inbound": [],
"send": {
"outgoingVideoQueueDepth": 1,
"outgoingVideoFramesProduced": 627,
"outgoingVideoFramesAccepted": 627,
"outgoingVideoFramesDropped": 262,
"outgoingVideoFramesCoalesced": 262,
"outgoingVideoFramesCaptured": 364,
"outgoingVideoCaptureFailures": 0,
"outgoingVideoEffectiveFps": 17.42,
"outgoingVideoTargetFps": 15,
"outgoingVideoMaxQueueAgeMs": 35,
"outgoingVideoMaxPushLatencyMs": 42,
"outgoingAudioBufferTargetMs": 200,
"outgoingAudioBufferMaxMs": 750,
"outgoingAudioUnderruns": 0,
"outgoingAudioRebuffers": 0,
"outgoingAudioMaxFrameGapMs": 63,
"adaptiveSendTier": "fps15",
"adaptiveSendReason": "encoderEgressPressure"
}
},
"secondaryPublisherStats": null,
"subscriberStats": {
"rttMs": 18,
"outbound": [],
"inbound": [
{
"participantSid": "PA_7EoucgabpBG8",
"trackSid": "TR_AsW4JLnmWG6cce",
"kind": "audio",
"bitrateKbps": 296.3,
"packetsLost": 0,
"jitterMs": 6,
"audioLevel": 0.336,
"codec": "audio/opus"
},
{
"participantSid": "PA_7EoucgabpBG8",
"trackSid": "TR_AM3TQzwbFTcoXT",
"kind": "audio",
"bitrateKbps": 97.1,
"packetsLost": 0,
"jitterMs": 7,
"audioLevel": 0.326,
"codec": "audio/opus"
},
{
"participantSid": "PA_7EoucgabpBG8",
"trackSid": "TR_VSxrpLn4EJfUEg",
"kind": "video",
"bitrateKbps": 5397.8,
"packetsLost": 0,
"jitterMs": 48,
"codec": "video/H264"
}
],
"send": {
"outgoingVideoQueueDepth": 0,
"outgoingVideoFramesProduced": 0,
"outgoingVideoFramesAccepted": 0,
"outgoingVideoFramesDropped": 0,
"outgoingVideoFramesCoalesced": 0,
"outgoingVideoFramesCaptured": 0,
"outgoingVideoCaptureFailures": 0,
"outgoingVideoEffectiveFps": 0,
"outgoingVideoTargetFps": 0,
"outgoingVideoMaxQueueAgeMs": 0,
"outgoingVideoMaxPushLatencyMs": 0,
"outgoingAudioBufferTargetMs": 200,
"outgoingAudioBufferMaxMs": 750,
"outgoingAudioUnderruns": 0,
"outgoingAudioRebuffers": 0,
"outgoingAudioMaxFrameGapMs": 0,
"adaptiveSendTier": "idle",
"adaptiveSendReason": "notPublishing"
}
}
}
}
@@ -0,0 +1,246 @@
{
"status": "fail",
"startedAt": "2026-06-05T22:00:49.164Z",
"endedAt": "2026-06-05T22:00:50.336Z",
"platform": "win32",
"arch": "x64",
"config": {
"url": "ws://100.79.83.54:17880",
"serverApiUrl": "http://100.79.83.54:17880",
"apiKey": "devkey",
"room": "fluxer-webrtc-harness-3456-3aa0da22-e543-4846-a980-1ef479694d1f",
"externalTokens": false,
"publisherIdentity": "fluxer-native-publisher-3456",
"secondaryPublisherIdentity": "fluxer-native-publisher-2-3456",
"subscriberIdentity": "fluxer-native-subscriber-3456",
"required": true,
"strict": false,
"timeoutMs": 30000,
"connectTimeoutMs": 30000,
"disconnectTimeoutMs": 10000,
"probeTimeoutMs": 1500,
"durationMs": 0,
"width": 640,
"height": 360,
"expectedWidth": 640,
"expectedHeight": 360,
"fps": 15,
"minFpsRatio": 0,
"maxFrameGapMs": 0,
"maxAudioFrameGapMs": 0,
"maxAvDriftMs": 0,
"maxPacketLoss": null,
"requireStableResolution": false,
"videoPattern": "gradient",
"videoInput": "bgra",
"subscriberVideoQuality": null,
"screenCodecs": ["hevc"],
"expectedScreenCodecs": ["hevc"],
"codec": "hevc",
"expectedScreenCodec": "video/H265",
"secondaryPublisher": false,
"secondaryPublisherCodec": "hevc",
"secondaryPublisherCodecExplicit": false,
"expectedSecondaryPublisherCodec": "video/H265",
"expectedSecondaryPublisherCodecExplicit": false,
"screenSimulcast": true,
"secondaryPublisherScreenSimulcast": true,
"adaptiveSend": true,
"minVideoFps": 15,
"minResolutionScale": 0.5,
"maxAudioBufferMs": 750,
"secondaryPublisherMicrophone": true,
"secondaryPublisherScreenAudio": false,
"maxBitrateBps": 400000,
"sampleRate": 48000,
"channels": 1,
"audioChunkMs": 20,
"microphone": true,
"screenAudio": false,
"dataPacket": false,
"subscriptionCycle": false,
"validateServerPublishing": false,
"camera": false,
"cameraDeviceId": null,
"expectedCameraCodec": null,
"expectedHardwareEncoder": null,
"reportPath": "C:\\f\\fluxer_desktop\\native\\webrtc-sender\\native-media-reports\\windows-mx450-livekit-hevc-failfast-20260605.json",
"verbose": false,
"scenarioName": "codec-hevc",
"apiSecret": "<redacted>",
"e2eeKey": null,
"publisherToken": null,
"secondaryPublisherToken": null,
"subscriberToken": null
},
"checks": [
{
"name": "publisher connected",
"pass": true
},
{
"name": "subscriber connected",
"pass": true
},
{
"name": "publisher local screenshare publication",
"pass": false
},
{
"name": "subscriber remote screenshare subscription",
"pass": false
},
{
"name": "subscriber inbound video frames >= 3",
"pass": false
},
{
"name": "subscriber video frame callback",
"pass": false
},
{
"name": "publisher outbound screenshare stats",
"pass": false
},
{
"name": "subscriber inbound video stats",
"pass": false
},
{
"name": "subscriber inbound video stats count >= 1",
"pass": false
},
{
"name": "subscriber video resolution 640x360",
"pass": false
},
{
"name": "subscriber aggregate inbound audio frames >= 3",
"pass": false
},
{
"name": "subscriber inbound audio stats count >= 1",
"pass": false
},
{
"name": "publisher local microphone publication",
"pass": false
},
{
"name": "subscriber remote microphone subscription",
"pass": false
},
{
"name": "subscriber inbound audio frames >= 3",
"pass": false
},
{
"name": "publisher outbound microphone stats",
"pass": false
},
{
"name": "subscriber inbound audio stats",
"pass": false
},
{
"name": "publisher outbound screenshare codec video/H265",
"pass": false
},
{
"name": "subscriber inbound video codec video/H265",
"pass": false
}
],
"skippedReason": null,
"error": "Error: H.265 publishing requires hardware encoder support; missing NVENC encode session (checked 1 CUDA device; last status NV_ENC_ERR_UNSUPPORTED_DEVICE (2))",
"hardwareEncoder": {
"available": false,
"backend": "none",
"compiled": true,
"runtime": false,
"codecs": [],
"zeroCopy": false,
"nativeInputs": [],
"reason": "no_supported_devices",
"detail": "missing NVENC encode session (checked 1 CUDA device; last status NV_ENC_ERR_UNSUPPORTED_DEVICE (2))"
},
"metrics": {
"inboundAudioFrames": 0,
"inboundVideoFrames": 0,
"strictAudioFrames": 0,
"strictVideoFrames": 0,
"videoCallbacks": 0,
"videoBytes": 0,
"receivedFps": 0,
"requiredFps": null,
"maxVideoFrameGapMs": 0,
"maxAudioFrameGapMs": 0,
"maxVideoFrameGapOverallMs": 0,
"maxAudioFrameGapOverallMs": 0,
"avDriftMs": null,
"maxObservedPacketLoss": 0,
"maxObservedPacketLossDelta": 0,
"videoResolutionCounts": {},
"videoResolutionMismatchCount": 0,
"droppedVideoFrameCallbacks": 0,
"publisherVideoPump": null,
"secondaryPublisherVideoPump": null,
"serverPublishing": {
"fetchedAtMs": null,
"error": null,
"participants": []
},
"lastVideoMeta": null,
"publisherStats": {
"rttMs": null,
"outbound": [],
"inbound": [],
"send": {
"outgoingVideoQueueDepth": 0,
"outgoingVideoFramesProduced": 0,
"outgoingVideoFramesAccepted": 0,
"outgoingVideoFramesDropped": 0,
"outgoingVideoFramesCoalesced": 0,
"outgoingVideoFramesCaptured": 0,
"outgoingVideoCaptureFailures": 0,
"outgoingVideoEffectiveFps": 0,
"outgoingVideoTargetFps": 0,
"outgoingVideoMaxQueueAgeMs": 0,
"outgoingVideoMaxPushLatencyMs": 0,
"outgoingAudioBufferTargetMs": 200,
"outgoingAudioBufferMaxMs": 750,
"outgoingAudioUnderruns": 0,
"outgoingAudioRebuffers": 0,
"outgoingAudioMaxFrameGapMs": 0,
"adaptiveSendTier": "idle",
"adaptiveSendReason": "notPublishing"
}
},
"secondaryPublisherStats": null,
"subscriberStats": {
"rttMs": null,
"outbound": [],
"inbound": [],
"send": {
"outgoingVideoQueueDepth": 0,
"outgoingVideoFramesProduced": 0,
"outgoingVideoFramesAccepted": 0,
"outgoingVideoFramesDropped": 0,
"outgoingVideoFramesCoalesced": 0,
"outgoingVideoFramesCaptured": 0,
"outgoingVideoCaptureFailures": 0,
"outgoingVideoEffectiveFps": 0,
"outgoingVideoTargetFps": 0,
"outgoingVideoMaxQueueAgeMs": 0,
"outgoingVideoMaxPushLatencyMs": 0,
"outgoingAudioBufferTargetMs": 200,
"outgoingAudioBufferMaxMs": 750,
"outgoingAudioUnderruns": 0,
"outgoingAudioRebuffers": 0,
"outgoingAudioMaxFrameGapMs": 0,
"adaptiveSendTier": "idle",
"adaptiveSendReason": "notPublishing"
}
}
}
}
@@ -0,0 +1,391 @@
{
"status": "pass",
"startedAt": "2026-06-05T22:00:19.291Z",
"endedAt": "2026-06-05T22:00:37.423Z",
"platform": "win32",
"arch": "x64",
"config": {
"url": "ws://100.79.83.54:17880",
"serverApiUrl": "http://100.79.83.54:17880",
"apiKey": "devkey",
"room": "fluxer-webrtc-harness-6872-db238db9-c867-4b03-8af9-9740942a674c",
"externalTokens": false,
"publisherIdentity": "fluxer-native-publisher-6872",
"secondaryPublisherIdentity": "fluxer-native-publisher-2-6872",
"subscriberIdentity": "fluxer-native-subscriber-6872",
"required": true,
"strict": true,
"timeoutMs": 30000,
"connectTimeoutMs": 30000,
"disconnectTimeoutMs": 10000,
"probeTimeoutMs": 1500,
"durationMs": 15000,
"width": 640,
"height": 360,
"expectedWidth": 640,
"expectedHeight": 360,
"fps": 15,
"minFpsRatio": 0.95,
"maxFrameGapMs": 250,
"maxAudioFrameGapMs": 250,
"maxAvDriftMs": 150,
"maxPacketLoss": null,
"requireStableResolution": true,
"videoPattern": "gradient",
"videoInput": "bgra",
"subscriberVideoQuality": "high",
"screenCodecs": ["vp8"],
"expectedScreenCodecs": ["vp8"],
"codec": "vp8",
"expectedScreenCodec": "video/VP8",
"secondaryPublisher": false,
"secondaryPublisherCodec": "vp8",
"secondaryPublisherCodecExplicit": false,
"expectedSecondaryPublisherCodec": "video/VP8",
"expectedSecondaryPublisherCodecExplicit": false,
"screenSimulcast": false,
"secondaryPublisherScreenSimulcast": false,
"adaptiveSend": true,
"minVideoFps": 15,
"minResolutionScale": 0.5,
"maxAudioBufferMs": 750,
"secondaryPublisherMicrophone": true,
"secondaryPublisherScreenAudio": true,
"maxBitrateBps": 1200000,
"sampleRate": 48000,
"channels": 1,
"audioChunkMs": 20,
"microphone": true,
"screenAudio": true,
"dataPacket": true,
"subscriptionCycle": true,
"validateServerPublishing": true,
"camera": false,
"cameraDeviceId": null,
"expectedCameraCodec": null,
"expectedHardwareEncoder": null,
"reportPath": "C:\\f\\fluxer_desktop\\native\\webrtc-sender\\native-media-reports\\windows-mx450-livekit-vp8-360p15-strict-av150-20260605.json",
"verbose": false,
"scenarioName": "codec-vp8",
"apiSecret": "<redacted>",
"e2eeKey": null,
"publisherToken": null,
"secondaryPublisherToken": null,
"subscriberToken": null
},
"checks": [
{
"name": "publisher connected",
"pass": true
},
{
"name": "subscriber connected",
"pass": true
},
{
"name": "publisher local screenshare publication",
"pass": true
},
{
"name": "subscriber remote screenshare subscription",
"pass": true
},
{
"name": "subscriber inbound video frames >= 3",
"pass": true
},
{
"name": "subscriber video frame callback",
"pass": true
},
{
"name": "publisher outbound screenshare stats",
"pass": true
},
{
"name": "subscriber inbound video stats",
"pass": true
},
{
"name": "subscriber inbound video stats count >= 1",
"pass": true
},
{
"name": "subscriber video resolution 640x360",
"pass": true
},
{
"name": "subscriber aggregate inbound audio frames >= 6",
"pass": true
},
{
"name": "subscriber inbound audio stats count >= 2",
"pass": true
},
{
"name": "publisher local microphone publication",
"pass": true
},
{
"name": "subscriber remote microphone subscription",
"pass": true
},
{
"name": "subscriber inbound audio frames >= 6",
"pass": true
},
{
"name": "publisher outbound microphone stats",
"pass": true
},
{
"name": "subscriber inbound audio stats",
"pass": true
},
{
"name": "publisher local screen-share audio publication",
"pass": true
},
{
"name": "subscriber remote screen-share audio subscription",
"pass": true
},
{
"name": "publisher outbound screen-share audio stats",
"pass": true
},
{
"name": "subscriber data packet received",
"pass": true
},
{
"name": "publisher outbound screenshare codec video/VP8",
"pass": true
},
{
"name": "subscriber inbound video codec video/VP8",
"pass": true
},
{
"name": "server publishing API participants listed",
"pass": true
},
{
"name": "server sees publisher screenshare publication",
"pass": true
},
{
"name": "server sees publisher microphone publication",
"pass": true
},
{
"name": "server sees publisher screen-share audio publication",
"pass": true
}
],
"skippedReason": null,
"error": null,
"hardwareEncoder": {
"available": false,
"backend": "none",
"compiled": true,
"runtime": false,
"codecs": [],
"zeroCopy": false,
"nativeInputs": [],
"reason": "no_supported_devices",
"detail": "missing NVENC encode session (checked 1 CUDA device; last status NV_ENC_ERR_UNSUPPORTED_DEVICE (2))"
},
"metrics": {
"inboundAudioFrames": 3201,
"inboundVideoFrames": 236,
"strictAudioFrames": 150,
"strictVideoFrames": 221,
"videoCallbacks": 235,
"videoBytes": 81216000,
"receivedFps": 14.71,
"requiredFps": 14.25,
"maxVideoFrameGapMs": 135,
"maxAudioFrameGapMs": 104,
"maxVideoFrameGapOverallMs": 135,
"maxAudioFrameGapOverallMs": 104,
"avDriftMs": 15,
"maxObservedPacketLoss": 0,
"maxObservedPacketLossDelta": 0,
"videoResolutionCounts": {
"640x360": 221
},
"videoResolutionMismatchCount": 0,
"droppedVideoFrameCallbacks": 0,
"publisherVideoPump": {
"input": "bgra",
"pattern": "gradient",
"targetFps": 15,
"startedAtMs": 1780696821343,
"stoppedAtMs": null,
"framesPushed": 242,
"framesRejected": 0,
"errors": 0,
"maxPushGapMs": 81,
"lastPushAtMs": 1780696837414,
"elapsedMs": 16181,
"producedFps": 14.96
},
"secondaryPublisherVideoPump": null,
"serverPublishing": {
"fetchedAtMs": 1780696822415,
"error": null,
"participants": [
{
"identity": "fluxer-native-publisher-6872",
"trackCount": 3,
"tracks": [
{
"sid": "TR_AMZncs3mMUV8XL",
"name": "mic",
"kind": "audio",
"source": "microphone",
"mimeType": "audio/red",
"muted": false
},
{
"sid": "TR_As8q693K2N6RV2",
"name": "screen-audio",
"kind": "audio",
"source": "screenshareAudio",
"mimeType": "audio/red",
"muted": false
},
{
"sid": "TR_VScEzJLWokWJcx",
"name": "screen",
"kind": "video",
"source": "screenshare",
"mimeType": "video/VP8",
"muted": false
}
]
},
{
"identity": "fluxer-native-subscriber-6872",
"trackCount": 0,
"tracks": []
}
]
},
"lastVideoMeta": {
"participantSid": "PA_EeCfpcRvJPEF",
"trackSid": "TR_VScEzJLWokWJcx",
"width": 640,
"height": 360,
"timestampUs": 3450776000
},
"publisherStats": {
"rttMs": 4,
"outbound": [
{
"trackSid": "TR_As8q693K2N6RV2",
"source": "screenshareAudio",
"kind": "audio",
"bitrateKbps": 263.5,
"packetsLost": 0,
"codec": "audio/opus"
},
{
"trackSid": "TR_VScEzJLWokWJcx",
"source": "screenshare",
"kind": "video",
"bitrateKbps": 1233.4,
"packetsLost": 0,
"fps": 15,
"codec": "video/VP8"
},
{
"trackSid": "TR_AMZncs3mMUV8XL",
"source": "microphone",
"kind": "audio",
"bitrateKbps": 97.9,
"packetsLost": 0,
"codec": "audio/opus"
}
],
"inbound": [],
"send": {
"outgoingVideoQueueDepth": 1,
"outgoingVideoFramesProduced": 241,
"outgoingVideoFramesAccepted": 241,
"outgoingVideoFramesDropped": 4,
"outgoingVideoFramesCoalesced": 4,
"outgoingVideoFramesCaptured": 236,
"outgoingVideoCaptureFailures": 0,
"outgoingVideoEffectiveFps": 14.71,
"outgoingVideoTargetFps": 15,
"outgoingVideoMaxQueueAgeMs": 67,
"outgoingVideoMaxPushLatencyMs": 69,
"outgoingAudioBufferTargetMs": 200,
"outgoingAudioBufferMaxMs": 750,
"outgoingAudioUnderruns": 0,
"outgoingAudioRebuffers": 0,
"outgoingAudioMaxFrameGapMs": 36,
"adaptiveSendTier": "full",
"adaptiveSendReason": "stable"
}
},
"secondaryPublisherStats": null,
"subscriberStats": {
"rttMs": 4,
"outbound": [],
"inbound": [
{
"participantSid": "PA_EeCfpcRvJPEF",
"trackSid": "TR_As8q693K2N6RV2",
"kind": "audio",
"bitrateKbps": 263.1,
"packetsLost": 0,
"jitterMs": 3,
"audioLevel": 0.318,
"codec": "audio/opus"
},
{
"participantSid": "PA_EeCfpcRvJPEF",
"trackSid": "TR_AMZncs3mMUV8XL",
"kind": "audio",
"bitrateKbps": 97.8,
"packetsLost": 0,
"jitterMs": 2,
"audioLevel": 0.307,
"codec": "audio/opus"
},
{
"participantSid": "PA_EeCfpcRvJPEF",
"trackSid": "TR_VScEzJLWokWJcx",
"kind": "video",
"bitrateKbps": 1231.8,
"packetsLost": 0,
"jitterMs": 4,
"codec": "video/VP8"
}
],
"send": {
"outgoingVideoQueueDepth": 0,
"outgoingVideoFramesProduced": 0,
"outgoingVideoFramesAccepted": 0,
"outgoingVideoFramesDropped": 0,
"outgoingVideoFramesCoalesced": 0,
"outgoingVideoFramesCaptured": 0,
"outgoingVideoCaptureFailures": 0,
"outgoingVideoEffectiveFps": 0,
"outgoingVideoTargetFps": 0,
"outgoingVideoMaxQueueAgeMs": 0,
"outgoingVideoMaxPushLatencyMs": 0,
"outgoingAudioBufferTargetMs": 200,
"outgoingAudioBufferMaxMs": 750,
"outgoingAudioUnderruns": 0,
"outgoingAudioRebuffers": 0,
"outgoingAudioMaxFrameGapMs": 0,
"adaptiveSendTier": "idle",
"adaptiveSendReason": "notPublishing"
}
}
}
}