Приложение TrueConf Weathervane поддерживает переключение пресетов камер, используемых во время видеоконференций, через параметры командной строки. Благодаря этому его можно использовать не только как инструмент для ориентирования камер по выступающему, но и как средство произвольного управления ими в своих программах.
Содержание
Описание команды
Пресет назначается при вызове программы через параметр -p [num]
или -preset [num]
. Здесь [num]
— идентификатор пресета.
Например, команда, активирующая пресет #1, выглядит так
1 |
WeatherVane.exe -preset 1 |
Ручное переключение (тест)
Чтобы попробовать, как это работает, запустите TrueConf Weathervane, перейдите в консоли ОС Windows к папке, где установлено приложение, и используйте команду из предыдущего раздела. Активный пресет в окне приложения будет при этом меняться.
Переключение через ярлыки
Вы можете добавить параметр переключения пресета и в ярлык приложения (пример добавления параметров в ярлык описан в другой нашей статье). После этого даже неопытный пользователь сможет переключать камеры и их позиции привычным двойным щелчком мыши по ярлыку.
Автоматическая отправка команды
Конечно, вызывать приложение с параметром можно и не вручную, а из собственного программного кода. Это позволит встроить в ваше приложение переключение камер по любому сценарию и как угодно сопоставить его с работой программы.
Вот простой пример – код на Python 2.7, обеспечивающий переключение пресетов друг за другом по кругу каждую минуту:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
from time import sleep from itertools import cycle from os import system def set_preset_index(index): WEATHERVANE_PATH = "C:\\Program Files (x86)\\TrueConf\\WeatherVane\\WeatherVane.exe" command = "\"{}\" -p {}".format(WEATHERVANE_PATH, index) system(command) def process_values_rhythmically(callback, values_iterator, \ single_time_interval): while True: value = next(values_iterator) if value is None: return callback(value) sleep(single_time_interval) def switch_cameras_by_cycle(**params): process_values_rhythmically(set_preset_index, \ cycle(range(params["n_presets"])), \ params["time_interval"]) switch_cameras_by_cycle(n_presets = 5, time_interval = 60.) |