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
5677e8ec5f
Initialize the publication media format with the selected codec
2026-10-14 01:09:30 +02:00
evgeny
cd8a5392d5
Expose source codec selection and aggregate send telemetry through JNI
2026-10-14 01:09:30 +02:00
evgeny
8b6c72b704
Publish bounded 100 ms send telemetry from the Android media actor
2026-10-14 01:08:20 +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
98655284b2
Discard stale playback snapshots before reseeking a media cursor
2026-10-13 23:39:45 +02:00
evgeny
e1abcb5d69
Observe actual silent device intervals when adapting playback history
2026-10-13 23:26:55 +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
e6e276aed3
Expose shared playback timing and stereo time stretch to Android
2026-10-13 23:03:29 +02:00
evgeny
9781f138ed
Switch Android media delivery to demand reads from the shared RS ring
2026-10-13 22:53:13 +02:00
evgeny
f15c97d11a
Size Android publisher buffers for the signed batch format
2026-10-13 20:09:14 +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
22b62699ac
Describe stereo Opus in live media blocks
2026-10-13 14:14:24 +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
34349bd663
Require selected epochs and verify multiple live publishers
2026-10-12 22:28:15 +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
dad67360b9
Remove obsolete Android stream polling and simplify lifecycle 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
evgeny
d5ed19ee34
Open Android live streams from the channel header
2026-10-12 22:01:38 +02:00
evgeny
ba3dd70f6c
Keep Android live sources in reactive channel state
2026-10-12 22:00:12 +02:00
evgeny
ba3dfa9fcc
Watch Android stream sources and validate selected epochs
2026-10-12 21:58:56 +02:00
evgeny
c7be1ebbbe
Preserve cold NAT trials in the real network fixture
2026-10-12 20:43:39 +02:00
evgeny
d2e62874bb
Fix Android member details layout and address formatting
2026-10-12 16:40:40 +02:00
evgeny
a96d5926c7
Fix Android external network monitoring and startup readiness
...
Select frontend network callbacks for auto_sockets=android instead of opening a denied netlink monitor. Preserve monitor descriptor ownership, keep native monitoring failures fatal, and release caller config on failed Android core creation and restart.
Register ConnectivityManager before requesting startup, report readiness after SERVICE_STARTED, and refresh addresses after initialization with serialized updates and generation checks. Add regression coverage for denied netlink, socket failures, address updates, and fd=0 preservation. Record the separate cancellation issue for startup before readiness.
Validation: full check.sh passed, including proxy/burst/load integrations. Clean Android build installed successfully on SM-A525F and Q8; logcat confirms both cores initialized and entered the poll loop with external monitoring and post-start address refresh.
2026-10-12 16:01:26 +02:00
evgeny
bb256dccdc
Extend Android playback counters across long running streams
2026-10-12 12:54:13 +02:00
evgeny
a043dc9a42
Bound audio writes and release codecs after failed initialization
2026-10-12 11:49:09 +02:00