diff options
author | Jiri Novak <j.novak@netsystem.cz> | 2016-12-13 13:28:30 +0100 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2016-12-15 05:16:29 +0000 |
commit | 9090afbfe9a4f9a422409c3f9d410bc3c14fc741 (patch) | |
tree | ba111a5eee19019502dc31a2095aaf52098d23db /wsutil | |
parent | 1afbab69956c32b341001dd20ff667036fe1f8f5 (diff) | |
download | wireshark-9090afbfe9a4f9a422409c3f9d410bc3c14fc741.tar.gz wireshark-9090afbfe9a4f9a422409c3f9d410bc3c14fc741.tar.bz2 wireshark-9090afbfe9a4f9a422409c3f9d410bc3c14fc741.zip |
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 <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'wsutil')
-rw-r--r-- | wsutil/pint.h | 3 |
1 files changed, 3 insertions, 0 deletions
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 */ |