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@gmail.com>
This commit is contained in:
parent
053900ca4c
commit
5776344a7b
@ -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;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user