Commit Graph
347 Commits
Author SHA1 Message Date
evgeny ea5ef4abc2 Probe hardware rate transitions and clear stale call port commands 2026-10-14 23:13:45 +02:00
evgeny 2f1de49e87 Negotiate actual Android modes and replace single encoder on IDR 2026-10-14 23:13:01 +02:00
evgeny 47cca28d39 Probe Android encoders and decoders independently with actual formats 2026-10-14 23:12:00 +02:00
evgeny 5e15fc0d3f Expose common bitstream inspection and actual format checks to Android 2026-10-14 23:10:12 +02:00
evgeny b01d54a431 Request constrained AVC explicitly and diagnose hardware SPS limits 2026-10-14 22:49:31 +02:00
evgeny 9becdac331 Add explicit device instrumentation for call codec verification 2026-10-14 22:46:10 +02:00
evgeny ba2a66341a Add Android call video display and live camera codec bitrate controls 2026-10-14 22:45:34 +02:00
evgeny a59ebcd6db Own Android call video in the foreground call service 2026-10-14 22:45:34 +02:00
evgeny 04f4d29e4f Add Android call camera and keyframe encoder replacement worker 2026-10-14 22:44:32 +02:00
evgeny edf7e4d2c5 Render Android call video against the audio playback clock 2026-10-14 22:43:12 +02:00
evgeny 5dbc5bcf59 Probe Android call encoders through real YUV encode and decode 2026-10-14 22:42:16 +02:00
evgeny c986221cb6 Expose shared video negotiation and bounded queues to Android JNI 2026-10-14 22:40:48 +02:00
evgeny 6980bc7a88 Expose the adaptive call video range in Android audio settings 2026-10-14 21:17:46 +02:00
evgeny f04e3fd995 Persist the Android call video bitrate range atomically 2026-10-14 21:10:12 +02:00
evgeny e975d24a73 Track Android call capture and playback clocks 2026-10-14 19:36:11 +02:00
evgeny 023f3a335e Pass call audio timing across Android JNI 2026-10-14 19:36:11 +02:00
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