[FFmpeg-cvslog] diracdec: fix original Dirac Low Delay profile
Rostislav Pehlivanov
git at videolan.org
Thu Jan 21 17:49:52 CET 2016
ffmpeg | branch: master | Rostislav Pehlivanov <atomnuker at gmail.com> | Thu Jan 21 16:46:41 2016 +0000| [5776344a7bc953cd93d1dd7762bd6f193378ed26] | committer: Rostislav Pehlivanov
diracdec: fix original Dirac Low Delay profile
The version structure in the main decoder context was not (and
apparently has never been) populated since it was added.
Still, having VC-2 break the existing Dirac Low Delay mode was odd and
easily avoidable had the specifications authors noticed/cared.
Signed-off-by: Rostislav Pehlivanov <atomnuker at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5776344a7bc953cd93d1dd7762bd6f193378ed26
---
libavcodec/diracdec.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libavcodec/diracdec.c b/libavcodec/diracdec.c
index 8ab4360..ca44e7b 100644
--- a/libavcodec/diracdec.c
+++ b/libavcodec/diracdec.c
@@ -2085,6 +2085,8 @@ static int dirac_decode_data_unit(AVCodecContext *avctx, const uint8_t *buf, int
avctx->level = dsh->level;
avctx->framerate = dsh->framerate;
s->bit_depth = dsh->bit_depth;
+ s->version.major = dsh->version.major;
+ s->version.minor = dsh->version.minor;
s->seq = *dsh;
av_freep(&dsh);
@@ -2143,6 +2145,7 @@ static int dirac_decode_data_unit(AVCodecContext *avctx, const uint8_t *buf, int
pic->avframe->key_frame = s->num_refs == 0; /* [DIRAC_STD] is_intra() */
pic->avframe->pict_type = s->num_refs + 1; /* Definition of AVPictureType in avutil.h */
+ /* VC-2 Low Delay has a different parse code than the Dirac Low Delay */
if (s->version.minor == 2 && parse_code == 0x88)
s->ld_picture = 1;
More information about the ffmpeg-cvslog
mailing list