]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
add pcap-extract.sh
authorAnthony Minessale <anthm@freeswitch.org>
Wed, 30 Mar 2016 22:41:31 +0000 (17:41 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Wed, 30 Mar 2016 22:41:31 +0000 (17:41 -0500)
support-d/utils/pcap-extract.sh [new file with mode: 0644]

diff --git a/support-d/utils/pcap-extract.sh b/support-d/utils/pcap-extract.sh
new file mode 100644 (file)
index 0000000..bd95c65
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+pcap=$1
+shift
+law=$1
+shift
+
+if [ -z $law ] ; then law="mu-law" ; fi
+
+for ssrc in $(tshark -n -r $pcap -Y rtp -T fields -e rtp.ssrc -Eseparator=, | sort -u) ; do
+    rm -f $pcap.$ssrc.raw $pcap.$ssrc.wav
+    sudo tshark -n -r $pcap -Y "rtp && rtp.ssrc == $ssrc" -T fields -e rtp.payload | sed "s/:/ /g" | perl -ne 's/([0-9a-f]{2})/print chr hex $1/gie' >>  $pcap.$ssrc.raw
+    sox -t raw -r 8000 -v 4 -c 1 -e $law $pcap.$ssrc.raw $pcap.$ssrc.wav
+done
+
+