webrtc/modules/audio_coding/neteq/tools
Jakob Ivarsson e98954c35e Prevent updating state in the delay manager if the packet was reordered.
Currently, if the last packet was reordered (e.g. due to retransmission) then the next packet's inter-arrival time will be estimated incorrectly due to the jump in sequence numbers. This change prevents that by not resetting the stopwatch on reordered packets.

This will also better estimate inter-arrival times when we have multiple reordered packets in a burst. Currently we would only measure the iat of the first reordered packet correctly and not the ones coming after it.

There is a slight risk introducing this: If we would receive an out of order packet far into the future (in sequence numbers) and then continue getting packets in the normal order, then we would not update the current sequence number for these and incorrectly estimate their inter-arrival times since they would all be considered reordered.

Change-Id: Ic938a37cbddf1cb9c30b610218f56794568d3d01
Bug: webrtc:10178
Reviewed-on: https://webrtc-review.googlesource.com/c/119949
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26572}
2019-02-06 15:30:54 +00:00
..
audio_checksum.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
audio_loop.cc Delete unused includes of assert.h 2018-10-04 14:01:44 +00:00
audio_loop.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
audio_sink.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
audio_sink.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
constant_pcm_packet_source.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
constant_pcm_packet_source.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
DEPS Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
encode_neteq_input.cc Let NetEq use the PLC output from a decoder 2018-09-14 07:05:20 +00:00
encode_neteq_input.h Enable clang::find_bad_constructs for audio_coding (part 1/2). 2018-07-20 13:07:47 +00:00
fake_decode_from_file.cc Remove a legacy DCHEC in FakeDecodeFromFile. 2018-07-09 19:56:58 +00:00
fake_decode_from_file.h Implement PacketDuration() for FakeDecoderFromFile. 2018-06-29 08:32:36 +00:00
input_audio_file.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
input_audio_file.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
input_audio_file_unittest.cc Move some numeric utility code from rtc_base/ to rtc_base/numerics/ 2017-11-22 11:21:47 +00:00
neteq_delay_analyzer.cc Fix no_global_constructors/no_exit_time_destructors in Neteq. 2018-09-11 06:39:14 +00:00
neteq_delay_analyzer.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
neteq_event_log_input.cc RtcEventLogSource no longer uses deprecated parsing functions. 2018-10-11 16:13:17 +00:00
neteq_event_log_input.h RtcEventLogSource no longer uses deprecated parsing functions. 2018-10-11 16:13:17 +00:00
neteq_input.cc Make fewer copies when using StringBuilder. 2018-09-24 09:39:19 +00:00
neteq_input.h Remove unnecessary includes of common_types.h 2018-12-07 21:21:13 +00:00
neteq_packet_source_input.cc RtcEventLogSource no longer uses deprecated parsing functions. 2018-10-11 16:13:17 +00:00
neteq_packet_source_input.h RtcEventLogSource no longer uses deprecated parsing functions. 2018-10-11 16:13:17 +00:00
neteq_performance_test.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
neteq_performance_test.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
neteq_quality_test.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
neteq_quality_test.h Delete method DecoderDatabase::RegisterPayload(...NetEqDecoder...) 2019-01-11 07:39:45 +00:00
neteq_replacement_input.cc Avoid wrong parsing of padding length and its use in NetEq simulation. 2018-09-12 11:23:03 +00:00
neteq_replacement_input.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
neteq_rtpplay.cc Reland "Prefix flag macros with WEBRTC_." 2018-10-19 15:06:43 +00:00
neteq_stats_getter.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
neteq_stats_getter.h Adding NetEq lifetime stats to event log visualizer. 2018-06-26 11:27:09 +00:00
neteq_stats_plotter.cc Restructure neteq_rtpplay into a library with small executable wrapper. 2018-09-03 10:42:40 +00:00
neteq_stats_plotter.h Restructure neteq_rtpplay into a library with small executable wrapper. 2018-09-03 10:42:40 +00:00
neteq_test.cc Prevent updating state in the delay manager if the packet was reordered. 2019-02-06 15:30:54 +00:00
neteq_test.h Delete method DecoderDatabase::RegisterPayload(...NetEqDecoder...) 2019-01-11 07:39:45 +00:00
neteq_test_factory.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
neteq_test_factory.h Refactor NetEqTestFactory to not use "external" decoders 2018-12-21 15:05:03 +00:00
output_audio_file.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
output_wav_file.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
packet.cc RtcEventLogSource no longer uses deprecated parsing functions. 2018-10-11 16:13:17 +00:00
packet.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
packet_source.cc RtcEventLogSource no longer uses deprecated parsing functions. 2018-10-11 16:13:17 +00:00
packet_source.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
packet_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
resample_input_audio_file.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
resample_input_audio_file.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtc_event_log_source.cc Include absl/memory/memory.h if absl::make_unique is used 2019-01-08 20:08:32 +00:00
rtc_event_log_source.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_analyze.cc Reland "Prefix flag macros with WEBRTC_." 2018-10-19 15:06:43 +00:00
rtp_encode.cc Hide the AudioEncoderCng class behind a create function 2018-11-02 13:00:05 +00:00
rtp_file_source.cc RtcEventLogSource no longer uses deprecated parsing functions. 2018-10-11 16:13:17 +00:00
rtp_file_source.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_generator.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
rtp_generator.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_jitter.cc Reland "Prefix flag macros with WEBRTC_." 2018-10-19 15:06:43 +00:00
rtpcat.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00