Документация для версии Интеллект 4.13. Документация на другие версии также доступна.

Предыдущая страница Примеры с Окном запроса оператора и SIP-терминалом  Пример с Видеошлюзом Следующая страница

Форматы

Формат оператора для описания действий с Аудиопроигрывателем:

DoReact("PLAYER","_id_","_команда_" [,"_параметры_"]);

Формат процедуры событий для Микрофона:

OnEvent("OLXA_LINE", "_id_","_событие_")

Формат оператора для описания действий с Микрофоном:

DoReact("OLXA_LINE","_id_","_команда_" [,"_параметры_"]);

Функция проверки состояния объекта Микрофон:

CheckState("OLXA_LINE","номер","состояние")

Примеры

Примеры использования событий и реакций объекта Аудиопроигрыватель:

  1. Необходимо проигрывать звуковой файл при остановке записи видеокамеры:

    OnEvent("CAM",N,"REC_STOP")
    {
    	DoReact("PLAYER","1","PLAY_WAV","file<C:\Program Files (x86)\Intellect\Wav\cam_alarm_"+N+".wav>,from_macro<1>");
    }
  2. Необходимо завершать проигрывание файла при начале записи видеокамеры:

    OnEvent("CAM",N,"REC")
    {
    	DoReact("PLAYER","1","STOP_WAV");
    }
  3. Проигрывание звукового файла от прихода одного события до прихода другого события (в данном примере это запуск макрокоманд).

    Звуковой файл должен длиться не больше количества секунд, которое указано в операторе Wait.

    OnEvent("MACRO","1","RUN")
    
    {
        flag=1;
        [
        for(i=1;flag;i=1)
        {
            DoReact("PLAYER","1","PLAY_WAV","file<C:\Program Files\Intellect\Wav\cam_alarm_1.wav>");
            Wait(3);
        }
        ]
    }
    
    OnEvent("MACRO","8","RUN")
    {
        flag=0;
    }

Примеры использования событий и реакций объекта Микрофон:

  1. Необходимо включить первый микрофон на запись при включении акустопуска.

    OnEvent("OLXA_LINE","1","accu_start") //включение акустопуска
    {
    	DoReact("OLXA_LINE","1","ARM"); //включение микрофона на запись
    }
  2. Необходимо установить минимальную компрессию на микрофоне при выключении записи аудиосигнала.

    OnEvent("OLXA_LINE","1","DISARM") //отключение записи с микрофона
    {
    	DoReact("OLXA_LINE","1","SETUP","compression<5>"); //установлена минимальная компрессия
    }
  3. Микрофон (OLXA_LINE) пишется не синхронно с камерой. По умолчанию микрофон не стоит на охране. Необходимо писать звук как по акустопуску, так и по детекции от камеры. На сработку акустопуска (ACCU_START) и детектора движения (MD_START) включается принудительная запись звука и увеличивается на единицу переменная flag. При окончании акустопуска и детекции движения переменная flag уменьшается на единицу и запись звука останавливается, только если она равна нулю, т.е. нет ни акустопуска, ни движения.

    OnInit()
    {
        flag=0;
    }
    
    OnEvent("CAM","3","MD_START")
    {
        flag=str(flag+1);
        DoReact("OLXA_LINE","1","RECORD_START");
    }
    
    OnEvent("OLXA_LINE","1","ACCU_START")
    {
        flag=str(flag+1);
        DoReact("OLXA_LINE","1","RECORD_START");
    }
    
    OnEvent("OLXA_LINE","1","ACCU_STOP")
    {
        flag=str(flag-1);
        if (!(flag))
        {
            DoReact("OLXA_LINE","1","RECORD_STOP");
        }
    }
    
    OnEvent("CAM","3","MD_STOP")
    {
        flag=str(flag-1);
        if (!(flag))
        {
            DoReact("OLXA_LINE","1","RECORD_STOP");
        }
    }


  • No labels