Голосовые функции модемов: обзор основных характеристик и возможностей

Юрий Бондаренко, 

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

Когда мы выбираем себе модем, основная мотивация (кроме цены) — скорость и качество связи с Интернетом. Что касается голосовых функций модема, большинство неспециалистов слабо представляют, для чего это нужно. Некоторые считают, что голосовые модемы нужны, чтобы отдавать им команды голосом, а некоторые — чтобы «разговаривать через Интернет». После прочтения этой статьи вы, дорогой читатель, ознакомитесь с аппаратной начинкой голосового модема, набором его функциональных возможностей и запросто сможете «утереть нос» большинству продавцов компьютерных салонов.

Выбирая факс-модем, нужно убедиться, что набор его голосовых команд поддерживается программным обеспечением, которым вы предполагаете пользоваться (как правило, в комплекте идет стандартно-совместимое ПО, но пользователи часто ставят что-нибудь более мощное для своих конкретных нужд). Как правило, стандартное ПО умеет работать со всеми «старыми», или «традиционными», наборами команд. Что касается новых стандартов (V.253) — то эти стандарты, хоть и являются новыми, поддерживаются не всяким программным обеспечением. Тем не менее, все новые голосовые модемы, собранные на основе микросхем от Conexant, имеют набор команд V.253. Последняя микропрограмма от Conexant, поддерживающая набор голосовых команд AT#V, датирована февралем 2001 года.

Теперь разберемся с аппаратными возможностями. В процессе записи голосовые модемы используют аналогово-цифровой преобразователь (АЦП) для оцифровки аналогового сигнала и цифро-аналоговый преобразователь (ЦАП) для восстановления исходного аналогового сигнала — при воспроизведении. Комбинация АЦП и ЦАП называется кодеком. Для записи и воспроизведения у голосовых модемов только один кодек, в то время как устройств, которые могут быть использованы для записи/воспроизведения звука, — несколько: телефонная линия, подключенный к модему телефонный аппарат, а также внешние и встроенные в модем микрофон и громкоговоритель (динамик). Поскольку для обслуживания разных источников звукового сигнала используется один и тот же кодек, необходимо реализовать возможность его поочередного подключения к тому или иному источнику. Такое переключение обычно реализуется посредством реле или электронных ключей.

Небольшое число внешних голосовых модемов, встречающихся на рынке, имеет встроенный микрофон, вместе с динамиком размещающийся внутри корпуса модема; разъемы для подключения внешней гарнитуры пальчиковые, диаметром 3,5 мм. Наличие гнезд для гарнитуры — достаточный признак голосового модема, но не необходимый, — модемы, реализующие функции только автоответчика (TAM only) или модемы, оснащенные встроенными микрофоном и динамиком, могут не иметь гнезд для подключения внешнего громкоговорителя или микрофона (как, например, новые модели голосовых модемов фирмы ZyXEL).

Для работы модема с телефонным аппаратом требуется дополнительное реле и источник питания. Обычно это же реле используется для отключения телефонного аппарата, когда модем устанавливает соединение для обмена данными или передачи/приема факсимильных сообщений, поэтому при отсутствии реле (гнезда Phone и Line соединены параллельно), снятие трубки телефонного аппарата приведет к возникновению помех или даже разрыву соединения.

Для голосового модема имеет большое значение наличие датчиков состояния линии и телефона, так как в стандартах голосовых команд предусмотрена реакция модема на события, происходящие на линии и телефонных аппаратах (включенных в модем или параллельно ему). Все это аппаратное изобилие отнюдь не вдохновляет производителей, работающих на рынке дешевых изделий, поэтому частенько выпускаются модемы с урезанным набором функций. «Голь на выдумки хитра» — поэтому урезают все, что можно урезать, и даже то, что нельзя. В итоге в продаже можно видеть голосовой Win-модем, стоящий дешевле грязи, в котором от полноценного аппаратного модема остались лишь цепи сопряжения с телефонной линией и кодек.

Пара слов о стандартах голосовых командах. Как правило, реализованный в модеме набор команд указывается на коробке, а поддержка голосовых функций появилась в модемах с начала 90-х годов прошлого столетия. Пионерами были Sierra Semiconductors и Rockwell, впоследствии к ним присоединились ZyXEL, U.S.Robotics и другие производители. Каждый вендор создавал собственный набор команд, что сильно осложняло жизнь разработчикам программного обеспечения. Тогда в рамках EIA/TIA (Electronic Industries Association/Telecommunication Industries Association) была сделана попытка создания стандартного набора голосовых команд. Документ получил название IS-101. К сожалению, эта попытка стандартизации провалилась, поскольку не была поддержана всеми производителями модемов. В дальнейшем была предпринята еще одна попытка — теперь уже ITU-T — рекомендация V.253, однако до сих пор не все производители программного обеспечения включили поддержку этой рекомендации в свое программное обеспечение. Можно констатировать, до сих пор «фирменные» наборы команд более распространены. Прежде всего, это относится к набору команд Conexant (бывший Rockwell) — его часто называют AT#V.

Теперь мы расскажем, для чего можно использовать голосовые модемы. Начнем со специального голосового режима SpeakerPhone: в нем модем ничего не передает и не принимает из компьютера. Сигнальный процессор воспроизводит звук, приходящий из линии, через встроенный или внешний динамик, а звук, поступающий через микрофон, передает в линию. Это позволяет говорить с позвонившим абонентом при помощи микрофона и динамика модема.

Реализация такого режима требует дополнительных затрат, в том числе и аппаратных: для работы в режиме SpeakerPhone приходится одновременно работать с телефонной линией и динамиком/микрофоном (соответственно требуется два кодека). Кроме того, необходимо принять меры для подавления акустического эха (в некоторых модемах используется отдельный сигнальный процессор для выполнения связанных с режимом SpeakerPhone функций). Естественно, что модемы с поддержкой режима SpeakerPhone (и особенно full-duplex SpeakerPhone, когда передача голоса осуществляется в обоих направлениях одновременно) стоят дороже.

Практический пример: у вас к линии подключен модем IDC-5614BXL/VR. При входящем звонке модем генерирует звуковой сигнал, вы нажимаете кнопку One Touch Phone на лицевой панели модема, он «снимает трубку» (подключается к линии) и переходит в режим SpeakerPhone. Пожалуйста, можете говорить с вызывающим абонентом, а когда закончите разговор, снова нажмите эту кнопку, и модем положит трубку.

Автоответчик. Аббревиатура TAM (Telephone Answering Machine) в перечне свойств модема означает, что ваш модем может как минимум записывать звук с телефонной линии в компьютер. TAM only означает, что в модеме урезано все, кроме минимума, необходимого для работы автоответчика.

Для реализации функции автоответчика нужно держать включенными модем, компьютер и программу, реализующую работу при помощи голосовых команд. Когда поступает звонок, программа дает модему команду снять трубку, проиграть приветствие (стандартное, или записанное вами) и записать сообщение. Если позвонивший абонент начнет передачу факса, факс-модем распознает этот сигнал, и программа перейдет к приему факса, если в ней заложена такая возможность. Кстати, распознавание сигнала вызова факса (1300 Гц) происходит и в момент, когда модем воспроизводит звук, поступающий в цифровом виде от компьютера. Таким же образом могут распознаваться сигнал вызова другого модема, изменение состояния телефона и линии, сигналы АТС и сигналы DTMF (используются при тоновом наборе). Любопытно, что некоторые модемы умеют работать в режиме автоответчика автономно, без необходимости оставлять компьютер включенным. При этом голосовые и факсимильные сообщения запоминаются во вместительном банке Flash-ППЗУ модема; пользователь в любой момент может перенести их на компьютер при помощи специализированного ПО. Модемы U.S.Robotics представлены в данном классе несколькими моделями — 5625 Professional Message Modem (2225) и 5668 Message Modem (2068 Sportster MessagePlus).

Предположим, вы используете модем под управлением некоторой программы в качестве автоответчика. Поступил звонок, на который вы не ответили, используя автоответчик для мониторинга входящих звонков и отвечая только на важные вызовы. Автоответчик работает, записывая сообщение, а вы решаете снять трубку и ответить лично. Если датчик положения трубки телефона в модеме есть — все в порядке, программа, распознающая события (фиксируемые этим датчиком), поймет, что вы сняли трубку телефона и отключит модем от линии. В противном случае вам придется делать это вручную, что часто неудобно: компьютер в другой комнате, экран занят другим приложением и пр.

О качестве записи и воспроизведения голоса. Первое, что приходит в голову, когда мы говорим о качестве записи/воспроизведения звука, — частота дискретизации и разрядность кодека, и лишь потом мы вспоминаем о сжатии голоса. Хотя все модемы используют 16-разрядные кодеки с частотой дискретизации 7200 Гц или выше (что более чем достаточно для качественных записи и воспроизведения), фактическое качество записи может сильно меняться в зависимости от выбранных частоты дискретизации и сжатия. Это вызвано ошибками во внутренних подпрограммах сжатия голоса. Некоторые модемы испытывают трудности в простейшем режиме 8-бит PCM, другие — начинают «квакать» при использовании ADPCM (IMA ADPCM). «Поиграйте» с частотой дискретизации и сжатием, чтобы выяснить, какое сочетание дает лучшие результаты.

Большое значение имеет способность модема подстраиваться под условия конкретной линии связи: уровень принимаемого сигнала и затухание в канале связи. Практически все голосовые модемы имеют АРУ (Автоматическую Регулировку Усиления), но не всегда АРУ обеспечивает оптимальный уровень записи. Часто максимальный коэффициент усиления выбран слишком низким, и модему не удается записать слабый сигнал. У многих модемов АРУ работает слишком медленно, что приводит к пропаданию начала записываемой фразы.

С воспроизведением еще хуже. Многие модемы не позволяют регулировать громкость при воспроизведении в линию, а установленная «фабричная» громкость слишком мала для каналов с большим затуханием сигнала. Можно столкнуться и с ситуацией, что громкость воспроизводимого в линию сигнала регулируется, но при высоких уровнях начинаются нелинейные искажения.

Что касается «традиционных» параметров записи/воспроизведения голоса, они у всех модемов примерно одинаковы: частота дискретизации — 7200, 8000 и 11025 Гц, разрядность кодека 16 бит, затем сигнал усекается и сжимается до восьми, четырех, трех или двух бит. Для сжатия обычно используется адаптивная дельта-модуляция (ADPCM). Заметим, что 7200 Гц и двух бит вполне достаточно для разборчивой записи и воспроизведения голоса.

Помимо состояния линии и телефона, стандарты голосовых команд предполагают отслеживание других событий, происходящих на линии: сигналов АТС (непрерывного сигнала, сигналов «занято») и тонального набора, тонов вызова (CNG) и ответа факсов и модемов. Для правильной работы модема важно надежное определение этих сигналов. Например, если модем не способен обнаружить сигнал «занято», ему не удастся определить момент, когда позвонивший повесил трубку, и программа будет записывать короткие гудки (в лучшем случае до истечения лимита максимальной длительности сообщения). Не менее опасно и ложное определение сигналов «занято» — запись сообщения будет прервана на полуслове! Этой болезнью страдают очень многие из так называемых «адаптированных под наши телефонные сети» модемов: адаптация заключается в установке широких параметров сигналов «занято», в результате модем начинает принимать голос за короткие гудки.

При помощи аппарата с тоновым набором удаленный абонент может управлять автоответчиком. О возможности такого управления можно и нужно предупреждать звонящего в тексте приветствия. Программа ведет журнал событий — вы можете посмотреть, в котором часу вам звонили, и прослушать оставленное сообщение. Голосовой факс-модем может быть использован в качестве средства автоматического оповещения. Вы записываете голосовое сообщение и вводите в программе список номеров телефонов, по которым необходимо его передать (например, обзваниваете всех выпускников вашего класса, чтобы сообщить, где и когда будет праздноваться годовщина выпуска). Компьютер наберет все указанные номера, определит сигналы «занято», «не отвечает» или ответ голосом, надиктует с помощью модема ваше сообщение и запишет ответ оповещаемых абонентов.

Запись и воспроизведение звуков. В качестве источника звука может быть выбран микрофон, линия или телефонный аппарат (наиболее качественный звук получается обычно с микрофона). Когда вы даете команду на запись, компьютер инициализирует модем и предлагает нажать кнопку «запись», подтверждающую вашу готовность говорить. После этого выдается предупреждающий сигнал, и начинается запись. Соответственно, по нажатии кнопки «стоп» запись будет завершена. Прослушать сделанную запись можно через динамик модема, а воспроизвести в телефонную линию — и через телефонный аппарат, подключенный к гнезду Phone. При помощи этой функции можно записать телефонный разговор. Для этого необходимо подключить телефонный аппарат не последовательно, а параллельно, в качестве источника звука для записи выбрать телефонную линию, набрать номер абонента и включить процесс записи. В результате весь разговор собеседников будет записан в файл.

Функция АОН. После появления голосовых функций у модемов отечественные разработчики ПО попытались приспособить их для определения номера вызывающего абонента. Принцип работы АОН заключается в следующем: если в течение короткого времени после снятия трубки в ответ на входящий звонок послать тон запроса (сигнал с частотой 500 Гц), АТС вызывающего абонента ответит двухтональными сигналами, в которых содержится закодированная информация о номере вызывающего абонента (посылка АОН). Тон запроса можно сформировать программно (как звуковой файл) или воспользоваться AT-командой для передачи тональных сигналов. Затем остается только записать ответ АТС и декодировать содержащийся в нем телефонный номер. Казалось бы, все просто. На практике же возникает ряд трудностей, связанных с низкой скоростью выполнения голосовых команд. Ответ от АТС начинает передаваться почти сразу же после передачи тона запроса. В этом ответе каждая цифра номера передается в течение примерно 40 мс. Задержка выполнения голосовых команд составляет сотни миллисекунд, что приводит к потере цифр в определяемом номере. Кроме того, трудно предугадать, в какой момент относительно снятия трубки АТС звонящего будет готова принять (и ответить) тон запроса.

Как же работает «правильный» АОН в голосовых модемах? Во-первых, он должен быть реализован в модеме аппаратно, чтобы не возникало описанных выше проблем. Во-вторых, уметь декодировать двухтональные сигналы одновременно с передачей тона запроса (работать в дуплексном режиме). В-третьих, модем должен уметь представлять информацию АОН в виде, привычном для ПО. Очень удачное с этой точки зрения решение — симуляция работы Caller ID: для программы он предстает модемом с функцией Caller ID (поддержка Caller ID есть практически во всех программах), а для АТС модем работает, как обычная АОН-приставка. Поэтому не приходится искать программы, «заточенные» именно под этот модем: вы просто включаете функцию Caller ID в программе (если она не включена по умолчанию), и, как по мановению волшебной палочки, программа начинает определять номера телефонов, с которых к вам поступают звонки. С другой стороны, в режиме симуляции Caller ID модем всегда обязан начинать ответ на второй звонок, что не всегда удобно. В таких случаях желательно обзавестись программой, поддерживающей режим АОНа для стран СНГ, например VentaFax.

При наличии датчиков положения трубки телефона появляется возможность определять номер вызывающего абонента в момент снятия трубки на телефонном аппарате. Если добавить сюда еще функцию определения номеров, набираемых на телефонном аппарате, и возможность записи разговоров, то вполне можно использовать модем в качестве регистратора телефонных переговоров. Эта функция полезна для проверки телефонных счетов, подойдет она и для документирования разговоров в небольшой фирме.

У некоторых модемов, оснащенных датчиками положения трубки и использования линии, аппаратно реализованный АОН срабатывает при снятии трубки параллельного или подключенного через модем телефона. В то же время на рынке есть устройства с функцией автономного АОНа, то есть позволяющие определять номера звонящих и сохранять их список для дальнейшего просмотра при выключенном компьютере, как, например, ZyXEL Omni 56K Pro.

Мониторинг телефонной линии. Отдельные голосовые модемы обладают возможностью, которая может быть по-разному оценена читателями. Эти модемы умеют прослушивать все происходящее на параллельном телефоне, не снимая трубки. Запись разговоров в них ведется через высокоомный вход. При этом качество записи на удивление хорошее, даже при высоком затухании сигнала в линии. Те, кто пробовал записывать разговор с помощью модема, знают, что на линии с высоким затуханием непросто качественно записать обоих абонентов. Проблема в АРУ: когда говорит локальный абонент, уровень сигнала много выше того, который приходит с другого конца линии, и АРУ выставляет низкий коэффициент усиления. Когда начинает говорить удаленный абонент, коэффициент оказывается недостаточен для нормальной записи. Скажем, если затухание в канале составляет 18 дБ, то сигнал от удаленного абонента будет меньше сигнала от локального абонента в восемь (!) раз по амплитуде. Однако разработчикам компании Inpro удалось решить эту проблему, даже в случае записи через высокоомный вход.

Итак, чтобы включить мониторинг линии, вы устанавливаете модем, запускаете соответствующую программу, и все действия на параллельном телефоне модем сообщает компьютеру, который записывает их в журнал. Фиксируется все: снятие трубки, опускание трубки, номера телефонов, набираемых в тональном или импульсном режимах; наконец, могут записываться все разговоры. При этом люди, ведущие разговор, даже не подозревают, что он записывается, трубку модем не снимает и никакого влияния на линию не оказывает.

table_modem.gif

Характеристики наиболее популярных модемов с голосовыми функциями.


Выражаем благодарность за консультации: Mike Telis, Inpro Development Corporation; Л. Клюеву и М. Родионову, Объединение «Вента», а так же компании USN Computers за предоставленные для исследований модемы Acorp и Inpro.
Автор
Юрий Бондаренко

Комментарии