Программа PEventReader для считывания событий из пульта С2000(М)

FORUM_NAME: Программное обеспечение для систем безопасности
Описание: Программное обеспечение для систем безопасности
Модератор: Модераторы
testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #21 testov_test » 25.01.2018, 13:13

Phoenix писал(а):Нет. События сохранятся в буфере пульта. Как только программа запустится, она их считает.
Ага, проверил, подгружает.
DruG писал(а):потеряются ли события в пульте пока программа не работает - потеряются, если накопится 8001 несчитанное событие, то первое потеряется ;)
Спасибо за утонение, именно это и хотел узнать.
Phoenix писал(а):Нужно озвучивать только тревожные события, или все?
По озвучке сам не знаю... Тревожные события сами по себе пультом и БИ-шками озвучиваются, а остальные вроде несущественные. Делать разные звуки на каждый тип тоже бессмысленно - слишком много разных звуков будет, только путаться.
Думаю, если делать, то не более двух сигналов: тревожный и обычный; либо просто все события одним сигналом (типа как на сайте mail.ru сигнал о новом письме).

Phoenix писал(а):Сильно усложнять программу не хочется, но некоторые вещи можно добавить.
Намек понял :mi_ga_et:
Согласен, программа хороша, когда легка и лаконична.

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #22 Phoenix » 27.01.2018, 08:47

Обновил программу. В архиве версия 1.1.0. Ссылка на архив в первом сообщении. Изменения:
1. Добавлены опции для сворачивания в системный трей. Нужно настроить трей в ОС, иначе иконка программы скрыта.
2. Добавлено звуковое оповещение тревог и событий.
3. Добавлено речевое оповещение тревог. В winXP это не работает. Для работы в win7 нужно установить SAPI5-совместимый русский синтезатор речи. В win7 есть английский голос, но он не воспроизводит русский текст. Я нашел только такой синтезатор: http://tiflo.info/rhvoice/
Нужно установить программу по ссыкле с надписью "Версия 0.2.161, установочный SAPI5-совместимый вариант". Буду признателен если кто-то подскажет синтезатор получше.
Вложения
PEventReader1.png

pet-and M
Активный участник
Активный участник
pet-and M
Активный участник
Активный участник
Возраст: 40
Репутация: 75
Сообщения: 2582
Зарегистрирован: 11.11.2012
С нами: 6 лет 1 месяц
Профессия: инженер
Откуда: Санкт-Петербург

Непрочитанное сообщение #23 pet-and » 27.01.2018, 10:29

А предыдущая версия синтезатора, с голосом какой-то Елены не подойдет? Это та, что была у болида в версии 1.12.

И вообще, Pheonix, вы неутомимы и АРМ свой есть, и то, и это. Аплодирую стоя :bra_vo: :bra_vo: :bra_vo:
Могет быть вы ишо и прошивочку на СП4 сварганите, а то у мени трабл намечается.

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #24 Phoenix » 27.01.2018, 11:34

Тот синтезатор использует API "Microsoft Speech Platform", а библиотека Qt 5.9 его не поддерживает. Пока доступно SAPI5.

Сравнил Елену из "SAPI5-RHVoice" с Еленой из "Microsoft Speech Platform". Качество практически одинаковое, трудно сказать какой лучше. "RHVoice" не так уж и плох оказался. На сайте есть RHVoice 0.4 Alpha, там вообще оказалось куча русских голосов.

Прошивки - это к Болиду :)

pet-and M
Активный участник
Активный участник
pet-and M
Активный участник
Активный участник
Возраст: 40
Репутация: 75
Сообщения: 2582
Зарегистрирован: 11.11.2012
С нами: 6 лет 1 месяц
Профессия: инженер
Откуда: Санкт-Петербург

Непрочитанное сообщение #25 pet-and » 27.01.2018, 12:10

Phoenix писал(а):Прошивки - это к Болиду :)
На них надежды уже никакой.... Жаль....

testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #26 testov_test » 29.01.2018, 10:21

Phoenix писал(а):Обновил программу. В архиве версия 1.1.0. Ссылка на архив в первом сообщении. Изменения:
1. Добавлены опции для сворачивания в системный трей. Нужно настроить трей в ОС, иначе иконка программы скрыта.
2. Добавлено звуковое оповещение тревог и событий.

Приятная новость, будем пробовать! Спасибо!
Вопрос: как правильно перейти на новую версию, чтобы не потерять накопленный журнал событий?

MadHacker M
Активный участник
Активный участник
Аватара
MadHacker M
Активный участник
Активный участник
Возраст: 28
Репутация: 16
Сообщения: 940
Зарегистрирован: 28.05.2012
С нами: 6 лет 6 месяцев
Профессия: Программист
Откуда: МО г. Королёв

Непрочитанное сообщение #27 MadHacker » 29.01.2018, 10:39

Для речевого синтезатора на SAPI5 голосов полно. Из тех которые можно достать адекватная только Алёна. Любой нормальный синтезатор стоит денег.
По этой причине мы с SAPI перешли на SpeachPlatform по дефолту - для второй Майкрософт предоставляет дефолтные голоса для кучи языков. В том числе Елена для русского. Но при желании\возможности - можно и SAPI голос использовать. Оба варианта поддержаны с большинством необходимых костылей.
SAPI и SpeachPlatform в целом совместимы на уровне интерфейсов. Странно что в QT его нет.
Глобально - SAPI более развит. Под него больше голосов от сторонних разработчиков. У него больше возможностей по управлению синтезом. А так же в лицензионных SAPI голосах реализованы хорошие словари произношений. В то время как SpeachPlatform не поддерживает половину возможностей разметки речи и имеет кучу приколов с неотключаемой озвучкой сокращений.
Если нужно качественно - то это SAPI и купленный современный голос. Если нужно дёшего - это Ленка из SpeachPlatform. Если можно себе позволить Йохохо под бутылку рома - Алёна будет звучать намного приятнее Елены за счёт собственных словарей и родной утилиты настройки. Остальные которые есть в паблике сильно недотягивают до этих двух.

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #28 Phoenix » 29.01.2018, 11:28

Вопрос: как правильно перейти на новую версию, чтобы не потерять накопленный журнал событий?
Два варианта:
1. В новую версию скопировать папки: Events, Configs. Периодически делайте резервные копии этих папок.
2. В папку со старой версией скопировать с заменой (обязательно заменить все, даже библиотеки) файлы из новой версии. События не затрутся. В папке со старой версией нужно удалить папку platforms, она переехала в папку plugins.

MadHacker, спасибо, полезная информация. Синтезатор речи появился в Qt недавно, возможно со временем добавят Speach Platform. Или я еще пока не до конца разобрался.

MadHacker M
Активный участник
Активный участник
Аватара
MadHacker M
Активный участник
Активный участник
Возраст: 28
Репутация: 16
Сообщения: 940
Зарегистрирован: 28.05.2012
С нами: 6 лет 6 месяцев
Профессия: Программист
Откуда: МО г. Королёв

Непрочитанное сообщение #29 MadHacker » 29.01.2018, 11:39

Ну может они в QT заморочились на кросплатформенность или что-то ещё. Но если это стандартный COM под виндой - то можно буквально копипастой сделать копию класса под SpeachPlatform и задать туда спичплатформовскую TLB. Там разница в интефейсах совсем мнимальная. Может отвалиться какая то экзотика, но основной функционал должен будет подцепиться без проблем. Там большинство методов даже называются одинаково.

testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #30 testov_test » 30.01.2018, 16:07

Программа обновилась, работает. В трей сворачивается, звуки пока не тестил (нет колонок).

Что заметил.
В диспетчере задач смотрим объем памяти: при запуске программы процесс занимает около 18-20 Мб, через сутки работы увеличивается до 180-200 Мб. При попытке закрыть программу (выход из программы) окно закрывается, но процесс повисает в памяти и объем скачкообразно улетает за 400 Мб. Требуется принудительное завершение, иначе при повторном запуске программы образуется второй процесс (видно в диспетчере задач) и события не считываются с пульта.

Возможно это только на одном конкретном компьютере, не знаю.

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #31 Phoenix » 30.01.2018, 17:16

Я так понял, что это для WinXP. Посмотрю в чем дело.

testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #32 testov_test » 30.01.2018, 17:21

Да, для WinXP.

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #33 Phoenix » 30.01.2018, 17:30

Пока попробуйте убрать галочки звукового оповещения и перезапустить программу.

testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #34 testov_test » 30.01.2018, 17:49

Они убраны (изначально не ставил т.к. колонок нет).

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #35 Phoenix » 31.01.2018, 01:22

Утечка памяти наблюдается только на winXP при опросе пульта. На win7 такое не наблюдается, причем для обеих сборок ("For WinXP", "For Win7"). Какая-то несовместимость библиотек. Поддержка winXP прекращена как MS, так и разработчиками Qt. Я проверил программу, ничего подозрительного не нашел.

testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #36 testov_test » 31.01.2018, 11:01

Откатился на предыдущую версию для WinXP, завтра проверю утечку памяти.

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #37 Phoenix » 31.01.2018, 11:31

Я нашел что вызывало утечку памяти на winXP. Удивительно, но это оказалась простая команда, усыпляющая поток на 2 мс.: msleep(2). Работать будет и без этой команды, я добавлял задержку чтобы подстраховаться (для некоторых преобразователей интерфейса, которые не могут быстро переключиться с приема на передачу). Исправленную версию выложу сегодня, ближе к вечеру. Хочу еще поэкспериментировать, может получится сделать эту задержку как-то по другому.

testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #38 testov_test » 31.01.2018, 11:41

Можно тогда еще посмотреть работу галочки фильтра "тревожные"? Сейчас она не выделяет ни один тип событий, как бы ничего не делает.

Phoenix M
Автор темы
Аватара
Phoenix M
Автор темы
Возраст: 37
Репутация: 44
Сообщения: 397
Зарегистрирован: 21.09.2012
С нами: 6 лет 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #39 Phoenix » 31.01.2018, 16:02

Обновил программу. В архиве версия 1.1.1. Ссылка на архив в первом сообщении. Изменения:
1. Для WinXP устранена утечка памяти.
2. Для Win7 обновлены библиотеки до последних актуальных версий.
3. Информация о скорости опроса перемещена из заголовка программы, в правый нижний угол.

testov_test, галочка "Тревожные" так и работает. Возможно у вас нет тревог, поэтому вы не видите как она работает. Тревоги бывают охранные, пожарные, неисправности, эта галочка показывает тревоги из всех групп. Т.е. некоторые события в разных группах являются тревожными, вот они и показываются.

testov_test
testov_test
Репутация: 1
Сообщения: 16
Зарегистрирован: 23.01.2018
С нами: 10 месяцев 24 дня
Профессия: инженер

Непрочитанное сообщение #40 testov_test » 31.01.2018, 16:50

Phoenix писал(а):1. Для WinXP устранена утечка памяти.
Поставил 1.1.1, завтра проверю.
(По 1.0.1. забыл проверить, растет ли занимаемая память. Но выключилась она бодро, без зависания процесса в диспетчере задач.)

Phoenix писал(а):testov_test, галочка "Тревожные" так и работает. Возможно у вас нет тревог, поэтому вы не видите как она работает. Тревоги бывают охранные, пожарные, неисправности, эта галочка показывает тревоги из всех групп. Т.е. некоторые события в разных группах являются тревожными, вот они и показываются.
Тоже проверил, работает. При ее установке и нажатии кнопки "применить" тревожные события из журнала отображаются.
Просто думал что какие-то галочки групп, в которых есть тревожные события, тоже должны как-то пометиться (например, серым цветом). Ну, это придирки.


  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Программное обеспечение для систем безопасности»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 1 гость

forum-bolid.ru : Отказ от ответственности