Страница 1 из 1

Вывод звука в InTouch

СообщениеДобавлено: Чт авг 05, 2010 7:13 am
Evgen
Подскажите в интаче есть функци playsound(). НЕ могу запрограммировать следующую логику выдачи звуковых сигналов. имеется 2 логических тега. 1- прошел аварийный сигнал. 2- прошел предупредительный сигнал. При установке этих битов должны выдаваться звуковые сигналы причем разные. Для хранения сигналов использую 2 wav файла продолжительность каждого 5с. Не могу реализовать вот, что. необходимо выдавать звук паралельно. У меня получается так пришел аварийный сигнал играет звук 1, если допустим в течении 5с прошел предупр. сигнал то предыдущий останавливается и начинается проигрываться звук 2. Как сделать что бы звуки проигрывались одновременно (те один вызов playsound() не гасил другой если тот еще не отработал). использую playsound со 2 параметром 2 - асинхронное воспроизведение.

СообщениеДобавлено: Чт авг 05, 2010 7:30 am
Klinkmann_Msk
To Evgen:

Попробуйте воспользоваться ф-цией StartApp.

СообщениеДобавлено: Пт авг 06, 2010 12:24 am
Evgen
попробовал через startapp, возникла еще проблема написал vbscript для проигрывания файла но через startapp "c:\test.vbs"; он незапускаетя подкажите, если просто с командной строки то запускается нормально.
Подскажите, ято делаю не так???

СообщениеДобавлено: Пт авг 06, 2010 4:33 am
Klinkmann_Msk
To Evgen:

Попробуйте:
StartApp "C:\1.wav"

СообщениеДобавлено: Пн авг 09, 2010 8:29 am
Evgen
Спасибо помогло!! Уважаемый Klinkman_msk еще вопрос. Допустим помещаем функцию playsound("filename","0")-синхронное проигрывание в скрипт datachange. При срабатывании скрипта файл проигрывается, но вся остальная логика и скрипты останавливаются пока играет файл, даже сервер ввода вывода перестает обновлять данные и невозможно в этот момент перейти на другое окно. Пробовал данную функцию по разному и в whileshowing окна и в отдельную quick функцию с галкой асинхронно. Ситуация такае же. Я так понимают синхронно т.е. пока не проиграется звук до конца следующая строчка кода не выполняется, но это в данном скрипте!!(другие то должны в это время исполняться параллельно). У меня же получается полное подвешивание всей логики проекта.
Разве и должно быть?????

СообщениеДобавлено: Пн авг 09, 2010 9:05 am
Klinkmann_Msk
To Evgen:

"Я так понимают синхронно т.е. пока не проиграется звук до конца следующая строчка кода не выполняется, но это в данном скрипте!!(другие то должны в это время исполняться параллельно)."
Принципы работы скриптов в InTouch описаны в Technotes 21, 257

Они доступны здесь:
https://wdn.wonderware.com/sites/WDN/Pages/Tech_Support/BasicTechNotes.aspx