diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2019-11-17 17:32:09 +0300 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2022-01-08 01:04:24 +0300 |
commit | 068697556fc784e088b351f56df26fab04d503c2 (patch) | |
tree | 1eedf215ada4965bef7649a64f3061a245725599 /src/decode.c | |
parent | 36beb8185dd9de5450c9a4cbcd0d969901a6b0cc (diff) |
Add interface to output invisible (alt-ref) frames
Addresses part of #310.
Diffstat (limited to 'src/decode.c')
-rw-r--r-- | src/decode.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/decode.c b/src/decode.c index 6773b51..e0cc584 100644 --- a/src/decode.c +++ b/src/decode.c @@ -3493,7 +3493,9 @@ int dav1d_submit_frame(Dav1dContext *const c) { if (out_delayed->p.data[0]) { const unsigned progress = atomic_load_explicit(&out_delayed->progress[1], memory_order_relaxed); - if (out_delayed->visible && progress != FRAME_ERROR) { + if ((out_delayed->visible || c->output_invisible_frames) && + progress != FRAME_ERROR) + { dav1d_picture_ref(&c->out, &out_delayed->p); c->event_flags |= dav1d_picture_get_event_flags(out_delayed); } @@ -3667,7 +3669,7 @@ int dav1d_submit_frame(Dav1dContext *const c) { // move f->cur into output queue if (c->n_fc == 1) { - if (f->frame_hdr->show_frame) { + if (f->frame_hdr->show_frame || c->output_invisible_frames) { dav1d_picture_ref(&c->out, &f->sr_cur.p); c->event_flags |= dav1d_picture_get_event_flags(&f->sr_cur); } |