Commit Graph
1587 Commits
Author SHA1 Message Date
evgeny f24a8ca6d3 Add video bitrate regulator with bounded debt feedback 2026-10-14 18:40:35 +02:00
evgeny 0bbd4d6c34 Verify router ACK accounting across retries and epoch resets 2026-10-14 18:34:33 +02:00
evgeny 859bb733af Build and test router delivery history boundaries 2026-10-14 18:33:05 +02:00
evgeny f87c6a93bc Expose per-service payload backlog and acknowledged delivery 2026-10-14 18:32:28 +02:00
evgeny 61faca84d7 Add aligned router delivery metering for video adaptation 2026-10-14 18:31:52 +02:00
evgeny a4f508feed Read stream supernode role directly by member ID 2026-10-14 16:49:40 +02:00
evgeny 7dd1176545 Document complete keyframe admission and shared media opening 2026-10-14 16:32:15 +02:00
evgeny 1809416dce Add atomic media reader opening with selected epoch validation 2026-10-14 16:26:41 +02:00
evgeny d75aea1a09 Remove unused media receiver and test the shared ring cursor 2026-10-14 16:24:32 +02:00
evgeny d209ab94ba Gate media cursor revision changes on a complete keyframe 2026-10-14 16:22:15 +02:00
evgeny 84472cc276 Clarify stream bootstrap and log bounded publisher drain 2026-10-14 16:05:17 +02:00
evgeny d0ddc9ae8c Fix partial stream bootstrap and release drained upstream flows 2026-10-14 16:02:24 +02:00
evgeny 33f8dacbfc Expose demand driven video reads through the stream handle 2026-10-14 13:25:50 +02:00
evgeny f317d3e989 Read the next live video frame independently of presentation time 2026-10-14 13:25:50 +02:00
evgeny 29313cce54 Reserve broadcast capture exclusively while preserving shared voice I/O 2026-10-14 10:17:48 +02:00
evgeny 77acdb2d65 Expose radio compressor settings to publication workers 2026-10-14 02:35:55 +02:00
evgeny f5d112a712 Share bounded media publication and send telemetry across frontends 2026-10-14 02:32:14 +02:00
evgeny cd8a5392d5 Expose source codec selection and aggregate send telemetry through JNI 2026-10-14 01:09:30 +02:00
evgeny 4d03a2db53 Expose pending source deliveries without counting ETCP inflight twice 2026-10-14 01:06:57 +02:00
evgeny b6652c7c7f Record unique acknowledged packets at the instance transport boundary 2026-10-14 01:06:56 +02:00
evgeny ac89601fc5 Add instance lifetime ACK windows and exclusive ETCP send queue snapshots 2026-10-14 01:06:32 +02:00
evgeny 7e693fcc97 Define uAV2 codec IDs and signed keyframe configuration envelopes 2026-10-14 01:06:32 +02:00
evgeny 2aafe172d6 Reject large audio timestamp jumps before narrowing PLC packet counts 2026-10-14 00:11:31 +02:00
evgeny ef0fc85eb9 Document bounded read continuation and retained source ownership after FIN 2026-10-14 00:05:49 +02:00
evgeny 3649e45087 Reseek on media discontinuities and bound disabled track timestamps 2026-10-14 00:01:57 +02:00
evgeny e1abcb5d69 Observe actual silent device intervals when adapting playback history 2026-10-13 23:26:55 +02:00
evgeny 5c75487446 Continue bounded media assembly without waiting for new network data 2026-10-13 23:24:04 +02:00
evgeny e6e276aed3 Expose shared playback timing and stereo time stretch to Android 2026-10-13 23:03:29 +02:00
evgeny 541518db81 Keep finished source data alive until delayed media readers close 2026-10-13 22:53:38 +02:00
evgeny f655f2c1d5 Keep playback audio compatible with the Android voice build 2026-10-13 22:46:02 +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 2c7bd78a64 Track stereo time stretched audio through the device playback timeline 2026-10-13 22:37:09 +02:00
evgeny 9f37c54a3c Expose demand based audio and video reads on local stream handles 2026-10-13 22:30:47 +02:00
evgeny 866ca0923d Give audio device lead and video decode lead independent read limits 2026-10-13 22:30:47 +02:00
evgeny 75bd6f1ce1 Notify media readers when indexed playback data becomes available 2026-10-13 22:29:24 +02:00
evgeny 485e655fd8 Separate media reader cursors from live stream receive progress 2026-10-13 22:15:00 +02:00
evgeny dc7cebaa65 Register indexed media reads and retain only two working blocks 2026-10-13 22:12:51 +02:00
evgeny 126aa9df10 Read media on demand through indexed cursors over the RS ring 2026-10-13 22:09:46 +02:00
evgeny 4ae8fc7c45 Reuse authenticated immutable RS subsets for playback reads 2026-10-13 22:04:55 +02:00
evgeny 2fac28b7e9 Build and register the shared stream playback controller test 2026-10-13 22:04:16 +02:00
evgeny 8e3ec4cb84 Test adaptive playback against a delayed audio device queue 2026-10-13 22:04:16 +02:00
evgeny b2645aed9d Add a shared playback reserve clock with corrected minute history 2026-10-13 21:56:10 +02:00
evgeny 3b922ced78 Cover early BOUND in the delayed helper confirmation regression 2026-10-13 20:28:56 +02:00
evgeny 43a600c5a5 Test immediate relay forwarding and log batch authentication 2026-10-13 20:25:40 +02:00
evgeny 98d1e40bf3 Validate short media batches with an embedded source signature 2026-10-13 20:14:06 +02:00
evgeny f15c97d11a Size Android publisher buffers for the signed batch format 2026-10-13 20:09:14 +02:00
evgeny 6a5bb84d71 Centralize default stream input capacity with batch overhead 2026-10-13 20:09:14 +02:00
evgeny 0e9478d033 Account variable stream parts and continue after rejected batches 2026-10-13 20:08:07 +02:00
evgeny 47b713ea69 Publish actual part lengths and expose rejected batch status 2026-10-13 20:07:02 +02:00