mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/libdav1d: don't depend on the event flags API to init sequence params the first time
A bug was found in dav1d <= 1.0.0 where the event flag New Sequence Header would not be signaled for some samples using delayed random access points. It has since been fixed, but nonetheless it's best to ensure the AVCodecContext is filled with parameters when parsing the first frame, regardless of what events were signaled. Fixes ticket #9694. Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
parent
e3c4442b24
commit
3e186148ca
|
@ -382,7 +382,8 @@ static int libdav1d_receive_frame(AVCodecContext *c, AVFrame *frame)
|
|||
|
||||
#if FF_DAV1D_VERSION_AT_LEAST(5,1)
|
||||
dav1d_get_event_flags(dav1d->c, &event_flags);
|
||||
if (event_flags & DAV1D_EVENT_FLAG_NEW_SEQUENCE)
|
||||
if (c->pix_fmt == AV_PIX_FMT_NONE ||
|
||||
event_flags & DAV1D_EVENT_FLAG_NEW_SEQUENCE)
|
||||
#endif
|
||||
libdav1d_init_params(c, p->seq_hdr);
|
||||
res = ff_decode_frame_props(c, frame);
|
||||
|
|
Loading…
Reference in New Issue