Commit Graph
732 Commits
Author SHA1 Message Date
evgeny d934978fb2 Translate desktop broadcast controls and capture diagnostics 2026-10-14 02:57:56 +02:00
evgeny ce461521e4 Defer source failures and end calls that cannot reserve audio capture 2026-10-14 02:56:36 +02:00
evgeny 50fad4ceff Preserve video color range and handle capture worker failures 2026-10-14 02:55:36 +02:00
evgeny ce46677dfb Keep voice recording from opening an already owned microphone 2026-10-14 02:54:30 +02:00
evgeny b3c698be25 Prevent radio capture from competing with a broadcast microphone 2026-10-14 02:54:20 +02:00
evgeny c1d7460254 Own publication independently of its window and reserve call capture 2026-10-14 02:54:19 +02:00
evgeny ab01c6dc48 Expose broadcast setup even when a channel has no live sources 2026-10-14 02:53:22 +02:00
evgeny c91bb2828f Keep raw preview and source permissions independent of video encoding 2026-10-14 02:52:36 +02:00
evgeny f96443e1a6 Add desktop broadcast controls and aggregate send indicators 2026-10-14 02:51:41 +02:00
evgeny 701a7d0eac Capture camera screen and stereo microphone for desktop publication 2026-10-14 02:49:12 +02:00
evgeny 0055b86b19 Encode low latency desktop video with codec specific keyframes 2026-10-14 02:44:59 +02:00
evgeny 77acdb2d65 Expose radio compressor settings to publication workers 2026-10-14 02:35:55 +02:00
evgeny 125f740a5f Use the shared publisher in Android and desktop stream bridges 2026-10-14 02:34:16 +02:00
evgeny 643420b644 Record codec and telemetry validation with precise decoder diagnostics 2026-10-14 02:11:59 +02:00
evgeny 49ca49fa1e Assemble partial codec setup and test real out of band decoder configuration 2026-10-14 02:01:44 +02:00
evgeny bf12bd5b05 Count only current viewer media against the preparation limit 2026-10-14 01:43:44 +02:00
evgeny a4e6683c5b Exercise modern codec playback and partial video queue telemetry 2026-10-14 01:32:40 +02:00
evgeny 305eacbe95 Verify all media codec IDs and key configuration bounds 2026-10-14 01:20:00 +02:00
evgeny 3e7197702b Decode all supported video formats from uAV2 on desktop 2026-10-14 01:14:38 +02:00
evgeny 2aafe172d6 Reject large audio timestamp jumps before narrowing PLC packet counts 2026-10-14 00:11:31 +02:00
evgeny c0c4310f08 Clarify desktop demand reader ownership and preparation bounds 2026-10-14 00:06:23 +02:00
evgeny be7c3c5811 Bound desktop decoder work and drain Android codec with monotonic EOS timestamps 2026-10-14 00:04:08 +02:00
evgeny 5937904b4a Test delayed readers without frontend queue growth and isolate codec fixtures 2026-10-13 23:41:10 +02:00
evgeny 98655284b2 Discard stale playback snapshots before reseeking a media cursor 2026-10-13 23:39:45 +02:00
evgeny 6743f84146 Verify stereo playback tempo, pitch and original media clock mapping 2026-10-13 23:35:13 +02:00
evgeny 3010fe25db Hold video only playback clocks on starvation and drain finished audio 2026-10-13 23:32:27 +02:00
evgeny a12665bbd1 Drive desktop ring playback from corrected history and physical audio time 2026-10-13 23:30:06 +02:00
evgeny 5c75487446 Continue bounded media assembly without waiting for new network data 2026-10-13 23:24:04 +02:00
evgeny 541518db81 Keep finished source data alive until delayed media readers close 2026-10-13 22:53:38 +02:00
evgeny 8d317dbb85 Keep viewer snapshots scoped and normalize Opus packet cadence 2026-10-13 22:45:07 +02:00
evgeny 650b65078a Switch desktop media delivery to bounded demand reads from the shared ring 2026-10-13 22:42:16 +02:00
evgeny 79701feef1 Drain startup audio on END and validate Opus fixture failures 2026-10-13 16:27:12 +02:00
evgeny f42b085e12 Align desktop audio startup with the first decoded video frame 2026-10-13 16:26:11 +02:00
evgeny 50005b108f Generate continuous stereo Opus in live playback regression 2026-10-13 14:39:08 +02:00
evgeny 214a98efb1 Play live stereo on desktop and verify channel separation 2026-10-13 14:17:26 +02:00
evgeny 736fb92ed7 Document live playback queue bounds and latency regression 2026-10-13 12:57:37 +02:00
evgeny ef67e3ed2c Preserve video frames until audio clock reaches their PTS 2026-10-13 12:55:56 +02:00
evgeny 1d984f0d0b Reproduce live video starvation behind audio output latency 2026-10-13 12:51:42 +02:00
evgeny 3a6dacf378 Add stream camera controls and preserve playback on changes 2026-10-13 01:00:53 +02:00
evgeny 29a8fb2531 Check source discovery requested before desktop startup 2026-10-12 22:31:28 +02:00
evgeny 061eb0f0f8 Preserve initial channel watches until desktop core attaches 2026-10-12 22:30:38 +02:00
evgeny e9982a2db6 Verify live Opus output and volume with real null audio devices 2026-10-12 22:26:41 +02:00
evgeny dd034a9d42 Cover channel closure and keep stream selection usable for long lists 2026-10-12 22:21:10 +02:00
evgeny dad67360b9 Remove obsolete Android stream polling and simplify lifecycle tests 2026-10-12 22:20:28 +02:00
evgeny 6e596f34a5 Notify viewers when channels close and refresh resumed playback state 2026-10-12 22:18:04 +02:00
evgeny 4e1c36955a Test desktop stream discovery, playback, pressure and teardown 2026-10-12 22:16:31 +02:00
evgeny e5d37f6e74 Translate desktop live stream controls and playback states 2026-10-12 22:15:11 +02:00
evgeny 7addfb5aa3 Keep live decoding low latency and preserve publisher stop controls 2026-10-12 22:15:11 +02:00
evgeny b4ebaa8863 Open desktop stream playback windows from channel sources 2026-10-12 22:12:41 +02:00
evgeny fe7734b9e0 Show live sources and select a stream in desktop channel headers 2026-10-12 22:12:41 +02:00