VR (test): Vidicap as a pass-through device (add-on module)
VR (тест): Vidicap как проходное устройство
Инженерный модуль для испытаний. Не для операций. Это дополнительный модуль: в базовую программу он не входит, сам не ставится. Его ставят с экрана Vidicap, как остальные доп. модули, на стенде или в учебной операционной.
Идея: Vidicap стоит между источником видео и монитором хирурга. Видео с лапароскопической стойки или УЗИ приходит на вход захвата Vidicap, а на внешний монитор Vidicap выводит ту же картинку на весь экран и поверх неё свои подсказки, как дополненная реальность:
- показатели пациента с мониторов по HL7 (ЧСС, SpO₂, НИАД, EtCO₂) и красная плашка тревоги;
- «Запись», «Трансляция» и таймер операции;
- давление и поток инсуффлятора;
- отметки ИИ-эндоскопии (рамки находок поверх видео).
Сам Vidicap со своим сенсорным экраном работает как обычно: запись, обследования, все модули.
| Где | Что нужно |
|---|---|
| Vidicap Touch 2.0 (Ubuntu 24.04) | программа 2.19.0 и новее, модуль «Вывод видео», затем установка модуля VR |
| Vidicap Touch 1.0 (Ubuntu 18.04) | программа 1.23.0 и новее (обновляется с экрана: «Платформа» → «Проверить обновления»), модуль «Вывод видео», затем установка модуля VR |
Модуль один для обеих ревизий. На Touch 1.0 процессор слабее, поэтому там особенно важно измерить задержку до работы с живой картинкой. Пока VR включён, окно «Вывода видео» на Touch 1.0 закрывается, чтобы компьютер не показывал вход дважды.
Что важно знать до испытаний
- Задержка. Хирург видит инструмент через Vidicap, поэтому каждая миллисекунда на счету. Перед любой работой с живой картинкой измерьте задержку кнопкой «Замерить» (см. ниже). Для лапароскопии ориентир: суммарно не больше 100 мс, включая сам монитор.
- Запасной путь. У стойки должен оставаться прямой кабель на монитор в обход Vidicap. Если Vidicap выключится или зависнет, хирург переключает монитор на прямой вход.
- Ничего не уходит в облако. Видео, показатели и подсказки идут по кабелю от Vidicap к монитору. На vidicap.cloud модуль ничего не передаёт; результат замера задержки хранится только на устройстве (в файле настроек).
Как подключить
- Выход лапароскопической стойки или УЗИ подключите ко входу 1 Vidicap (SDI или HDMI, как обычно).
- Внешний монитор подключите ко второму видеовыходу компьютера Vidicap (HDMI или DisplayPort), как для модуля «Внешний дисплей».
- Если монитор сенсорный, подключите и его USB-кабель к Vidicap: тогда подсказками можно управлять касаниями прямо на мониторе.
- Для замера задержки нужен ещё один кабель: копия выхода на внешний монитор во вход 2 (через разветвитель HDMI или второй выход монитора).
Установка
Сначала поставьте модуль «Вывод видео»: без второго монитора VR не работает. Vidicap это проверяет сам (программа 2.20.0 и 1.24.0 и новее): пока «Вывода видео» нет, в строке «VR (тест)» вместо кнопки «Установить модуль» написано «Сначала установите модуль «Вывод видео»», установка с флешки тоже остановится с этим сообщением. Если «Вывод видео» удалили после установки VR, на странице «VR (тест)» будет написано, что модуля нет, а кнопка «Включить VR» не нажимается.
Дальше так же, как любой доп. модуль (подробно в инструкции «Дополнительные модули»):
- Vidicap Touch 2.0: «Настройки» → «Платформа» → блок «Доп. модули». Vidicap Touch 1.0: кнопка «Платформа» справа вверху → «Проверить обновления» → блок «Доп. модули».
- В строке «VR (тест)» нажмите «Установить модуль» и подтвердите. Без сети к платформе: положите файл
vidicap-module-vr-<версия>.zipна флешку и нажмите «Установить с флешки». - Нажмите «Перезагрузить устройство».
Файл модуля платформа выпускает сама при обновлении сервера, загружать его вручную не нужно. Скачать его для флешки можно в «Обновления» → раздел «VR (тест)».
Инженер может поставить модуль и из терминала: unzip vidicap-module-vr-<версия>.zip && sudo ./vidicap-module-vr/install-module.sh. Этот способ на Touch 1.0 сам доустановит xinput и ffmpeg, если их нет, и добавит команду vidicap-vr. Удаление: sudo ./install-module.sh --remove (файл настроек /etc/vidicap/vr.json остаётся).
Страница модуля на экране Vidicap
После перезагрузки в главном меню появляется плитка «VR (тест)»: отдельной настройки в «Настройках» нет, всё управление на странице этой плитки. На плитке видно состояние: «Готов», «Идёт» (видео с подсказками на внешнем мониторе), «Нет экрана» (второй монитор не подключён) или «Нет вывода» (не установлен модуль «Вывод видео»). Вверху страницы жёлтая полоса «Инженерный тест, не для операций».

Слева то, что видит хирург:
- «Включить VR»: внешний монитор переходит в режим VR, вход идёт на весь экран, подсказки по углам. Повторное нажатие возвращает обычный «Внешний дисплей».
- Вход: какой вход захвата показывать (1 или 2).
- Раскладка подсказок: «Лапароскопия» ставит плашки в тёмные углы вокруг круга эндоскопа, «УЗИ» ставит их вниз, под сектор, чтобы не закрывать служебные надписи аппарата.
- Подсказки: какие плашки показывать (показатели HL7, запись и таймер, инсуффлятор, отметки ИИ). Плашка появляется, только если соответствующий модуль установлен и работает.
- «Скрыть подсказки»: на мониторе остаётся чистое видео. Тревоги показателей и новые находки ИИ всё равно появляются на несколько секунд.
- «Панель кнопок сбоку»: кнопки управления всегда видны справа, видео становится чуть уже.
Справа часть для инженера: касания внешнего монитора, пульт-кликер и замер задержки.
Как это выглядит на мониторе хирурга
Лапароскопия, все подсказки включены:

УЗИ, подсказки внизу:

Подсказки скрыты, но пришла тревога SpO₂:

Управление с сенсорного внешнего монитора
Сенсорный монитор подключается к Vidicap по USB и выглядит для системы как ещё одна «мышь» с абсолютными координатами. Чтобы он не мешал собственному экрану Vidicap:
- собственная панель Vidicap всегда остаётся привязанной к его экрану;
- касания внешнего монитора привязываются только к внешнему монитору (Touch 2.0 делает это через sway, Touch 1.0 через
xinput); на Touch 2.0 курсор на нём скрыт, на Touch 1.0 он может появляться в точке касания; - новая, непроверенная сенсорная панель выключена, пока инженер не нажмёт «Проверить касания»;
- обычные мыши и тачпады модуль не трогает.
На мониторе хирурга внизу справа кнопка «≡». Касание по ней или свайп от правого края открывает меню: скрыть подсказки, снимок, начать или остановить запись (с подтверждением), следующий вход, включение отдельных подсказок. Касание по плашке открывает то же меню.

С включённой «Панелью кнопок сбоку» кнопки видны всегда:

Снимок и запись делаются в открытое обследование. Если обследование не открыто, Vidicap просит его открыть: на Touch 2.0 на своём экране, на Touch 1.0 надписью на внешнем мониторе.
Проверка касаний
Делается один раз при подключении монитора и после замены монитора или USB-кабеля.
- На странице «VR (тест)» нажмите «Проверить касания».
- На внешнем мониторе появится большая кнопка «Коснитесь здесь». Коснитесь её на внешнем мониторе.


- Если касание пришло на экран Vidicap (значит, первой попалась не та панель), Vidicap сам пробует следующую: коснитесь внешнего монитора ещё раз.
- Когда касание дошло до внешнего монитора, Vidicap пишет «Касания внешнего монитора проверены и привязаны к нему», а в списке панелей рядом с ней стоит «внешний монитор».
Если касаний нет 20 секунд, проверка прерывается. «Забыть панели» сбрасывает привязку: Vidicap заново определит свою панель, а внешнюю придётся проверить снова.
Пульт-кликер
Обычный презентер для слайдов (USB-приёмник) можно дать ассистенту. Включите «Пульт-кликер» на странице модуля:
| Кнопка пульта | Действие |
|---|---|
| → (следующий слайд) | скрыть или показать подсказки |
| ← (предыдущий слайд) | снимок |
| B или «.» (чёрный экран) | скрыть подсказки |
| F5 или Esc | следующий вход |
Пока режим включён, эти клавиши не доходят до других программ на Vidicap. На Touch 1.0 пульт работает, пока активно окно программы Vidicap (так всегда, если на компьютере не открыто ничего другого).
Замер задержки
- Соедините копию выхода на внешний монитор со входом 2 (кнопка «Петля во вход …» меняет вход, если нужен другой).
- Нажмите «Замерить». Внешний монитор на несколько секунд становится чёрным, в углу 20 раз мигает белый квадрат.
- Vidicap ловит каждую вспышку на входе петли (через полную копию входа, /dev/video20…23; на Touch 1.0 до программы 1.44.0 /dev/video4 или /dev/video5) и считает время от команды до кадра.

Результат: среднее, минимум и максимум в миллисекундах, сколько вспышек дошло, дата и вход. Это задержка Vidicap: захват, вывод и обратный захват. Собственная задержка монитора сюда не входит, её берут из паспорта монитора или меряют камерой.
Команды для инженера
vidicap-vr show версия, настройки, сенсорные панели, последний замер
vidicap-vr panels устройства с абсолютными координатами и чьи они
sudo vidicap-vr on | off включить или выключить VR (при следующем запуске программы)
sudo vidicap-vr forget-panels забыть привязку панелей
vidicap-vr key toggle то же, что кнопка пульта (toggle, hide, show, photo, record, input, menu)
Команда vidicap-vr появляется при установке из терминала. Если модуль поставлен с экрана, вместо неё: PYTHONPATH=/opt/vidicap/modules/or_vr python3 -m or_vr show (и так же остальные; на Touch 1.0 модуль может лежать в ~/.local/share/vidicap/modules/or_vr).
Связь с vidicap.cloud
| Что | Куда |
|---|---|
| Файл модуля | vidicap.cloud выпускает его сам при обновлении сервера; устройство видит его в «Доп. модулях» и скачивает по нажатию «Установить модуль» |
| Видео, подсказки, показатели | никуда: по кабелю от Vidicap к монитору |
| Настройки и замер задержки | только на устройстве (/etc/vidicap/vr.json) |
| Обновление программы под модуль | приходит с vidicap.cloud как обычно (Touch 2.0: 2.19.0, Touch 1.0: 1.23.0); без модуля ничего не меняется |
| Статус модуля | агент видит, что модуль установлен, как и другие модули |
Что пока не сделано
- Голосовые команды через Ассистента для VR (скрыть подсказки, снимок) ещё не подключены.
- Результаты замера задержки не отправляются на платформу, смотреть их нужно на устройстве.
- Источник с разрешением выше Full HD (4K) не проверялся.
← External display and SRT (add-on module “Video output”) Music in the operating room (add-on module: AirPlay and Bluetooth) →