aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-08-04 03:11:15 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-11-12 02:55:45 +0100
commit94541f5f76240dad953decc0b3dcdc782052c35b (patch)
treed3bee02867e5f4ebd5013d4f33424494f1336ab8
parent5e71f4aa6ad89dab73fd7cc30395c99ad2f11696 (diff)
downloadffmpeg-94541f5f76240dad953decc0b3dcdc782052c35b.tar.gz
avcodec/dcaenc: clear bitstream end
This avoids leaving uninitialized bits in the output Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit e322b7061f873e8fd33b9e518caa19b87616a528) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/dcaenc.c4
-rw-r--r--tests/fate/acodec.mak2
2 files changed, 5 insertions, 1 deletions
diff --git a/libavcodec/dcaenc.c b/libavcodec/dcaenc.c
index c8a215c200..1ea1481f33 100644
--- a/libavcodec/dcaenc.c
+++ b/libavcodec/dcaenc.c
@@ -938,6 +938,10 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
for (i = 0; i < SUBFRAMES; i++)
put_subframe(c, i);
+
+ for (i = put_bits_count(&c->pb); i < 8*c->frame_size; i++)
+ put_bits(&c->pb, 1, 0);
+
flush_put_bits(&c->pb);
avpkt->pts = frame->pts;
diff --git a/tests/fate/acodec.mak b/tests/fate/acodec.mak
index d693e9e65d..c1e4c4ea98 100644
--- a/tests/fate/acodec.mak
+++ b/tests/fate/acodec.mak
@@ -103,7 +103,7 @@ fate-acodec-dca: tests/data/asynth-44100-2.wav
fate-acodec-dca: SRC = tests/data/asynth-44100-2.wav
fate-acodec-dca: CMD = md5 -i $(TARGET_PATH)/$(SRC) -c:a dca -strict -2 -f dts -flags +bitexact
fate-acodec-dca: CMP = oneline
-fate-acodec-dca: REF = fe28cef432ed88de4ee01b87537fd2bd
+fate-acodec-dca: REF = c54ca9a13711755ef90fa143a9b38386
FATE_ACODEC-$(call ENCDEC, DCA, WAV) += fate-acodec-dca2
fate-acodec-dca2: CMD = enc_dec_pcm dts wav s16le $(SRC) -c:a dca -strict -2 -flags +bitexact