Буквально вчера настраивал знакомым Asterisk как офисную АТС. Все как всегда прошло гладко, но что-то не сраслось с МОНом. Почему-то mp3 залитые на сервер не заиграли… И это навело меня на мысль, что при каждом проигрывании mp3 файла происходит его перекодирование, что не есть хорошо… Благо, что есть такая замечательная вещь как sox. Примитивый скриптик сделал перекодирование из mp3 в alaw (именно этот кодек использовался на *).

Создадим скрипт convert_mp3.sh:

#!/bin/bash
for i in *
do
fff=`echo $i | cut -d'.' -f1`
echo $fff
sox $i -r 8000 -c1 -ql $fff.al
mv $fff.al alaw/$fff.alaw
done

Итак, как этим пользоваться:

1) создаем папку, заливаем в нее свои mp3 файлы, convert_mp3.sh, там-же создаем папку alaw

2) запускаем convert_mp3.sh и терпеливо дожидаемся окончания работы скрипта.

3) забираем из папки alaw файлы для MOHа, которые уже не будут конвертироваться в момент проигрывания, и кладем их в нужную для asterisk-ка папку.

ВСЁ! Музон заиграл :)