Commit Graph
331 Commits
Author SHA1 Message Date
evgeny 8eef506eed Enable pinch zoom and bounded panning in Android live viewer 2026-10-14 17:41:12 +02:00
evgeny c39610f079 Share video zoom geometry between Android viewers 2026-10-14 17:36:38 +02:00
evgeny 931631a4a9 Show Android live streams fullscreen with automatic orientation and timed controls 2026-10-14 17:28:16 +02:00
evgeny ded0d401c7 Match stream audio queue to device buffer and document playback ownership 2026-10-14 17:19:04 +02:00
evgeny 0fdc6e435b Fix Android stream audio backpressure without blocking video 2026-10-14 17:16:45 +02:00
evgeny 12ad2bf14b Release all preview session outputs when the camera device closes 2026-10-14 15:44:08 +02:00
evgeny 117087d56b Distinguish camera preview failure from a stopped stream 2026-10-14 15:43:24 +02:00
evgeny 2ee3103c8c Avoid double sensor rotation in direct Android camera preview 2026-10-14 15:43:24 +02:00
evgeny b8a2d7a555 Detach direct camera preview immediately when UI goes to background 2026-10-14 15:30:03 +02:00
evgeny 78054b2c1d Measure direct preview frame age using camera timestamp clocks 2026-10-14 15:19:49 +02:00
evgeny 548e64c963 Use direct camera preview instead of a local stream decoder 2026-10-14 14:58:03 +02:00
evgeny e8a63ec40d Send Android camera frames directly to preview surfaces 2026-10-14 14:58:03 +02:00
evgeny 9ef18b6324 Release Android inflight state at decoder EOS before audio tail 2026-10-14 14:17:35 +02:00
evgeny c02222610b Preserve observed decoder lead while its pipeline drains 2026-10-14 13:49:57 +02:00
evgeny 360a6efafc Verify outstanding read replies and explicit video demand 2026-10-14 13:49:14 +02:00
evgeny 9331c26b22 Distinguish Android decoder startup from waiting for a keyframe 2026-10-14 13:36:38 +02:00
evgeny f72e2fca94 Drive Android decoding by codec readiness and bounded working frames 2026-10-14 13:36:38 +02:00
evgeny 223c9a153c Request the next video frame through JNI without a time horizon 2026-10-14 13:36:38 +02:00
evgeny a5f8b8431d Verify video profile fallback without excluding a supported codec 2026-10-14 02:14:24 +02:00
evgeny 499ce21cfc Use available encoder profiles when the preferred video profile is absent 2026-10-14 02:14:24 +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 b4aeb1a3fd Keep preview layout stable and document codec configuration exchange 2026-10-14 01:56:02 +02:00
evgeny 39297d1a07 Explain unavailable video decoders and restored capture settings 2026-10-14 01:47:32 +02:00
evgeny de67de33df Report codec capabilities and document the expanded Android media header 2026-10-14 01:45:50 +02:00
evgeny 990713c7a7 Retain complete codec parameter sets across separate configuration callbacks 2026-10-14 01:41:12 +02:00
evgeny 06bd9947ce Test codec keyframes and bitrate selection across camera changes 2026-10-14 01:21:04 +02:00
evgeny 3e7197702b Decode all supported video formats from uAV2 on desktop 2026-10-14 01:14:38 +02:00
evgeny c815d06ab0 Add video codec and bitrate controls with aggregate send buffer indicators 2026-10-14 01:13:28 +02:00
evgeny 7a5a94bb64 Keep ten hertz publication telemetry separate from preview state 2026-10-14 01:12:31 +02:00
evgeny 1ac7a40432 Capture and play codec specific access units with live bitrate changes 2026-10-14 01:11:49 +02:00
evgeny d209049f71 Enumerate supported surface encoders and model codec specific keyframes 2026-10-14 01:10:43 +02:00
evgeny cd8a5392d5 Expose source codec selection and aggregate send telemetry through JNI 2026-10-14 01:09:30 +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 f3bc2909e1 Initialize Android playback before handling its first media packet 2026-10-13 23:18:43 +02:00
evgeny acf374df4e Use adaptive ring backed playback and stereo tempo on Android 2026-10-13 23:16:06 +02:00
evgeny 1d7f70b31c Preserve Opus preroll state across timestamp jitter and short gaps 2026-10-13 16:39:37 +02:00
evgeny 8206e53b5c Warm Android Opus preroll and start audio at the first keyframe 2026-10-13 16:30:41 +02:00
evgeny 50005b108f Generate continuous stereo Opus in live playback regression 2026-10-13 14:39:08 +02:00
evgeny 8bee8c10ff Replace stream rotation menu with three marked toggle buttons 2026-10-13 14:24:59 +02:00
evgeny e06e9b0e22 Capture encode and play stereo audio in Android live streams 2026-10-13 14:15:44 +02:00
evgeny 2a2394b34d Verify live stream compression and document shared radio AGC 2026-10-13 13:46:24 +02:00
evgeny 2e0eb89ad3 Capture CAMCORDER audio and apply radio AGC changes live 2026-10-13 13:40:08 +02:00
evgeny 6bd14c53b5 Compress stream audio before Opus using radio settings 2026-10-13 13:39:12 +02:00
evgeny 5f5d4f964a Preserve Android debug level and accept all core categories 2026-10-13 12:10:38 +02:00
evgeny 7fa7a42673 Expose native debug categories and fix Android level fields 2026-10-13 12:10:08 +02:00
evgeny 3a6dacf378 Add stream camera controls and preserve playback on changes 2026-10-13 01:00:53 +02:00
evgeny dd034a9d42 Cover channel closure and keep stream selection usable for long lists 2026-10-12 22:21:10 +02:00
evgeny cacd377d55 Use only shared source events in Android streaming UI and tests 2026-10-12 22:20:28 +02:00
evgeny 7addfb5aa3 Keep live decoding low latency and preserve publisher stop controls 2026-10-12 22:15:11 +02:00
evgeny e3d9ac9d31 Report Android stream close reasons and epoch changes 2026-10-12 22:01:38 +02:00