Despues de descargar un sin numeros de herramientas en windows y probar herramientas de convesion online para convertir archivos MP3 a un formato entendible por Asterisk como ULAW, GSM, SLN. Y ver que ningunos de estos recursos me funcionaban me decidi por ir a mi biblia de referencia en Asterisk. El maravilloso libro Asterisk The Definitive Guide. Aqui encontre la solucion de una manera muy sencilla aqui les detallo los pasos :
1- Instalamos el SOX
apt-get install sox libsox-fmt-all
apt-get install libsox-fmt-mp3
Crear una carpeta que tendra nuestra musica en hold en el directorio
/var/lib/asterisk/moh
en mi caso cree una carpeta llamada u la ruta seria ya /var/lib/asterisk/moh/u
copiamos nuestros archivos mp3 a la carpeta
/var/lib/asterisk/moh/u
puedes hacerlo de manera grafica desde windows con la herramienta winscp
suponamos que ya dentro del directorio /var/lib/asterisk/moh/u
hemos copiado un
archivo llamado heal.mp3 lo unico que tenemos que
hacer es correr el siguiente
comando :
sox heal.mp3 -t raw -r 8000 -s -2 -c 1 heal.sln
Si es un archivo wav
sox ivr-1.wav -t raw -r 8000 -s -2 -c 1 ivr-1.sln
MP3 to WAV
sox <input-file>.mp3 -c1 -r 8000 <output-file>.wav
Nuevas versiones de Sox hay que remove -s y -2
sox heal.mp3 -t raw -r 8000 -c 1 heal.sln
listo ya tienes solo tiens que editar tu archivo musiconhold.conf
cambiando esta entrada por ejemplo
[default]
mode=files
directory=moh/u
esto cambiara la musica por defecto en espea de asterisk a la musica
que hemos convertido
previamente con sox
para probar puedes agregar la siguiente entrada en extensions.conf
[musica-hold]
exten=>_301,1,Answer()
exten=>_301,n,SetMusicOnHold(default)
exten=>_301,n,MusicOnHold()
exten=>_301,n,Hangup()
;luego marcas desde un telefono 301 y listo esto tambien lo puedes usar para
crear archivos de audios para IVR o cualquier otro uso.
Es solo ya convertido el archivo copiarlo
a la carpeta de sonidos de Asterisk /var/lib/asterisk/sounds
y llamarlo desde nuestro dial plan ejemplo
[ivr]
exten=>_300,1,Answer()
same=>n,PlayBack(mensaje)
same=>n,Hangup()
;nota solo tenemos que poner el archivo
no necesitamos agregar la extension del archivo de audio
http://www.online-convert.com/
mp3.io
listo ya tienes solo tiens que editar tu archivo musiconhold.conf
cambiando esta entrada por ejemplo
[default]
mode=files
directory=moh/u
esto cambiara la musica por defecto en espea de asterisk a la musica
que hemos convertido
previamente con sox
para probar puedes agregar la siguiente entrada en extensions.conf
[musica-hold]
exten=>_301,1,Answer()
exten=>_301,n,SetMusicOnHold(default)
exten=>_301,n,MusicOnHold()
exten=>_301,n,Hangup()
;luego marcas desde un telefono 301 y listo esto tambien lo puedes usar para
crear archivos de audios para IVR o cualquier otro uso.
Es solo ya convertido el archivo copiarlo
a la carpeta de sonidos de Asterisk /var/lib/asterisk/sounds
y llamarlo desde nuestro dial plan ejemplo
[ivr]
exten=>_300,1,Answer()
same=>n,PlayBack(mensaje)
same=>n,Hangup()
;nota solo tenemos que poner el archivo
no necesitamos agregar la extension del archivo de audio
http://www.online-convert.com/
mp3.io
sox ivr-1.wav -t raw -r 8000 -s -2 -c 1 ivr-1.sln
ResponderEliminarSome old version use the 2 option instead of 2
ResponderEliminarsox foo-in.wav -t raw -r 8000 -s -w -c 1 foo-out.sln