Let NetEq use the PLC output from a decoder

This change enables NetEq to use the packet concealment audio (aka
PLC) produced by a decoder. The change also includes a new API to the
AudioDecoder interface, which lets the decoder implementation generate
and deliver concealment audio.

Bug: webrtc:9180
Change-Id: Icaacebccf645d4694b0d2d6310f6f2c7132881c4
Reviewed-on: https://webrtc-review.googlesource.com/96340
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24738}
This commit is contained in:
Henrik Lundin
2018-09-05 18:14:52 +02:00
committed by Commit Bot
parent e899629be4
commit 00eb12a20c
18 changed files with 372 additions and 60 deletions

View File

@ -58,7 +58,8 @@ size_t Merge::Process(int16_t* input,
// Transfer input signal to an AudioMultiVector.
AudioMultiVector input_vector(num_channels_);
input_vector.PushBackInterleaved(input, input_length);
input_vector.PushBackInterleaved(
rtc::ArrayView<const int16_t>(input, input_length));
size_t input_length_per_channel = input_vector.Size();
assert(input_length_per_channel == input_length / num_channels_);