This is an automated email from the git hooks/post-receive script.
Git pushed a commit to branch master
in repository ffmpeg.
The following commit(s) were added to refs/heads/master by this push:
new d013863f00 avcodec/lcevcdec: poll on LCEVC_Again from
LCEVC_ReceiveDecoderPicture
d013863f00 is described below
commit d013863f004edc26115189ad273217535272a3a9
Author: Peter von Kaenel <[email protected]>
AuthorDate: Mon Apr 6 10:32:20 2026 -0400
Commit: James Almer <[email protected]>
CommitDate: Thu Apr 16 17:19:28 2026 -0300
avcodec/lcevcdec: poll on LCEVC_Again from LCEVC_ReceiveDecoderPicture
The V-Nova LCEVC pipeline processes frames on internal background
worker threads. LCEVC_ReceiveDecoderPicture returns LCEVC_Again (-1)
when the worker has not yet completed the frame, which is the
documented "not ready, try again" response. The original code treated
any non-zero return as a fatal error (AVERROR_EXTERNAL), causing decode
to abort mid-stream.
Poll until LCEVC_Success or a genuine error is returned.
Signed-off-by: Peter von Kaenel <[email protected]>
Signed-off-by: James Almer <[email protected]>
---
libavcodec/lcevcdec.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavcodec/lcevcdec.c b/libavcodec/lcevcdec.c
index 9cc23f7f10..722da8cdaf 100644
--- a/libavcodec/lcevcdec.c
+++ b/libavcodec/lcevcdec.c
@@ -199,7 +199,9 @@ static int generate_output(void *logctx, FFLCEVCFrame
*frame_ctx, AVFrame *out)
LCEVC_PictureHandle picture;
LCEVC_ReturnCode res;
- res = LCEVC_ReceiveDecoderPicture(lcevc->decoder, &picture, &info);
+ do {
+ res = LCEVC_ReceiveDecoderPicture(lcevc->decoder, &picture, &info);
+ } while (res == LCEVC_Again);
if (res != LCEVC_Success)
return AVERROR_EXTERNAL;
_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]