Страница 1 из 2

Кодек для MOH

Добавлено: 12 апр 2012, 22:56
SuMiSc
В диалплане внутренние звонки происходят вот так

Код: Выделить всё

exten = _1XX,1,Dial(SIP/${EXTEN},60,tTm)
Ожидающий слушает музыку, вызываемый отвечает, музыка останавливается, они разговаривают. То есть все как надо.
Теперь о проблеме.
Если у вызывающего установлен кодек, отличный от вызываемого, во время проигрывания MOH в консоль сыпется вот такое вот

Код: Выделить всё

 WARNING[12907]: chan_sip.c:6343 sip_write: Asked to transmit frame type speex, while native formats is 0x8 (alaw) read/write = 0x8 (alaw)/0x8 (alaw)
При этом музыка играет, после ответа все друг друга слышат, и все остальное хорошо.

Если выключить MOH, то этих сообщений нет.
Все доступные Music On Hold File Packages скомпилированы.

Как можно это поправить?

Re: Кодек для MOH

Добавлено: 13 апр 2012, 00:13
ded
после ответа, когда все друг друга слышат
CLI>sip show channels
кодеки на плечах разговора разные?

Re: Кодек для MOH

Добавлено: 13 апр 2012, 07:35
Vlad1983
это просто уведомления можно не обращать внимания

Re: Кодек для MOH

Добавлено: 13 апр 2012, 12:20
Aven
Сконвертируйте музыку в нужные форматы и не будет выдаваться. Ну или просто отключите вывод сообщения.

Re: Кодек для MOH

Добавлено: 13 апр 2012, 12:27
Aven

Код: Выделить всё

# asterisk -rx 'file convert <file_in> <file_out>'

Код: Выделить всё

Usage: file convert <file_in> <file_out>
       Convert from file_in to file_out. If an absolute path
       is not given, the default Asterisk sounds directory
       will be used.

       Example:
           file convert tt-weasels.gsm tt-weasels.ulaw

Re: Кодек для MOH

Добавлено: 13 апр 2012, 12:32
ded
O! А шаблоны понимает?
file convert vm-*.alaw vm-*.ulaw ?

Re: Кодек для MOH

Добавлено: 13 апр 2012, 12:36
Aven
Нет, но можете предложить свой патч для исправления этого недоразумения :)

Re: Кодек для MOH

Добавлено: 13 апр 2012, 12:38
Vlad1983

Код: Выделить всё

#!/bin/bash



DIR=/var/lib/asterisk/moh/
FROM=gsm
TO=g729

cd ${DIR}

ls

for a in *.${FROM}; do
    BASE=$(basename "$a" .$FROM)
    asterisk -rx "file convert ${DIR}/${BASE}.${FROM} ${DIR}/${BASE}.${TO}"
done
					

Re: Кодек для MOH

Добавлено: 13 апр 2012, 12:40
ded
Да ну, проще скрипт наваять на bash если надо будет.
Хм, только пишу это - уже Vlad1983 тут как тут!

Re: Кодек для MOH

Добавлено: 13 апр 2012, 12:46
Vlad1983
именно этого никак
только глобально все