C2SoftFlacDec: add support to receive multiple CSDs
Bug: 184595426
Test: atest --iterations 10 android.mediav2.cts.CodecDecoderTest
Change-Id: I305d661656b3044aa840a5c9d550cb05a7b52b0f
diff --git a/media/codec2/components/flac/C2SoftFlacDec.cpp b/media/codec2/components/flac/C2SoftFlacDec.cpp
index e70c289..49892a4 100644
--- a/media/codec2/components/flac/C2SoftFlacDec.cpp
+++ b/media/codec2/components/flac/C2SoftFlacDec.cpp
@@ -221,6 +221,11 @@
uint8_t *input = const_cast<uint8_t *>(rView.data() + inOffset);
if (codecConfig) {
+ if (mHasStreamInfo) {
+ ALOGV("Ignore Codec Config");
+ fillEmptyWork(work);
+ return;
+ }
status_t decoderErr = mFLACDecoder->parseMetadata(input, inSize);
if (decoderErr != OK && decoderErr != WOULD_BLOCK) {
ALOGE("process: FLACDecoder parseMetaData returns error %d", decoderErr);