Browse Source

Record verified AV1 playback fix and regression coverage

master
evgeny 5 days ago
parent
commit
5630bedc51
  1. 20
      doc/tasks.md

20
doc/tasks.md

@ -4,6 +4,26 @@
## Текущие задачи ## Текущие задачи
[+] **Live: независимая подача decoder и устранение вечного ожидания AV1 на SM** — 14.10.2026:
Причина: Android подавал максимум три кадра и читал видео только на 80ms вперёд от остановившегося clock;
c2.android.av1-dav1d.decoder требовал заполнения своего конвейера. KEY уже был принят, но UI продолжал ждать KEY.
Общий cursor теперь запрашивает следующий видеокадр независимо от PTS показа; audio сохраняет временной lookahead.
Bridges готовят один ответ на запрос, получение ответа/AVAILABLE не создают скрытого prefetch.
Android StreamDecodePump держит один input и один output, обслуживает выход перед входом и использует готовность codec.
KEY/decoder ожидания разделены; старт clock/audio после первого decoded frame, low latency при поддержке.
Защитный guard учитывает наблюдённый decoder lead; EOF освобождает inflight metadata и не блокирует audio tail.
Desktop использует тот же контракт: один рабочий AVPacket, два готовых изображения, EAGAIN сохраняет вход,
FIN дренирует decoder до EOF. Кодек/rotation меняют video revision, аудиошкала сохраняется.
151 тест ядра без ошибок/пропусков, proxy/integration/burst/load прошли; check.sh — 126s.
Четыре CTest stream/audio timing прошли; восемь Kotlin pump-сценариев прошли, APK обоих ABI и vibechat собраны.
Проверены 4/8 входных кадров при замороженном clock, сетевые паузы, поздний ответ чтения, пустой EOS и guard.
Настоящие FFmpeg кадры с задержкой выхода в четыре кадра: запуск после 80ms и полный drain короткого потока из трёх кадров.
Реальный AV1 на SM-A525F: первый decoded frame через 67–117ms после KEY в проверенных запусках,
длительный показ и поворот работают; завершённый запуск показал 21609/21609 decoded/shown, без discarded.
Исправленный APK установлен на SM. Сетевой протокол и формат RS остаются прежними; colo2/Q8 не обновлялись.
Архитектура: `doc/stream.txt`, `doc/service_lifecycle.md`.
Логи: `/tmp/av1-pump-{full-check,ring-test,bridge-test,service-test,gui-tests,android-final-build,sm-live}.log`.
[+] **Live: публикация с desktop ChatGUI** — 14.10.2026: [+] **Live: публикация с desktop ChatGUI** — 14.10.2026:
Камера, микрофон, экран и окно через Qt >=6.6 Multimedia/FFmpeg; Wayland/XWayland использует системный портал. Камера, микрофон, экран и окно через Qt >=6.6 Multimedia/FFmpeg; Wayland/XWayland использует системный портал.
Отдельный controller сохраняет эфир при закрытии окна, сырое превью обновляется до 30Hz независимо от encode. Отдельный controller сохраняет эфир при закрытии окна, сырое превью обновляется до 30Hz независимо от encode.

Loading…
Cancel
Save