Playing audio file using sipp

梦想的初衷 提交于 2020-01-11 03:03:26

问题


So using a syntax like

../sipp -sn uac SERVER_IP -s DESTINATION_NUMBER -ap AUTH_PASSWORD -aa -m 1 -l 1 -d 10000

I am able to initiate a sip call. What I want to achieve is, after the callee picks the call, play a .wav file and terminate the call after the file is finished playing.

I want to achieve this using the command line arguments. Has someone done this before?


回答1:


The latest SIPp version (3.4) does now support direct RTP streaming, from a correctly-encoded WAV file.

You'll want to create a custom scenario file (using the -sd uac option to dump out the sample UAC scenario as a starting point) and add <action><exec rtp_stream="file.wav" /></action> inside the <recv response="200"></recv> XML block, to trigger that WAV file to be played over RTP when the 200 OK is received.

http://sipp.sourceforge.net/doc/reference.html#Media%2FRTP+commands has more details on setting this up (such as looping or non-PCMA payload types).

(I'm the current maintainer of SIPp.)




回答2:


SIPp supports the ability to send a stream of pre-recorded RTP packets via the exec play_pcap_audio directive. (See the built-in uac_pcap scenario as a model for your scenario.) The packets to be sent are stored in a file with PCAP format. The packets can be extracted from a Wireshark capture of a test call, for instance.

$ sipp -sf custom_with_pcap_audio.xml SERVER_IP -s DESTINATION_NUMBER -ap AUTH_PASSWORD -aa -m 1 -l 1 -d 10000

To create custom_with_pcap_audio.xml, start here:

$ sipp -sd uac_pcap > custom_with_pcap_audio.xml

then edit the scenario to refer to your pcap file (obtained via one of the techniques previously linked). You will also need to make the delay the appropriate length for your pcap recording (rather than the 10000 given in the example).



来源:https://stackoverflow.com/questions/20122607/playing-audio-file-using-sipp

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!