diff options
author | Andreas Rheinhardt <andreas.rheinhardt@gmail.com> | 2020-07-31 10:45:48 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@gmail.com> | 2020-08-01 19:08:11 +0200 |
commit | 15ef16dce8b69200a972a0ea6aa9026ab79e09ad (patch) | |
tree | a9423177accab4eb18d45735d9b2ebf34fbae90b /libavcodec | |
parent | 8129c32e488645db325263a6bee01311b83e7ed9 (diff) | |
download | ffmpeg-15ef16dce8b69200a972a0ea6aa9026ab79e09ad.tar.gz |
avcodec/g723_1enc: Avoid skip_put_bits()
If a bit is reserved, it matters very much what value it has, because
otherwise a decoder conforming to a future version of the standard might
interpret the output file in an unintended manner. This implies that
one must not use skip_put_bits() for it (which does not give any
guarantees wrt what ends up in the output (in case of a little-endian
bitstream writer (as here) it writes a 0 bit)); given that the reference
encoder as well as the earlier code write a zero bit at this place, the
new code does, too.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/g723_1enc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/g723_1enc.c b/libavcodec/g723_1enc.c index 592840566e..b2ba3c2230 100644 --- a/libavcodec/g723_1enc.c +++ b/libavcodec/g723_1enc.c @@ -1030,7 +1030,7 @@ static int pack_bitstream(G723_1_ChannelContext *p, AVPacket *avpkt) put_bits(&pb, 1, p->subframe[3].grid_index); if (p->cur_rate == RATE_6300) { - skip_put_bits(&pb, 1); /* reserved bit */ + put_bits(&pb, 1, 0); /* reserved bit */ /* Write 13 bit combined position index */ temp = (p->subframe[0].pulse_pos >> 16) * 810 + |