УДК
519.68 ВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ ВСТРОЕННЫХ
ЗВУКОВЫХ КОДЕКОВ ОПЕРАЦИОННОЙ СИСТЕМЫ (ОС)
WINDOWS В СИСТЕМАХ IP-ТЕЛЕФОНИИ С.В. Нопин, В.Г.Шахов Омский
государственный технический университет Омский
государственный университет путей
сообщения Омск, Россия В
статье рассматриваются возможности реализации компрессии/декомпрессии звука с
помощью встроенных в ОС Windows звуковых кодеков при разработке систем
передачи речи через сеть Internet/Ethernet. По
прогнозам западных консалтинговых компаний, например, Frost & Sullivan
[8] объем рынка IP-телефонии (Internet Protocol) в среднем будет возрастать
на 130-140 % ежегодно. В 2005 году предполагается рост трафика IP-телефонии
до 33%, особенно возрастет число звонков на дальние расстояния (около 70%
трафика междугородних и международных переговоров). По данным Frost &
Sullivan, в Компрессия
звука в IP-телефонии является необходимой при передаче речи в реальном
времени по каналам связи с ограниченной пропускной способностью и желательной
при передаче речи в реальном времени по высокоскоростным каналам связи. В
первом случае сжатие обеспечивает устойчивую связь без искажений и потерь
полезного речевого сигнала, во втором – существенно сокращает объем
передаваемых данных, затраты и, благодаря этому, позволяет снижать цены на
услуги IP-телефонии и привлекать новых пользователей цифровой телефонии. Современные
IBM-совместимые компьютеры, как правило, обладают аппаратной возможностью
вводить-выводить звук с помощью стандартной звуковой карты [3]. Во всех
версиях ОС Windows (начиная с Windows 95) присутствует специальный интерфейс,
предназначенный для преобразования форматов звуковых данных. Он называется
(ACM) Audio Compression Manager (диспетчер сжатия звука) [4]. Интерфейс
позволяет изменять частоту, разрядность, количество каналов, а также тип
сжатия звуковых данных (format tag). При достаточной мощности процессора
преобразование может выполняться в реальном времени. ACM
включает в себя набор кодеков, выполняющих необходимые преобразования.
Кодеки, компрессоры/декомпрессоры, представляют собой исполняемые файлы с
расширением *.acm. Они находятся в системной папке С:\Windows\system. Как
правило, кодек позволяет осуществить не только сжатие, но и распаковку
звуковых данных, то есть восстановление исходного сигнала. Пользователь может
самостоятельно удалять ненужные ему кодеки и устанавливать новые, что придает
системе гибкость. После установки кодека все программы, пользующиеся системой
ACM, получают возможность работать с этим форматом звуковых данных.
Оцифровка, компрессия / декомпрессия, реализация сетевых протоколов TCP/IP,
UDP и воспроизведение звука на уровне
функций и процедур управляется с помощью средств application programming
interface (API) ОС Windows либо другой альтернативной ОС. Современные среды
программирования С++Builder, Delphi, Visual C++, и др. обладают возможностью
использования интерфейса API и, соответственно, могут применяться для
создания программ ввода, компрессии/декомпрессии, воспроизведения звука и
передачи потока сжатой речи по IP сети. Целью
исследования явилось выявление возможностей управления встроенными звуковыми
кодеками операционной системы (ОС)
Windows с помощью средств API для компрессии-декомпрессии звука при
разработке программного обеспечения для передачи речи в IP сетях. Для
исследования возможностей ACM ОС Windows в среде С++Builder 5.0 [1], [2] разработана программа
CONVERTER (рис.1). Она
функционирует следующим образом. Открывается файл с записанной ранее речью,
например, со следующими характеристиками: формат PCM (Pulse-Code Modulation -
импульсно-кодовая модуляции) моно, 8000 Гц, 8 бит. Далее пользователь
выбирает формат преобразования звука, например, GSM 6.10,
моно, 8000 Гц и указывает новое имя файла, который будет получен в
результате преобразования. После этого нажимается клавиша “Начать”. Программа
CONVERTER пытается с помощью звукового кодека преобразовать звуковые данные
из исходного формата в требуемый, в данном случае из формата PCM в формат GSM
6.10. Если преобразование было успешным, то программа предлагает
преобразовать еще один файл. Исследование
возможности применения встроенных кодеков ОС
Windows для компрессии-декомпрессии звука проводилось в следующем
порядке: 1) В ОС Windows XP (сборка 2600) c помощью ранее разработанной
программы ШИФРАТОР[5] была записана речь (фразы, команды по ГОСТ 16600-72 [3]) в файлы формата wav
(формат для хранения несжатого оцифрованного звука) [2]); 2) Полученные 10 файлов общей длительностью
356 секунд и объемом 2846452 байта с помощью программы Converter были
преобразованы кодеками ОС Windows во
все доступные для преобразования форматы. 3) Для сжатых файлов вычислялся средний коэффициент сжатия и битрейт
(bitrate) - количество единиц информации, необходимых для хранения (передачи)
одной секунды потока звуковых данных. Исходный формат звука: формат PCM,
моно, частота дискретизации 8000 Гц, 8 двоичных разрядов на отсчет, битрейт 64000 бит/cек, – был выбран исходя из минимальной
достаточности динамического диапазона и полосы частот необходимых для
передачи человеческой речи [9]. Рис. 1. Главное окно программы CONVERTER Апробация
разработанной программы CONVERTER показала эффективность ее применения для
управления кодеками при компрессии/декомпрессии речи. В таблице 1
представлены результаты проведенных экспериментов. Из
приведенной таблицы видно, что часть кодеков ОС Windows с указанными атрибутами не смогла
выполнить преобразования форматов. Это означает, что они имеют либо
нестандартные алгоритмы управления, либо несовместимы с установленной
операционной системой. Анализ работоспособных кодеков показывает, что
оптимальным по критерию качество[6,7]-битрейт среди встроенных звуковых
кодеков является кодек DSP Group TrueSpeech™ (8529 бит/сек), а по критерию
оптимальный битрейт - Alex AC3 Audio(4996 бит/сек). Таким
образом, разработанная программа CONVERTER и исходные коды к ней могут быть
использованы при компьютерном моделировании передачи речевой информации по
IP-каналам связи. С помощью программы можно исследовать эффективность
реализации различных цифровых алгоритмов компрессии/декомпрессии речи (в
составе кодеков) в режиме реального времени. На практике используемые алгоритмы
управления кодеками могут применяться при разработке программного обеспечения
для дуплексной передачи речи по IP-каналам связи. Таблица
1
Библиографический список 1. Архангельский, А.Я. C++Builder 6.
Справочное пособие. Книга 1. Язык С++. / А.Я. Архангельский – М.:
Бином-Пресс, 2002. – 544 с. 2. Гордеев, О. Программирование звука
в Windows. Руководство для профессионалов./ О. Гордеев – СПб.: BHV - Санкт -
Петербург, 1999. – 364 c. 3. ГОСТ 16600- 4. Гук, М. Аппаратные средства IBM PC.
Энциклопедия. / М.Гук – СПб.: Питер, 2000. – 816 с. 5. Нопин, С.В. Моделирование защиты
речевой информации с помощью персонального компьютера. / С.В. Нопин, В.Г.
Шахов.// Омский научный вестник. 2004.
– №4(29). – С. 124-126. 6. http://arcw.comptek.ru/telephony/tnotes/tt1-12.html 7. http://framerelay.nm.ru/liter/voip.htm
8. http://www.frost.com 9. ITU-T Recommendation G.711. Pulse Code Modulation of
3kHz Audio Channel.-1988 |