Инструменты пользователя

Инструменты сайта


asterisk_codecs

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

asterisk_codecs [2018/03/17 06:04] (текущий)
Строка 1: Строка 1:
 +====== Asterisk codecs ======
 +[[Asterisk]] IP PBX - это ПО, распространяемое по открытой лицензии,​ что делает невозможным включение в состав дистрибутива некоторых коммерческих технологий,​ таких как патентованные алгоритмы эхо-компенсации и преобразования кодеков G.729 и G.723.1. Однако,​ компания Digium предоставляет возможность всем желающим ​ приобрести лицензию на использование кодека G729, которая позволяет использовать этот кодек для преобразования голосовых каналов (транскодирования).
 +
 +**Сервер Asterisk поддерживает работу с кодеками:​**
 +  * [[G.729]], G.729 Annex А, G.729 Annex B (содержит [[VAD]] и генератор комфортного шума): Использование кодека [[G.729]] в продуктах требует лицензирования от: Sipro Lab Telecom или VoiceAge, если вы живете в США или некоторых других странах. Существует некоторое количество свободных некоммерческих экспериментальных реализаций кодека G.729: бинарные и др. Сервер Asterisk поддерживает работу кодека в режиме [[pass-thru]] (т.е. без транскодинга) или, если у Вас имеется лицензия?​ или у Вас есть голова и руки.
 +  * G.723.1: Использование этого кодека в продуктах требует лицензии от Sipro Lab Telecom. Сервер Asterisk поддерживает работу с этим кодеком в режиме [[pass-thru]].
 +  * G.711: ulaw, alaw
 +  * G.726: 32kbps в версии Asterisk 1.0.3, 16/​24/​32/​40kbps в CVS HEAD версиях. Если G.711 использует полосу в 64 Kbps, то G.726 использует 32 Kbps, обеспечивая примерно такое же качество связи. Он, также, используется как стандартный кодек в системах с беспроводными [[DECT]] телефонами.
 +  * GSM:
 +  * iLBC: это VoIP кодек, разработанный Global IP Sound, и сделанный общедоступным (включая исходные коды) под свободной и довольно либеральной лицензией,​ которая включает в себя возможность модификации кода.
 +  * LPC10: (не рекомендуется к использованию!)
 +  * Speex: это голосовой кодек с открытым исходным кодом. Битрейт конфигурация:​ 4-48kbps, VBR, ABR, и т.д.
 +
 +
 +  * Для использования в командах ограничения использования кодеков allow и disallow, ниже приведена таблица соответствия используемых аббревиатур и названий кодеков:​
 +<​code>​
 +G.711 ulaw = ulaw
 +G.711 alaw = alaw
 +G.723.1 = g723.1
 +G.726 = g726
 +G.729 = g729
 +GSM = gsm
 +iLBC = ilbc
 +LPC10 = lpc10
 +Speex = speex
 +ADPCM = adpcm
 +</​code>​
 +Типичный пример использования ограничения на кодеки:​
 +<​code>​
 +disallow=all
 +allow=alaw
 +allow=ulaw
 +</​code>​
 +  * **Разбивка на пакеты данных**:​
 +Разные клиенты поддерживают различные интервалы разбивки аудиоданных на порции цифровых данных,​ передаваемых в дальнейшем по сети. Сервер Asterisk поддерживает только разбивку через каждые 20ms в протоколах,​ использующих RTP для передачи аудиоданных,​ типа SIP или MGCP, из этого следует,​ что Вам необходимо настроить Ваше клиентское оборудование в соответствии с этим требованием.
 +
 +====== Установка кодеков ======
 +
 +  * [[http://​voip.rus.net/​tiki-index.php?​page=ITU+G.729&​highlight=%D0%BA%D0%BE%D0%B4%D0%B5%D0%BA%20729|voip.rus.net:​Лицензирование. Семейство кодеков G.729]]
 +  * [[http://​voip.rus.net/​tiki-index.php?​page=Asterisk+codecs&​highlight=%D0%A1%D0%B5%D1%80%D0%B2%D0%B5%D1%80%20Asterisk%20%D0%BF%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D1%82%20%D1%81%D0%BB%D0%B5%D0%B4%D1%83%D1%8E%D1%89%D0%B8%D0%B5%20%D0%BA%D0%BE%D0%B4%D0%B5%D0%BA%D0%B8|voip.rus.net:​Кодеки Asterisk]]
 +
 +Бинарные файлы кодеков можно скачать отсюда [[http://​asterisk.hosting.lv/​|asterisk.hosting.lv]] или [[http://​asterisk.ru/​codecs|G.729 и G.723.1 кодеки]].
 +
 +Скачиваем кодеки под нужную ОС (Ubuntu 9.10 Server 64-bit) и версию [[Asterisk]] (1.6.2).
 +<​code>​
 +# uname -a
 +Linux keep 2.6.31-16-server #53-Ubuntu SMP Tue Dec 8 05:08:02 UTC 2009 x86_64 GNU/Linux
 +# asterisk -v
 +Asterisk 1.6.2.0~rc2-0ubuntu1.1,​ Copyright (C) 1999 - 2009 Digium, Inc. and others.
 +# wget http://​asterisk.hosting.lv/​bin162/​codec_g723-ast16-icc-glibc-x86_64-core2-sse4.so
 +# wget http://​asterisk.hosting.lv/​bin162/​codec_g729-ast16-gcc4-glibc-x86_64-core2-sse4.so
 +</​code>​
 +Удаляем старые кодеки codec_g729/​723*.so в директории /​usr/​lib/​asterisk/​modules . Копируем в туже директорию новые кодеки.
 +<code bash>
 +cp codec_g729-ast16-gcc4-glibc-x86_64-core2-sse4.so /​usr/​lib64/​asterisk/​modules
 +cp codec_g723-ast16-gcc4-glibc-x86_64-core2-sse4.so /​usr/​lib64/​asterisk/​modules
 +</​code>​Перезапускаем Asterisk или подгружаем кодек вручную<​file>​
 +localhost*CLI>​ module load codec_g729-ast110-gcc4-glibc-x86_64-core2.so
 +Loaded codec_g729-ast110-gcc4-glibc-x86_64-core2.so
 +  == Registered translator '​g729tolin'​ from format g729 to slin, table cost, 900000, computational cost 1000
 +  == Registered translator '​lintog729'​ from format slin to g729, table cost, 600000, computational cost 4000
 + ​Loaded codec_g729-ast110-gcc4-glibc-x86_64-core2.so => (g729 Coder/​Decoder,​ based on Intel IPP)
 +</​file>​
 +  * Вывести информацию о возможных кодеках,​ которые может понимать asterisk<​file>​
 +core show codecs
 +</​file>​
 +  * Проверим подгрузились кодеки или нет, командой<​code>​
 +module show like 729
 +core show translation
 +core show translation recalc 10
 +</​code>​
 +
  
загрузка...
asterisk_codecs.txt · Последние изменения: 2018/03/17 06:04 (внешнее изменение)