В WTware встроен VideoLAN - VLC media player.
Включается строчкой в конфиге: application = vlc
Работает только с video=...(U)
. Никак нельзя запустить VLC, если
video=...(F)
или video=...(X)
. Если на вашей машине с 1024Мб памяти не запускается ни
один драйвер видео из набора (U)
, пишите, будем чинить.
В WTware для Raspberry Pi VLC еще не сделан.
Чтобы просто запустить VLC и увидеть, что оно работает, напишите в конфигурационный файл три строки:
application = vlc vlc_files = vlc.jpg vlc_cmdline = /vlc_files/vlc.jpg --image-duration=-1
C таким конфигурационным файлом на экране появится оранжево-зеленая картинка с текстом "VLC for WTware test screen." Что означает каждая из строк конфигурационного файла:
application = vlc
Включает проигрыватель VLC вместо обычного RDP клиента.
vlc_files = vlc.jpg
Указывает терминалу скачать файл vlc.jpg
из каталога VLC на TFTP или HTTP
сервере (скорее всего, полный путь C:\ProgramData\WTware\VLC
). Файл будет
скачан в память терминала и доступен как /vlc_files/vlc.jpg
vlc_cmdline = /vlc_files/vlc.jpg --image-duration=-1
Указывает проигрывателю VLC открыть
файл //vlc_files/vlc.jpg
, а волшебое слово --image-duration=-1
указывает бесконечно
долго показывать картинку.
Проигрыватель VLC можно поместить на второй виртуальный экран. Подробно про виртуальные экраны написано в документации. Пример конфигурационного файла, в котором на первом виртуальном экране подключение к RDP серверу 192.168.1.1, а на втором проигрыватель VLC с тестовой картинкой. Переключаться между экранами клавишами Win-1..Win-2, Win-стрелки или через всплывающее меню внизу справа:
server=192.168.1.1 next screen application = vlc vlc_files = vlc.jpg vlc_cmdline = /vlc_files/vlc.jpg --image-duration=-1
Картинка это еще не видео. Не интересно. Можно записать видеофайл в каталог VLC и указать его
имя вместо vlc.jpg
в параметрах vlc_files=
и vlc_cmdline=
. Тогда
проигрыватель VLC будет воспроизводить видео. Файлы, указаные
в параметре vlc_files=
, будут загружены в оперативную память терминала при загрузке. Не стоит
указывать файлы размером в гигабайты: будет загружаться долго и оперативной памяти может
не хватить. Файлы загружаются быстрее, если настроить загрузку по HTTP.
Для бесконечного повтора видео в параметре vlc_cmdline
нужно убрать волшебное
слово --image-duration=-1
и добавить другое волшебное слово --loop
. Пример:
application = vlc vlc_files = yourvideo.mov vlc_cmdline = /vlc_files/yourvideo.mov --loop
application = vlc chrome_share = \\192.168.1.1\readonly, user vasja, password pivo vlc_cmdline = /home/chromium/Downloads/BBB/big_buck_bunny_480p_h264.mov --loop
Параметр chrome_share=
подключит к терминалу сетевую папку. Параметр был сделан для
сохранения файлов из локального Chromium, поэтому на терминале сетевая папка всегда подключается
в /home/chromium/Downloads/
. Графический конфигуратор WTware умеет шифровать пароль.
Параметр vlc_cmdline=
запустит на воспроизведение файл big_buck_bunny_480p_h264.mov
из каталога BBB
сетевой папки readonly
сервера 192.168.1.1
.
VLC умеет принимать вещание по протоколу RTSP. Этот протокол используют камеры видеонаблюдения, и WTware можно настроить принимать картинку с камер. Или же можно настроить вещание видеопотока в сеть с Linux-машины и показывать одинаковое, синхронное видео на нескольких терминалах с WTware.
В качестве источника RTSP вещания нужна именно Linux машина, с Windows получается плохо. Возьмите любой свежий Linux. Live USB в виртуальной машине вполне подойдет. Ниже будут скриншоты запуска вещания, снятые с Ubuntu Linux. На скриншотах входящий в дистрибутив Ubuntu VLC. Ничего сложного:
Конфигурационный файл терминала, принимающего вещание RTSP:
application = vlc vlc_cmdline = rtsp://10.1.1.32:8554/test
Вместо 10.1.1.32 надо указать IP машины с Linux, на которой запущено вещание. Так, как нарисовано
на скриншотах выше. Порт 8554
и путь /test
указаны на скриншотах. На экране терминала
должно появиться видео. Можно запустить несколько терминалов с одинаковыми настройками, и все они будут
покзывать одинаковое видео, которое вещается по RTSP с Linux машины.
Принимать вещание с камеры видеонаблюдения точно так же, порт и путь надо взять из настроек камеры.
Сложную настройку проигрывателя VLC удобнее выполнять через специальный конфигурационный файл VLM. Сначала самый простой пример, VLM для картинки. Записываем этот текст в файл test1.txt в каталоге VLC:
new c1 broadcast enabled setup c1 input /vlc_files/vlc.jpg control c1 play
В конфигурационном файле WTware пишем:
application = vlc vlc_files = test1.txt, vlc.jpg vlc_cmdline = --vlm-conf=/vlc_files/test1.txt --image-duration=-1
На экране должна получиться картинка с текстом "VLC for WTware test screen."
Более сложный пример настройки проигрывателя VLC с помощью конфигурационного файла VLM. Сначала надо
запустить вещание видео в сеть на машине с Linux так, как выше было нарисовано на скриншотах. Затем
записываем текст в файл test2.txt
в каталоге VLC
, заменяя
10.1.1.20
на IP вашей машины с линуксом:
new c1 broadcast enabled loop setup c1 input rtsp://10.1.1.20:8554/test setup c1 output #mosaic-bridge{id=1,width=300,height=224} control c1 play new c2 broadcast enabled loop setup c2 input rtsp://10.1.1.20:8554/test setup c2 output #mosaic-bridge{id=2,width=300,height=224} control c2 play new c3 broadcast enabled loop setup c3 input rtsp://10.1.1.20:8554/test setup c3 output #mosaic-bridge{id=3,width=300,height=224} control c3 play new c4 broadcast enabled loop setup c4 input rtsp://10.1.1.20:8554/test setup c4 output #mosaic-bridge{id=4,width=300,height=224} control c4 play
В конфигурационный файл WTware пишем следующие строки. Обратите внимание: всё, что
следует после vlc_cmdline=
это одна длинная строка:
application = vlc vlc_files = test2.txt, vlc.jpg vlc_cmdline = --sub-source=mosaic{width=640,height=480,xoffset=10,yoffset=10,rows=2,cols=2,keep-picture} --vlm-conf=/vlc_files/test2.txt /vlc_files/vlc.jpg --file-caching=2000 --image-duration=-1
Должна получиться такая картинка:
Четыре рыбы в четыре раза лучше одной рыбы! Можно указать разные источники видео, например с разных камер видеонаблюдения.
Про размеры. Мозаика работает так: сначала масштабируются видеопотоки,
их размеры становятся равными указанным в width=
и
height=
в конструкции #mosaic-bridge{}
. Затем
потоки накладываются на фоновую картинку. И после этого фоновая картинка
с видеопотоками растягивается на весь экран терминала. Чтобы не запутаться,
надо вместо нашей картинки vlc.jpg
использовать фоновую картинку
того же размера, что и физическое разрешение монитора на терминале,
и в width=
и height=
внутри конструкции
mosaic{}
указывать размер этой картинки.
Два монитора 1920x1080 по девять камер видеонаблюдения с форума WTware:
По умолчанию WTware включает проигрыватель VLC только после того, как пользователь переключится на соответствующий виртуальный экран. И выключает, когда пользователь переключается на другой экран. Это позволяет не загружать процессор и сеть воспроизведением видео, когда VLC работает в фоне. Но при сетевом вещании видео картинка полностью прорисовывается через несколько секунд после запуска VLC. Неудобно, если переключать экраны приходится часто. Такая строка в конфигурационном файле WTware:
vlc_timeout = 30
указывает терминалу не выключать VLC 30 секунд после того, как пользователь переключится на другой экран, на котором может работать RDP клиент. Это позволит, например, быстро сделать запись в базе и, переключившись обратно на видеонаблюдение, сразу без задержек видеть все камеры. Возможные значения - от 0 (значение по умолчанию) до 300 (5 минут работы VLC в фоновом режиме). Можно запретить терминалу отключать проигрыватель VLC:
vlc_timeout = off