Собрал, поставил в стороночку asterisk-11.2-cert1
Наполняю и тестирую
Первый же тест транскодинга даёт.
| Код: |
| CLI> core show translation recalc 100 Recalculating Codec Translation (number of sample seconds: 100) Translation times between formats (in microseconds) for one second of data Source Format (Rows) Destination Format (Columns) g723 gsm ulaw alaw g726 adpcm slin lpc10 g729 ilbc g726aal2 g722 slin16 testlaw slin12 slin24 slin32 slin44 slin48 slin96 slin192 g723 - 15000 15000 15000 15000 15000 9000 15000 15000 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 gsm 15000 - 15000 15000 15000 15000 9000 15000 15000 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 ulaw 15000 15000 - 9150 15000 15000 9000 15000 15000 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 alaw 15000 15000 9150 - 15000 15000 9000 15000 15000 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 g726 15000 15000 15000 15000 - 15000 9000 15000 15000 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 adpcm 15000 15000 15000 15000 15000 - 9000 15000 15000 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 slin 6000 6000 6000 6000 6000 6000 - 6000 6000 6000 6000 8250 8000 6000 8000 8000 8000 8000 8000 8000 8000 lpc10 15000 15000 15000 15000 15000 15000 9000 - 15000 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 g729 15000 15000 15000 15000 15000 15000 9000 15000 - 15000 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 ilbc 15000 15000 15000 15000 15000 15000 9000 15000 15000 - 15000 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 g726aal2 15000 15000 15000 15000 15000 15000 9000 15000 15000 15000 - 17250 17000 15000 17000 17000 17000 17000 17000 17000 17000 g722 15600 15600 15600 15600 15600 15600 9600 15600 15600 15600 15600 - 9000 15600 17500 17000 17000 17000 17000 17000 17000 slin16 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 6000 - 14500 8500 8000 8000 8000 8000 8000 8000 testlaw 15000 15000 15000 15000 15000 15000 9000 15000 15000 15000 15000 17250 17000 - 17000 17000 17000 17000 17000 17000 17000 slin12 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 14000 8000 14500 - 8000 8000 8000 8000 8000 8000 slin24 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 14500 8500 14500 8500 - 8000 8000 8000 8000 8000 slin32 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 14500 8500 14500 8500 8500 - 8000 8000 8000 8000 slin44 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 14500 8500 14500 8500 8500 8500 - 8000 8000 8000 slin48 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 14500 8500 14500 8500 8500 8500 8500 - 8000 8000 slin96 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 14500 8500 14500 8500 8500 8500 8500 8500 - 8000 slin192 14500 14500 14500 14500 14500 14500 8500 14500 14500 14500 14500 14500 8500 14500 8500 8500 8500 8500 8500 8500 - |
а для
asterisk-1.6.2.20
| Код: |
| CLI> core show translation recalc 100 Recalculating Codec Translation (number of sample seconds: 100) 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 siren7 siren14 slin16 g723 - 1760 281 281 2440 520 280 2240 3160 - - 2440 960 - - 2040 gsm 5360 - 441 441 2600 680 440 2400 3320 - - 2600 1120 - - 2200 ulaw 4960 1520 - 1 2200 280 40 2000 2920 - - 2200 720 - - 1800 alaw 4960 1520 1 - 2200 280 40 2000 2920 - - 2200 720 - - 1800 g726aal2 5880 2440 961 961 - 1200 960 2920 3840 - - 3120 1640 - - 2720 adpcm 5080 1640 161 161 2320 - 160 2120 3040 - - 2320 840 - - 1920 slin 4920 1480 1 1 2160 240 - 1960 2880 - - 2160 680 - - 1760 lpc10 6440 3000 1521 1521 3680 1760 1520 - 4400 - - 3680 2200 - - 3280 g729 5760 2320 841 841 3000 1080 840 2800 - - - 3000 1520 - - 2600 speex - - - - - - - - - - - - - - - - ilbc - - - - - - - - - - - - - - - - g726 5880 2440 961 961 3120 1200 960 2920 3840 - - - 1640 - - 2720 g722 5840 2400 921 921 3080 1160 920 2880 3800 - - 3080 - - - 1080 siren7 - - - - - - - - - - - - - - - - siren14 - - - - - - - - - - - - - - - - slin16 7120 3680 2201 2201 4360 2440 2200 4160 5080 - - 4360 1280 - |
ставлю разные g72x и не вижу никакой разницы в таблице вообще.
Судя по таблице получается, что астер 110 кодирует g729 в 4 раза медленнее.
И при том кодирует в g729 БЫСТРЕЕ, чем раскодирует, что противоречит применяемой там арифметике.
Кроме того судя по ровным числам они эти числа берёт разве что с потолка.
Собирал астер без дебага -O3
Он что, и в правду такой тормозной стал после внедрения id кодировки вместо битовой маски?
Added after 1 hours 22 minutes:
Разобрался.
Разработчики лажанулись.
Несмотря на оставшуюся надпись "Translation times between formats (in microseconds) for one second of data"
это не время трансляции 1 сек данных между форматами, а значение из таблицы / 100.
Таблица в enum ast_trans_cost_table и фактически это веса качества преобразования.
Вот и получается, что перегнать любой беспотерьный формат в потерьный имеет "цену" преобразования
AST_TRANS_COST_LY_LL_ORIGSAMP = 900000
на реальное время преобразования все забили.
И как теперь подбирать уже собранные кодеки g72x не понятно.
Ещё обнаружилось, что во время, учитываемое в преобразование засчитывается время выделения и освобождения буферов.
Такой подход свои помехи тоже вносил.
_________________
Свежак chan_dongle тут https://github.com/bg111/asterisk-chan-dongle/
Читайте, дополняйте wiki http://wiki.e1550.mobi/
Смена IMEI Huawei E1550 E173 E1752 K3765 http://www.e1550.mobi/ от $1,521 за IMEI