From 9090afbfe9a4f9a422409c3f9d410bc3c14fc741 Mon Sep 17 00:00:00 2001 From: Jiri Novak Date: Tue, 13 Dec 2016 13:28:30 +0100 Subject: Save RTP audio to file: RTP Stream Analysis dialog allows save audio for non G.711 codecs and mixed codecs - spaghetti code for save was split into separate functions - code saves G.711 only, all other codecs are saved as silence with correct duration - code is ready to include other codecs - code supports 8000 Hz sampling rate only, other rates are rejected with warning - bidirectional stream (forward and reverse) creates stereo .au file - output is based on timestamps in RTP streams - save operation is slower than before because it is set of seek() - one per each codec sample - code allows align of save audio: - as it is - each stream is saved from its beginning, no aling - to start of each other - later stream is prepended with silence - align saved audio to beginning of capture file - each stream is prepended with silence - save to raw works correctly now - only payload is saved - old code was inserting G.711 silence time to time to raw data Bug: 13242 Change-Id: I74d02a1cc1c75acf9ffe930d078c00a0555cbfb6 Reviewed-on: https://code.wireshark.org/review/19245 Petri-Dish: Anders Broman Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman --- wsutil/pint.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'wsutil') diff --git a/wsutil/pint.h b/wsutil/pint.h index 80dd4e0d3e..02012537ee 100644 --- a/wsutil/pint.h +++ b/wsutil/pint.h @@ -137,4 +137,7 @@ ((guint8*)(p))[3] = (guint8)((v) >> 0); \ } +/* Subtract two guint32s with respect to wraparound */ +#define guint32_wraparound_diff(higher, lower) ((higher>lower)?(higher-lower):(higher+0xffffffff-lower+1)) + #endif /* PINT_H */ -- cgit v1.2.1