Проблема с транскодингом ilbc
У меня проблема с кодеком ilbc. Стоит asterisk 1.4, подключен к нему PCTEL.RU звонки идут нормально , но только с кодеком ilbc (конечно не без проблем, но это к теме не касается), а проблема в том что во внутренних телефонах ulaw/alaw а транскодинг почему то не проходит, пишет:
Unable to find a codec translation path from 0x400 (ilbc) to 0x8 (alaw);
Понятно что транскодинг не работает, однако кодек ilbc есть!
команда core show codecs выдает:
1024 (1
| pikcorp wrote: |
| Команда core show translation выдает: ilbc - - - - - - - - - - - - - МОжет мне кто сказать что это значит? есть в asteriske 1.4 кодек ilbc или нет? |
В папке с исходниками вашего астериска есть такая папка: /contrib/scripts/ Так вот в папке /scripts/ есть скрипт get_ilbc_source.sh для загрузки исходников кодека для последующей сборки. После успешного выполнении скрипта в этой же папке появится следующее: /codecs/ilbc/
Папку /ilbc/ необходимо скопировать в папку /codecs/ в корне исходников астериска. Затем как обычно make menuselect, там выбрать в разделе с кодеками ilbc, его установку. Установить астериск. После его перезагрузки, кодек ilbc станет доступен для транскодинга.
| Code: |
| x0001*CLI> core show translation Translation times between formats (in microseconds) for one second of data Source Format (Rows) Destination Format (Columns) g723 gsm ulaw alaw g726aal2 adpcm slin lpc10 g729 speex ilbc g726 g722 slin16 g723 - - - - - - - - - - - - - - gsm - - 2 2 16002 8003 1 12001 - 52004 44004 16001 4001 12002 ulaw - 8001 - 1 16002 8003 1 12001 - 52004 44004 16001 4001 12002 alaw - 8001 1 - 16002 8003 1 12001 - 52004 44004 16001 4001 12002 g726aal2 - 12001 4002 4002 - 12003 4001 16001 - 56004 48004 1 8001 16002 adpcm - 8001 2 2 16002 - 1 12001 - 52004 44004 16001 4001 12002 slin - 8000 1 1 16001 8002 - 12000 - 52003 44003 16000 4000 12001 lpc10 - 12001 4002 4002 20002 12003 4001 - - 56004 48004 20001 8001 16002 g729 - - - - - - - - - - - - - - speex - 20001 12002 12002 28002 20003 12001 24001 - - 56004 28001 16001 24002 ilbc - 16000 8001 8001 24001 16002 8000 20000 - 60003 - 24000 12000 20001 g726 - 12002 4003 4003 1 12004 4002 16002 - 56005 48005 - 8002 16003 g722 - 12000 4001 4001 20001 12002 4000 16000 - 56003 48003 20000 - 8001 slin16 - 16000 8001 8001 24001 16002 8000 20000 - 60003 52003 24000 4000 - |
вот 729 и 723 у меня нету, а ilbc вроде вполне себе есть ))
Если у него команда core show translation выдает:
ilbc - - - - - - - - - - - - -
то у него нету.
Relax.
_________________
Человек мира. RHCE.
http://www.elastix.org/index.php?option= ... 3342#33348
из корневой папки с исходниками астериска делаем
| Code: |
| ./contrib/scripts/get_ilbc_source.sh |
оно напишет что будут скачаны исходники iLBC, жмём Enter.
скрипт скачает сам в нужную директорию исходники из интернета.
после этого можно включать кодек через меню в 'make menuselect' и компилить как обычно.
_________________
Успехов!
Можно ли, вытащив скрипт из другого дистрибутива, просто переписать выкаченные им файлы в папку /modules.
Или так: переписать кодек из другого дистрибутива, установленнего на этой же машине (другой HDD).
Буду признателен, за ссылку на codec_ilbc.so для P4 (Asterisk 1.6, CentOS 5.3). Найденные в сети - не работают сами, и не дают стартовать *
_________________
Успехов!
сегодня после установки trixbox 2.6 (в котором есть ilbc) и очередного не-старта Asterisk озадачился такой же идеей.
Added after 7 minutes:
to jooohny
PCTEL - не единственный провайдер, который предлагает iLbc (и кстати, далеко не самые лучшие условия на Россию - сравните с Betamax
| Code: |
| root@boxer:/usr/src/asterisk-1.6.2.13# make CC="cc" CXX="" LD="" AR="" RANLIB="" CFLAGS="" make -C menuselect CONFIGURE_SILENT="--silent" makeopts make[1]: Вход в каталог `/usr/src/asterisk-1.6.2.13/menuselect' make[1]: `makeopts' не требует обновления. make[1]: Выход из каталога `/usr/src/asterisk-1.6.2.13/menuselect' menuselect/menuselect --check-deps menuselect.makeopts menuselect/menuselect --check-deps menuselect.makeopts Generating embedded module rules ... make[2]: *** Нет правила для сборки цели `all'. Останов. make[1]: *** [ilbc/libilbc.a] Ошибка 2 make: *** [codecs] Ошибка 2 |
Куда рыть =-((( ?
_________________
Успехов!