[FFmpeg-devel] [PATCH 4/4] avcodec/videotoolboxenc: fix error code
Steven Liu
lingjiujianke at gmail.com
Wed Jan 4 04:38:18 EET 2023
Zhao Zhili <quinkblack at foxmail.com> 于2023年1月4日周三 10:35写道:
>
> From: Zhao Zhili <zhilizhao at tencent.com>
>
> 1. Fix return 0 on success.
> 2. Fix return OS error code passthrough.
> ---
> libavcodec/videotoolboxenc.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
> index 3b00e542cb..56971471e4 100644
> --- a/libavcodec/videotoolboxenc.c
> +++ b/libavcodec/videotoolboxenc.c
> @@ -2555,6 +2555,7 @@ static int vtenc_populate_extradata(AVCodecContext *avctx,
> pool = VTCompressionSessionGetPixelBufferPool(vtctx->session);
> if(!pool){
> av_log(avctx, AV_LOG_ERROR, "Error getting pixel buffer pool.\n");
> + status = AVERROR_EXTERNAL;
> goto pe_cleanup;
> }
>
> @@ -2564,6 +2565,7 @@ static int vtenc_populate_extradata(AVCodecContext *avctx,
>
> if(status != kCVReturnSuccess){
> av_log(avctx, AV_LOG_ERROR, "Error creating frame from pool: %d\n", status);
> + status = AVERROR_EXTERNAL;
> goto pe_cleanup;
> }
>
> @@ -2581,7 +2583,7 @@ static int vtenc_populate_extradata(AVCodecContext *avctx,
> AV_LOG_ERROR,
> "Error sending frame for extradata: %d\n",
> status);
> -
> + status = AVERROR_EXTERNAL;
> goto pe_cleanup;
> }
>
> @@ -2589,8 +2591,10 @@ static int vtenc_populate_extradata(AVCodecContext *avctx,
> status = VTCompressionSessionCompleteFrames(vtctx->session,
> kCMTimeIndefinite);
>
> - if (status)
> + if (status) {
> + status = AVERROR_EXTERNAL;
> goto pe_cleanup;
> + }
>
> status = vtenc_q_pop(vtctx, 0, &buf, NULL);
> if (status) {
> --
> 2.35.3
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
LGTM
Thanks
Steven
More information about the ffmpeg-devel
mailing list