[FFmpeg-cvslog] avcodec/dcaenc: clear bitstream end
Michael Niedermayer
git at videolan.org
Thu Aug 20 14:53:51 CEST 2015
ffmpeg | branch: release/2.4 | Michael Niedermayer <michael at niedermayer.cc> | Tue Aug 4 03:11:15 2015 +0200| [595af5a036f45870217b936323a71fa71b341d53] | committer: Michael Niedermayer
avcodec/dcaenc: clear bitstream end
This avoids leaving uninitialized bits in the output
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit e322b7061f873e8fd33b9e518caa19b87616a528)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=595af5a036f45870217b936323a71fa71b341d53
---
libavcodec/dcaenc.c | 4 ++++
tests/fate/acodec.mak | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/libavcodec/dcaenc.c b/libavcodec/dcaenc.c
index 905cdc9..182494a 100644
--- a/libavcodec/dcaenc.c
+++ b/libavcodec/dcaenc.c
@@ -939,6 +939,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 325bbd9..37fc688 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
More information about the ffmpeg-cvslog
mailing list