Звук в 1С 8

 

Сегодня попробую рассказать о том, какие методы работы со звуком доступны в 1С.

Штатные средства

На самом деле, штатных средств для работы со звуком, насколько я знаю, в 1С ровно одно — убогая процедура «Сигнал».

Она не принимает никакие параметры и просто издает системный звук.

Штатные методы закончились, а из нештатных есть следующие варианты.

Microsoft Speech API (SAPI)

Разработку Microsoft для синтеза голоса вполне можно использовать для воспроизведения wav-файлов, делается это так:

Кроме этого с помощью Speech API можно реализовать голосовое произнесение какого-либо текста — функция «Speak», параметр — строка текста, сама технология поддерживает 26 языков, включая русский, но, насколько я знаю, для поддержки русского необходимо скачивать и устанавливать специальную библиотеку (возможно, позднее разберусь с этим и напишу статью). Почитать подробнее об функционале Speech API можно на MSDN (на английском).

DynamicWrapperX

DynamicWrapperX — достаточно известная в некоторых кругах библиотека, которая позволяет зарегистрировать и использовать функции какой-либо другой библиотеки. Саму DynamicWrapperX можно скачать на сайте автора.

С помощью DynamicWrapperX можно зарегистрировать «sndPlaySoundA» из библиотеки «winmm.dll» и использовать эту функцию для воспроизведения wav-файлов.

Это может выглядеть так:

В этом примере подразумевается наличие макета «dynwrapx» (тип — двоичные данные). Для успешной регистрации библиотеки (DynamicWrapperX), 1С нужно запустить от имени администратора.

HTML

И, наконец, последний на сегодня способ — при помощи html-тега «bgsound». На форме должен быть элемент «Поле HTML документа». Насколько я понял, этот элемент должен именно быть виден на форме, т.к. у меня звук не воспроизводился если я скрывал это элемент (Видимость=Ложь).

Главный плюс этого способа — возможность воспроизвести mp3-файлы (а вот wav-файлы, наоборот нельзя), а в минусы можно записать необходимость присутствия на форме поля HTML документа (если я не ошибаюсь) и зависимость от настроек Internet Explorer-а (в настройках Explorer-а должно быть включено воспроизведение звуков страницы).

Сама же реализация выглядит приблизительно так:

В примере подразумевается, что существует макет с типом двоичные данные, в котором и храниться звуковой файл, а на форме имеется элемент «Поле HTML документа» (в примере он называется «ПолеHTML»).

На этом все, надеюсь эта статья Вам помогла.

Оставить комментарий