Ну вот и свершилось — начиная с пятницы у нас architecture freeze. То есть
серьзных изменений до выпуска 1.4 (в июле) больше не будет.
Из того, чего мы очень ждали за бортом остались:
– новый codec negotiation алгоритм, который должен был бы избавить от лишнего
транскодинга, увы, моя деятельность по продвижению успеха не принесла;
– packetization patch — возможность астериска отправлять пакеты блоками не
только по 20ms, но и больше;
– T.38 passthrow — увы, поддержки T.38, видимо, в релизе не будет, а очень
жаль;
Все три патча находятся сейчас в состоянии готовности к альфа-тестированию, и
не были приняты потому как не могут претендовать на большее;
Зато могу всех обрадовать async rtp, который я меньше всего ожидал увидеть в
релизе, таки был включен в svn head. Так что эта ценнейшая возможность, которой
мы ждем уже очень давно будет.
Перед самым фризом было добавлено множество изменений из
team/oej/test-this-branch, в основном касающиеся SIP-стека.
TC400P — DSP card для Asterisk
Начала всплывать ценная информация, по словам Kevin P. Fleming (kpfleming@) с
ближайшее время выйдет плата TC400Pб по ориентировочной розничной цене $1.999.
Она будет поддерживать транскодинг до 120 G.729 или G.723.1 каналов. С учетом
нынешних проблем с этими кодеками в Asterisk это большая радость — стоимость
получается 17$ на канал, при нынешней стоимости лицензии 10$/канал (при
обработке процессором).
Разное
rizzo активно ведет свою деятельность по улучшению качества кода Asterisk,
внося множество изменений, которые одновременно уменьшают количество кода, и
делают его гораздо более читабельным, я присоединился к этой работе в меру
своего времени. Заметная часть этих патчей слегка увеличивает
производительность (скажем я убрал в нескольких местах конструкции, в которых
подряд несколько раз производилось разыменовывание указателя).
Самые крупные изменения от rizzo — упрощение и багфиксы CLI completion, а
также изменение API для форматов/кодеков. Код стал компактнее и работоспособнее :) Также был интегрирован патчик #4277, на тему изменений в работе загрузчика;
Множество исправлений ошибок в IAX2-стеке, в том числе моих исправлений — пока
я искал причины падений Asterisk с IAX2 под нагрузкой, мне пришлось почитать
код. Читать его было немного неудобно, потому пришлось переделать для большей
читабельности — к счастью мои правки приняли;
Полный список исправлений в IAX2 приводить не буду — там множество мелких
изменений и фиксов от разных людей, и, в связи с общей нынешней нестабильностью
этого кода говорить о конкретных фиксах бессмысленно — просто падений должно
быть меньше.
Работа над фиксами сборки/работы на Solaris продолжается, видимо более-менее
успешно.
Коротко изменения в SIP-стеке
– Issue #6705
Implement option for allow/disallow subscriptions
Implement option for allow/disallow overlap dialling
Set default to disable overlap dialling in sip.conf.sample for new
installations
Remove overlap dialling from subscription logic
– Issue #5427
Enable videosupport per device
Implement maxcallbitrate setting for video calls
– Issue #6823 – Registration and port numbers.
– make 'sip show subscriptions' include context for subscribed hints
– Issue #6409 – Make calls to URI without username go to “s” extension