Document Full HD call modes and verified codec recovery checks
This commit is contained in:
1 parent
72cb1fa829
commit
833eeb0a8d
2 files changed
+59
No files matched your search
@@ -1193,3 +1193,47 @@ decoder output+12мс, stop без ACK, запоздалый ACK после star
|
||||
Qt encoder/GPU/clock/jitter: 4/4 PASS, core и vibechat собраны.
|
||||
Полный check.sh вне sandbox: 163/164; известный test_encrypted_attachment снова phase=5,
|
||||
heartbeats=12001 (описан в doc/tasks.md). Лог: /tmp/video-independent-check-full.log.
|
||||
|
||||
Full HD и режимы камеры, 19.10.2026
|
||||
Предел интерфейса звонка — 1920x1080 либо 1080x1920, 30fps. Начальный режим и диапазон
|
||||
300k..4M не повышаются автоматически. Общие wire CAPS уже допускают эти геометрии.
|
||||
Для Full HD@30 согласуются AVC level_idc=40 и HEVC general_level_idc=120, Main tier;
|
||||
нижние размеры по-прежнему получают минимальный допустимый уровень через call_video_choose.
|
||||
|
||||
Desktop camera worker опрашивает QCameraDevice::videoFormats и использует те же
|
||||
stream_video_add_camera_modes/stream_video_camera_supports, что publisher трансляций.
|
||||
В звонок попадают только чётные аппаратные размеры до Full HD при 30/29.97fps.
|
||||
Дубликаты pixel format объединяются; список передаётся в GUI вместе с id/именем камеры
|
||||
и обновляется по videoInputsChanged. Драйвер опрашивается только в отдельном процессе.
|
||||
GUI сохраняет разрешение при смене камеры, если оно поддерживается; иначе выбирает 640x480
|
||||
либо минимальный доступный размер. Отсутствие режимов не превращается в запрос размера -1.
|
||||
При старте требуется точное совпадение аппаратной геометрии; другой размер готового
|
||||
QImage диагностируется как ошибка вместо скрытого масштабирования.
|
||||
|
||||
Shared mapping FRAME/ACK расширен до 1920*1080*4 байт; обе стороны проверяют геометрию.
|
||||
Worker копирует RGB32 построчно с учётом stride, GUI получает собственный QImage.
|
||||
Владение mapping, поколения и ограничение единственного кадра в IPC сохранены.
|
||||
|
||||
Android выбирает 640x480/1280x720/1920x1080 из YUV_420_888 камеры, учитывая min frame
|
||||
duration и диапазон AE с upper=30. Каждая геометрия кодера проверяется в двух ориентациях;
|
||||
для разных размеров могут использоваться разные аппаратные/программные реализации.
|
||||
Decoder также хранит реализацию и измеренный pipeline отдельно для 720p и Full HD.
|
||||
Это сохраняет работающий GPU на 720p, если Full HD проверен только через CPU.
|
||||
CAPS содержат реальные проверенные encode/decode пределы; выбранный режим дополнительно
|
||||
проверяется открытием codec и bitstream, как требует контракт независимых верхних границ.
|
||||
|
||||
Общие KEY fixtures дополнены 1920x1080 и 1080x1920, AVC Baseline/CB и HEVC Main.
|
||||
call_video_probe_key принимает width/height; генератор tools/generate_call_video_portrait.py
|
||||
--fullhd явно задаёт high-tier=0. Нельзя заменять Full HD-пробу одной лишь проверкой 720p.
|
||||
Desktop capability probes отменяются при stop, включая ожидание другого probe;
|
||||
незавершённый результат не кэшируется. Codec/драйверные вызовы выполняются вне GUI/playout.
|
||||
|
||||
Проверки: native bitstream/геометрия/профили/DPB — PASS; Qt encoder/GPU/clock/camera/audio
|
||||
5/5 PASS, включая настоящие Full HD encode/decode в обеих ориентациях, поколения,
|
||||
границу shared buffer и stop во время проб. Общие camera modes publisher — 3/3 PASS.
|
||||
Ядро, все desktop targets и Android APK собраны; Android unit 111/111 PASS.
|
||||
Логи: /tmp/fullhd-native-video-test.log, /tmp/fullhd-qt-verified-tests.log,
|
||||
/tmp/fullhd-shared-camera-modes.log, /tmp/fullhd-android-final-build.log,
|
||||
/tmp/fullhd-desktop-final-build.log. Полный check.sh — 163/164, прежний отказ
|
||||
test_encrypted_attachment phase=5/heartbeats=12001: /tmp/fullhd-core-check.log.
|
||||
Это codec/IPC-проверки; живой Full HD звонок новой сборки на Windows/Android ещё не проверен.
|
||||
@@ -12,6 +12,21 @@
|
||||
Повторилось при проверке независимого видеопланировщика: check.sh вне sandbox 163/164,
|
||||
тот же phase=5/heartbeats=12001; /tmp/video-independent-check-full.log,
|
||||
артефакты /tmp/utun_encrypted_attachment_IW0W28. Код вложений в этой работе не менялся.
|
||||
Повторилось при проверке Full HD звонков: check.sh 163/164, тот же phase=5/heartbeats=12001;
|
||||
/tmp/fullhd-core-check.log, артефакты /tmp/utun_encrypted_attachment_MIwfM3.
|
||||
|
||||
[+] **Full HD в видеозвонках и реальные разрешения desktop-камеры** — 19.10.2026:
|
||||
Desktop использует общий со стримами отбор аппаратных режимов до 1920x1080 при 30/29.97fps.
|
||||
Список и hotplug приходят из отдельного процесса; выбранный режим открывается точно, без подстановки ближайшего.
|
||||
Android добавляет 1920x1080 в пересечение YUV-режимов камеры и проверенных кодеров; учтены обе ориентации.
|
||||
Encode/decode CAPS объявляются после настоящих проб, GPU/CPU выбираются с учётом размера.
|
||||
Общий RGB-буфер камеры расширен до Full HD; очередь показа остаётся на три кадра.
|
||||
Пробы decoder отменяются при stop, незавершённые CAPS не кэшируются.
|
||||
Ядро, полный desktop и Android APK собраны; Android unit 111/111, Qt video/camera/clock/audio 5/5,
|
||||
общий механизм режимов камер 3/3, native bitstream/Full HD — PASS.
|
||||
Полный check.sh: известный сбой test_encrypted_attachment, остальные 163 PASS.
|
||||
Проверка живого Full HD звонка на Windows и телефонах ещё не выполнена.
|
||||
Подробности и логи: doc/call_video.txt.
|
||||
|
||||
[ ] **Разобрать нестабильную загрузку storage-узлов в test_media_delivery_chat** — 19.10.2026:
|
||||
В том же общем прогоне storage st1/st2 не собрали файл, n2 исчерпал попытки блока 0 (15/19 внутренних проверок).
|
||||
|
||||
Reference in new issue
Block a user