webrtc/modules/audio_coding/neteq
Jakob Ivarsson b70a36e770 Require exact timestamp to be available when extracting multiple packets for decoding.
Removes the only remaining dependency on sequence number in NetEq
except for the NackTracker (which arguably doesn't belong in NetEq).

This fixes a potential issue where FEC is not perfectly aligned with
the original packet boundaries, causing both the FEC and the original
packet to be decoded.

Bug: webrtc:13322
Change-Id: I3abec9ebfc194976fca42d5f4f4ed4ee136f44ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/300560
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39815}
2023-04-11 16:41:30 +00:00
..
g3doc Reland "Migrate WebRTC documentation to new renderer" 2023-01-31 09:30:04 +00:00
mock Remove CNG state tracking from NetEq decision logic. 2023-03-17 15:00:17 +00:00
test Reland "[ACM] iSAC audio codec removed" 2022-11-17 12:52:35 +00:00
tools Refactor NetEq rtp dump input. 2023-04-11 14:32:35 +00:00
accelerate.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
accelerate.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
audio_decoder_unittest.cc Reland "[ACM] iSAC audio codec removed" 2022-11-17 12:52:35 +00:00
audio_multi_vector.cc Fix crash when appending empty array to AudioMultiVector. 2022-09-26 14:58:55 +00:00
audio_multi_vector.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
audio_multi_vector_unittest.cc Fix crash when appending empty array to AudioMultiVector. 2022-09-26 14:58:55 +00:00
audio_vector.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
audio_vector.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
audio_vector_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
background_noise.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
background_noise.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
background_noise_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
buffer_level_filter.cc Fix possible integer overflow. 2022-07-01 16:26:10 +00:00
buffer_level_filter.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
buffer_level_filter_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
comfort_noise.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
comfort_noise.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
comfort_noise_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
cross_correlation.cc Implement a Neon optimized function to find the argmax element in an array. 2021-01-21 13:42:34 +00:00
cross_correlation.h Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
decision_logic.cc Rewrite NetEq stable delay mode. 2023-03-31 14:47:55 +00:00
decision_logic.h Rewrite NetEq stable delay mode. 2023-03-31 14:47:55 +00:00
decision_logic_unittest.cc Include packet waiting time in concealment decision. 2023-03-24 13:18:58 +00:00
decoder_database.cc Adopt absl::string_view in modules/audio_coding/ 2022-07-20 13:34:23 +00:00
decoder_database.h Adopt absl::string_view in modules/audio_coding/ 2022-07-20 13:34:23 +00:00
decoder_database_unittest.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
default_neteq_factory.cc Clean up the NetEqFactory API. 2019-11-29 14:04:44 +00:00
default_neteq_factory.h Clean up the NetEqFactory API. 2019-11-29 14:04:44 +00:00
delay_manager.cc Implement RTCInboundRTPStreamStats.JitterBufferMinimumDelay 2022-07-20 09:14:03 +00:00
delay_manager.h Implement RTCInboundRTPStreamStats.JitterBufferMinimumDelay 2022-07-20 09:14:03 +00:00
delay_manager_unittest.cc Use packet arrival history in delay manager. 2022-05-25 20:03:31 +00:00
dsp_helper.cc Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
dsp_helper.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
dsp_helper_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
dtmf_buffer.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
dtmf_buffer.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
dtmf_buffer_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
dtmf_tone_generator.cc Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
dtmf_tone_generator.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
dtmf_tone_generator_unittest.cc Remove simple stringstream usages. 2018-09-06 12:53:19 +00:00
expand.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
expand.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
expand_uma_logger.cc Adopt absl::string_view in modules/audio_coding/ 2022-07-20 13:34:23 +00:00
expand_uma_logger.h Adopt absl::string_view in modules/audio_coding/ 2022-07-20 13:34:23 +00:00
expand_unittest.cc Fix -Wunused-but-set-variable. 2021-10-28 12:53:49 +00:00
histogram.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
histogram.h Improve adaptation to reordered packets in delay manager. 2021-09-08 16:41:27 +00:00
histogram_unittest.cc Remove inter-arrival delay mode from DelayManager. 2020-01-08 13:20:36 +00:00
merge.cc Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
merge.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
merge_unittest.cc Fixing a buffer overflow in Merge::Downsample 2019-11-25 12:16:30 +00:00
nack_tracker.cc Remove decoded timestamp extrapolation from NackTracker. 2023-03-28 12:33:42 +00:00
nack_tracker.h Remove decoded timestamp extrapolation from NackTracker. 2023-03-28 12:33:42 +00:00
nack_tracker_unittest.cc Remove decoded timestamp extrapolation from NackTracker. 2023-03-28 12:33:42 +00:00
neteq_decoder_plc_unittest.cc Revert "Unifying the handling of the events in NetEqInput." 2023-03-29 08:01:46 +00:00
neteq_impl.cc Require exact timestamp to be available when extracting multiple packets for decoding. 2023-04-11 16:41:30 +00:00
neteq_impl.h Count type of concealment based on last decoded type. 2023-03-29 14:34:57 +00:00
neteq_impl_unittest.cc Remove CNG state tracking from NetEq decision logic. 2023-03-17 15:00:17 +00:00
neteq_network_stats_unittest.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
neteq_stereo_unittest.cc NetEq: Fix bug in PLC for multi-channel audio 2019-12-02 17:44:58 +00:00
neteq_unittest.cc Refactor NetEq rtp dump input. 2023-04-11 14:32:35 +00:00
neteq_unittest.proto Delete unused NetEq stats currentPacketLossRate, currentDiscardRate and addedSamples 2020-09-21 12:19:16 +00:00
normal.cc LSC: Apply clang-tidy's modernize-use-bool-literals 2022-01-24 20:42:01 +00:00
normal.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
normal_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
packet.cc Reland "Reland "Add plumbing of RtpPacketInfos to each AudioFrame as input for SourceTracker."" 2019-07-24 16:47:13 +00:00
packet.h Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
packet_arrival_history.cc [Unwrap] Migrate PacketArrivalHistory to RtpTimestampUnwrapper 2023-01-09 16:34:29 +00:00
packet_arrival_history.h [Unwrap] Migrate PacketArrivalHistory to RtpTimestampUnwrapper 2023-01-09 16:34:29 +00:00
packet_arrival_history_unittest.cc [Unwrap] Migrate PacketArrivalHistory to RtpTimestampUnwrapper 2023-01-09 16:34:29 +00:00
packet_buffer.cc Include packet waiting time in concealment decision. 2023-03-24 13:18:58 +00:00
packet_buffer.h Include packet waiting time in concealment decision. 2023-03-24 13:18:58 +00:00
packet_buffer_unittest.cc Include packet waiting time in concealment decision. 2023-03-24 13:18:58 +00:00
post_decode_vad.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
post_decode_vad.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
post_decode_vad_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
preemptive_expand.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
preemptive_expand.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
random_vector.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
random_vector.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
random_vector_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
red_payload_splitter.cc RtpPacketInfo: new ctor + deprecated ctors clean-up 2022-09-20 08:58:38 +00:00
red_payload_splitter.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
red_payload_splitter_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
reorder_optimizer.cc Improve adaptation to reordered packets in delay manager. 2021-09-08 16:41:27 +00:00
reorder_optimizer.h Improve adaptation to reordered packets in delay manager. 2021-09-08 16:41:27 +00:00
reorder_optimizer_unittest.cc Improve adaptation to reordered packets in delay manager. 2021-09-08 16:41:27 +00:00
statistics_calculator.cc Adopt absl::string_view in modules/audio_coding/ 2022-07-20 13:34:23 +00:00
statistics_calculator.h Adopt absl::string_view in modules/audio_coding/ 2022-07-20 13:34:23 +00:00
statistics_calculator_unittest.cc Rename discarded_primary_packets to packets_discarded. 2022-05-31 13:24:24 +00:00
sync_buffer.cc Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
sync_buffer.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
sync_buffer_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
time_stretch.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
time_stretch.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
time_stretch_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
timestamp_scaler.cc Use backticks not vertical bars to denote variables in comments for /modules/audio_coding 2021-08-02 10:45:40 +00:00
timestamp_scaler.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
timestamp_scaler_unittest.cc Update modules/ to not use implicit conversion from scoped_refptr<T> to T*. 2022-04-21 14:23:24 +00:00
underrun_optimizer.cc Reland "Remove legacy delay manger field trial and update default config." 2021-11-09 14:49:56 +00:00
underrun_optimizer.h Refactor delay manager. 2021-09-07 13:45:47 +00:00
underrun_optimizer_unittest.cc Refactor delay manager. 2021-09-07 13:45:47 +00:00