Как мне использовать gstreamer для предоставления musiconhold в asterisk

#gstreamer #asterisk #sip #rtsp

#gstreamer #asterisk #sip #rtsp

Вопрос:

Я пытаюсь использовать gstreamer для захвата потока rtsp и сделать его доступным как musiconhold в asterisk, для которого требуется формат wav с частотой 8000 Гц.

Ответ №1:

Пользователь вводит следующую команду для отправки

 gst-launch-1.0 -v rtspsrc protocols=tcp location=rtsp://fqdn-example.com/stream uridecodebin0::source::latency=1000 ! decodebin ! deinterleave ! audioresample quality=10 ! audio/x-raw,rate=8000 ! udpsink host=1.2.3.4 port=1234
  

затем в musiconhold.conf

 [moh]
mode=custom
application=/usr/local/bin/socat -u udp4-recv:1234 -
  

возможно, вам потребуется установить команду socat. Вы можете поместить всю команду gst в приложение = но мне нравится иметь возможность управлять потоком из сеанса просмотра экрана. Если вы это сделаете, вам нужно будет добавить

 ! filesink location=/dev/stdout
  

вместо! udpsink…