diff options
-rw-r--r-- | source/blender/blenkernel/intern/sequencer.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/sequencer.c b/source/blender/blenkernel/intern/sequencer.c index 76527d9fcf3..903c660dc97 100644 --- a/source/blender/blenkernel/intern/sequencer.c +++ b/source/blender/blenkernel/intern/sequencer.c @@ -2758,12 +2758,19 @@ static ImBuf *do_render_strip_uncached(const SeqRenderData *context, Sequence *s seq_open_anim_file(seq); if (seq->anim) { + IMB_Proxy_Size proxy_size = seq_rendersize_to_proxysize(context->preview_render_size); IMB_anim_set_preseek(seq->anim, seq->anim_preseek); ibuf = IMB_anim_absolute(seq->anim, nr + seq->anim_startofs, seq->strip->proxy ? seq->strip->proxy->tc : IMB_TC_RECORD_RUN, - seq_rendersize_to_proxysize(context->preview_render_size)); + proxy_size); + /* fetching for requested proxy sze failed, try fetching the original isntead */ + if (!ibuf && proxy_size != IMB_PROXY_NONE) { + ibuf = IMB_anim_absolute(seq->anim, nr + seq->anim_startofs, + seq->strip->proxy ? seq->strip->proxy->tc : IMB_TC_RECORD_RUN, + IMB_PROXY_NONE); + } if (ibuf) { BKE_sequencer_imbuf_to_sequencer_space(context->scene, ibuf, false); |