From patchwork Thu May 7 11:14:13 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 19528 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 5E21444984D for ; Thu, 7 May 2020 14:14:33 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 38C91689EBE; Thu, 7 May 2020 14:14:33 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pj1-f67.google.com (mail-pj1-f67.google.com [209.85.216.67]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 82EC26882B9 for ; Thu, 7 May 2020 14:14:26 +0300 (EEST) Received: by mail-pj1-f67.google.com with SMTP id q24so2483718pjd.1 for ; Thu, 07 May 2020 04:14:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=F1/UAg76Cx91seGu+irSDjvHwDuzPOeMhjWI6HgrDrw=; b=E7wQL9bARzBDOnYz1KSFFdoZIIjmkiIqgozNwzJMBVH+v98H8upJBIU6RAbhAsfG/3 YTpCdzEHzXs1rFM9enkJWo6p8FLwvpAFzSmbrYQJXgnaeOR37H3NsIt/evycwJAr1k+3 Wjat9MePHculijpAIFVr/YAGpAtRjIG+5SYEbXOK/sGxcuEWKe+xRlHCM4JD6umGFmGF FSyAif428Fl24g/5zFAe58LoWk6yQty4iaF4vSOnJkOAr9EqRRrJk6uoQxxANa1/cTel WyhN7mUvQscXFNKmZVhEwa+NH8Eo1zfFnnqvhLxwuhhAROW6cuuygCGxic6BfHOuXi6b OALA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=F1/UAg76Cx91seGu+irSDjvHwDuzPOeMhjWI6HgrDrw=; b=GC+S+cfJa2s+9WDYJOzuUDPiuZG3WTzQu6RHeC7mp9uB1h+/u4a2UkEFAd5vpYtTEc ARxbZrJGTCWqF61CaTQC8GQNtJQd3NIAW2xrDpUUaDh6VBYTda3igBusKzwslM8WR75E /L7uCgKlPm7Q6wV1C0GmI6WURcYJ7SN4iq82ztnMpAk3lmTc6VZmJWtZb0O67k1pSHt+ I5ojNVQ8cQ6zOURPkyoS3un92jQg/7CrnoyVIBHwN7m42q8hNykS3LoFSomicuaV0p6r UiDsAQWObROiwINGxVqFIxETjcvQ3iL7wwsWJRcff3qCGvygx6zb/56EFmskRgj6sfqa PArA== X-Gm-Message-State: AGi0PuYcqhThYk4f94cVrd5AN+S7kbA442JVvtVqfhSM8m+Onf1E6RUG DCfROsPzz4dbMKFOh1D0SoWrpgSL X-Google-Smtp-Source: APiQypLMiTKUlwPqAi4YLDnP+HQakfsikjj5UsrXxVibmdztV8BaSWz1G8ji7i4mWY6OQJhMgWd8Gg== X-Received: by 2002:a17:90a:b293:: with SMTP id c19mr15605128pjr.22.1588850064223; Thu, 07 May 2020 04:14:24 -0700 (PDT) Received: from vpn2.localdomain ([161.117.202.209]) by smtp.gmail.com with ESMTPSA id y10sm4507551pfb.53.2020.05.07.04.14.22 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 07 May 2020 04:14:23 -0700 (PDT) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 May 2020 19:14:13 +0800 Message-Id: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> X-Mailer: git-send-email 1.8.3.1 Subject: [FFmpeg-devel] [PATCH v2 1/5] avcodec/mpegvideo_enc: reindent code X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Limin Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Limin Wang Signed-off-by: Limin Wang --- libavcodec/mpegvideo_enc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index b2eb9cf..e1fd92c 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -596,8 +596,8 @@ FF_ENABLE_DEPRECATION_WARNINGS if ((s->codec_id == AV_CODEC_ID_WMV1 || s->codec_id == AV_CODEC_ID_WMV2) && avctx->width & 1) { - av_log(avctx, AV_LOG_ERROR, "width must be multiple of 2\n"); - return -1; + av_log(avctx, AV_LOG_ERROR, "width must be multiple of 2\n"); + return -1; } if ((s->avctx->flags & (AV_CODEC_FLAG_INTERLACED_DCT | AV_CODEC_FLAG_INTERLACED_ME)) && From patchwork Thu May 7 11:14:14 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 19529 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 6158944984D for ; Thu, 7 May 2020 14:14:35 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4B1D0689F10; Thu, 7 May 2020 14:14:35 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pj1-f66.google.com (mail-pj1-f66.google.com [209.85.216.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DBF89689250 for ; Thu, 7 May 2020 14:14:27 +0300 (EEST) Received: by mail-pj1-f66.google.com with SMTP id t9so2520332pjw.0 for ; Thu, 07 May 2020 04:14:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=x1JCNHiv86ehrWQPZ+3SO0/ltIkANaeyu3ZOfRi9FF8=; b=sQNgFpS2Svf22fwhvibeRHOS2mCfor31sXUEu5dmJByrFW+C9z4fVLuqml/BYWWEg0 7t04b/JfWp4yDB6zAsI1EhRnQlf6pGCaFzR0QdYzj2aCT7mkD0W7TN2cTt/qu/X73Gr7 Rb/Xp4Y06wN6Fy03G5ZKOk94qs2B2D/KP2XdNMdE5i5zEwdXvHYThEYyCTT3YupS4iRV Hg8TDfrRaw/SOW/wYstpHZEV0Krc8LDxfkmYQo4jC7XycPkbalpY8eDvQEELpSEw5Ihn iLzdwxAhQDu3socSIibv7e0vjiCuj2++n/pMfdWazYf+FAfucpVHJNjjrqcTumZmp9YR m4Xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=x1JCNHiv86ehrWQPZ+3SO0/ltIkANaeyu3ZOfRi9FF8=; b=aKpzn6d23942RDxOu8NfVG5Y5XNfmEf79dX+ZTYNCwuuz1QgKHFWqNOkrjnG7KfyOL spNMqS2O3Yp+z3B9DRzgYhpmNpiZe8IZoP/COB9v8M3iEBIFeZ5WFGCCdLMu+INgZXQD pu84SyzKfVzEv3Xnlkt3m63jTOc0A2shtrVAe6f4RsIBqbp9C63LbsMslSg5hkH6WGTC amy/zD199nyou8KH79S9ye+B6T5kH48Zg57x03DqlDH9zsxLdNCeB/SedXbF9Q90lhdZ uMEUXQo7R6mlDs8dk3Dr+zWNPrtXf7lyqrICVkmDE/MeNsuFwTvgZ1+6jCdNEFxgFPNA ZClA== X-Gm-Message-State: AGi0PuaHX/WxNJpygw14Ylv9dgkIpuvwtjF44HAacg5CKzPTfNjMzteK FzJ+ZscSjOoZYQ4wlZuP9iWOVzkc X-Google-Smtp-Source: APiQypLP+s0Md81gsQrXV6HaBKzbLJJA8oebYg9ZpETQR6v7B2YdQSEZbZceOWUSxCpdeCMqXUK7rQ== X-Received: by 2002:a17:902:b417:: with SMTP id x23mr12337326plr.51.1588850065812; Thu, 07 May 2020 04:14:25 -0700 (PDT) Received: from vpn2.localdomain ([161.117.202.209]) by smtp.gmail.com with ESMTPSA id y10sm4507551pfb.53.2020.05.07.04.14.24 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 07 May 2020 04:14:25 -0700 (PDT) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 May 2020 19:14:14 +0800 Message-Id: <1588850057-24236-2-git-send-email-lance.lmwang@gmail.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> References: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> Subject: [FFmpeg-devel] [PATCH v2 2/5] avcodec/mpegvideo_enc: return more specific error codes for ff_mpv_encode_init() X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Limin Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Limin Wang Signed-off-by: Limin Wang --- libavcodec/mpegvideo_enc.c | 85 +++++++++++++++++++++++----------------------- 1 file changed, 43 insertions(+), 42 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index e1fd92c..45aa82f 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -298,7 +298,7 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx) avctx->pix_fmt != AV_PIX_FMT_YUV422P) { av_log(avctx, AV_LOG_ERROR, "only YUV420 and YUV422 are supported\n"); - return -1; + return AVERROR(EINVAL); } break; case AV_CODEC_ID_MJPEG: @@ -322,13 +322,13 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx) if (!format_supported) { av_log(avctx, AV_LOG_ERROR, "colorspace not supported in jpeg\n"); - return -1; + return AVERROR(EINVAL); } break; default: if (avctx->pix_fmt != AV_PIX_FMT_YUV420P) { av_log(avctx, AV_LOG_ERROR, "only YUV420 is supported\n"); - return -1; + return AVERROR(EINVAL); } } @@ -456,7 +456,7 @@ FF_ENABLE_DEPRECATION_WARNINGS if ((!avctx->rc_max_rate) != (!avctx->rc_buffer_size)) { av_log(avctx, AV_LOG_ERROR, "Either both buffer size and max rate or neither must be specified\n"); - return -1; + return AVERROR(EINVAL); } if (avctx->rc_min_rate && avctx->rc_max_rate != avctx->rc_min_rate) { @@ -466,12 +466,12 @@ FF_ENABLE_DEPRECATION_WARNINGS if (avctx->rc_min_rate && avctx->rc_min_rate > avctx->bit_rate) { av_log(avctx, AV_LOG_ERROR, "bitrate below min bitrate\n"); - return -1; + return AVERROR(EINVAL); } if (avctx->rc_max_rate && avctx->rc_max_rate < avctx->bit_rate) { av_log(avctx, AV_LOG_ERROR, "bitrate above max bitrate\n"); - return -1; + return AVERROR(EINVAL); } if (avctx->rc_max_rate && @@ -485,7 +485,7 @@ FF_ENABLE_DEPRECATION_WARNINGS avctx->bit_rate * (int64_t)avctx->time_base.num > avctx->rc_buffer_size * (int64_t)avctx->time_base.den) { av_log(avctx, AV_LOG_ERROR, "VBV buffer too small for bitrate\n"); - return -1; + return AVERROR(EINVAL); } if (!s->fixed_qscale && @@ -511,18 +511,18 @@ FF_ENABLE_DEPRECATION_WARNINGS s->codec_id != AV_CODEC_ID_H263 && s->codec_id != AV_CODEC_ID_H263P && s->codec_id != AV_CODEC_ID_FLV1) { av_log(avctx, AV_LOG_ERROR, "4MV not supported by codec\n"); - return -1; + return AVERROR(EINVAL); } if (s->obmc && s->avctx->mb_decision != FF_MB_DECISION_SIMPLE) { av_log(avctx, AV_LOG_ERROR, "OBMC is only supported with simple mb decision\n"); - return -1; + return AVERROR(EINVAL); } if (s->quarter_sample && s->codec_id != AV_CODEC_ID_MPEG4) { av_log(avctx, AV_LOG_ERROR, "qpel not supported by codec\n"); - return -1; + return AVERROR(EINVAL); } if (s->max_b_frames && @@ -530,12 +530,12 @@ FF_ENABLE_DEPRECATION_WARNINGS s->codec_id != AV_CODEC_ID_MPEG1VIDEO && s->codec_id != AV_CODEC_ID_MPEG2VIDEO) { av_log(avctx, AV_LOG_ERROR, "B-frames not supported by codec\n"); - return -1; + return AVERROR(EINVAL); } if (s->max_b_frames < 0) { av_log(avctx, AV_LOG_ERROR, "max b frames must be 0 or positive for mpegvideo based encoders\n"); - return -1; + return AVERROR(EINVAL); } if ((s->codec_id == AV_CODEC_ID_MPEG4 || @@ -555,28 +555,28 @@ FF_ENABLE_DEPRECATION_WARNINGS (avctx->width > 2048 || avctx->height > 1152 )) { av_log(avctx, AV_LOG_ERROR, "H.263 does not support resolutions above 2048x1152\n"); - return -1; + return AVERROR(EINVAL); } if ((s->codec_id == AV_CODEC_ID_H263 || s->codec_id == AV_CODEC_ID_H263P) && ((avctx->width &3) || (avctx->height&3) )) { av_log(avctx, AV_LOG_ERROR, "w/h must be a multiple of 4\n"); - return -1; + return AVERROR(EINVAL); } if (s->codec_id == AV_CODEC_ID_MPEG1VIDEO && (avctx->width > 4095 || avctx->height > 4095 )) { av_log(avctx, AV_LOG_ERROR, "MPEG-1 does not support resolutions above 4095x4095\n"); - return -1; + return AVERROR(EINVAL); } if (s->codec_id == AV_CODEC_ID_MPEG2VIDEO && (avctx->width > 16383 || avctx->height > 16383 )) { av_log(avctx, AV_LOG_ERROR, "MPEG-2 does not support resolutions above 16383x16383\n"); - return -1; + return AVERROR(EINVAL); } if (s->codec_id == AV_CODEC_ID_RV10 && @@ -597,13 +597,13 @@ FF_ENABLE_DEPRECATION_WARNINGS s->codec_id == AV_CODEC_ID_WMV2) && avctx->width & 1) { av_log(avctx, AV_LOG_ERROR, "width must be multiple of 2\n"); - return -1; + return AVERROR(EINVAL); } if ((s->avctx->flags & (AV_CODEC_FLAG_INTERLACED_DCT | AV_CODEC_FLAG_INTERLACED_ME)) && s->codec_id != AV_CODEC_ID_MPEG4 && s->codec_id != AV_CODEC_ID_MPEG2VIDEO) { av_log(avctx, AV_LOG_ERROR, "interlacing not supported by codec\n"); - return -1; + return AVERROR(EINVAL); } #if FF_API_PRIVATE_OPT @@ -618,18 +618,18 @@ FF_ENABLE_DEPRECATION_WARNINGS && s->codec_id != AV_CODEC_ID_MPEG2VIDEO)) { av_log(avctx, AV_LOG_ERROR, "mpeg2 style quantization not supported by codec\n"); - return -1; + return AVERROR(EINVAL); } if ((s->mpv_flags & FF_MPV_FLAG_CBP_RD) && !avctx->trellis) { av_log(avctx, AV_LOG_ERROR, "CBP RD needs trellis quant\n"); - return -1; + return AVERROR(EINVAL); } if ((s->mpv_flags & FF_MPV_FLAG_QP_RD) && s->avctx->mb_decision != FF_MB_DECISION_RD) { av_log(avctx, AV_LOG_ERROR, "QP RD needs mbd=2\n"); - return -1; + return AVERROR(EINVAL); } if ((s->mpv_flags & FF_MPV_FLAG_QP_RD) && @@ -638,7 +638,7 @@ FF_ENABLE_DEPRECATION_WARNINGS // Used to produce garbage with MJPEG. av_log(avctx, AV_LOG_ERROR, "QP RD is no longer compatible with MJPEG or AMV\n"); - return -1; + return AVERROR(EINVAL); } #if FF_API_PRIVATE_OPT @@ -653,7 +653,7 @@ FF_ENABLE_DEPRECATION_WARNINGS av_log(avctx, AV_LOG_ERROR, "closed gop with scene change detection are not supported yet, " "set threshold to 1000000000\n"); - return -1; + return AVERROR(EINVAL); } if (s->avctx->flags & AV_CODEC_FLAG_LOW_DELAY) { @@ -662,12 +662,12 @@ FF_ENABLE_DEPRECATION_WARNINGS av_log(avctx, AV_LOG_ERROR, "low delay forcing is only available for mpeg2, " "set strict_std_compliance to 'unofficial' or lower in order to allow it\n"); - return -1; + return AVERROR(EINVAL); } if (s->max_b_frames != 0) { av_log(avctx, AV_LOG_ERROR, "B-frames cannot be used with low delay\n"); - return -1; + return AVERROR(EINVAL); } } @@ -675,7 +675,7 @@ FF_ENABLE_DEPRECATION_WARNINGS if (avctx->qmax > 28) { av_log(avctx, AV_LOG_ERROR, "non linear quant only supports qmax <= 28 currently\n"); - return -1; + return AVERROR(EINVAL); } } @@ -693,19 +693,19 @@ FF_ENABLE_DEPRECATION_WARNINGS (s->codec_id != AV_CODEC_ID_H263P)) { av_log(avctx, AV_LOG_ERROR, "multi threaded encoding not supported by codec\n"); - return -1; + return AVERROR(EINVAL); } if (s->avctx->thread_count < 1) { av_log(avctx, AV_LOG_ERROR, "automatic thread number detection not supported by codec, " "patch welcome\n"); - return -1; + return AVERROR(EINVAL); } if (!avctx->time_base.den || !avctx->time_base.num) { av_log(avctx, AV_LOG_ERROR, "framerate not set\n"); - return -1; + return AVERROR(EINVAL); } #if FF_API_PRIVATE_OPT @@ -755,7 +755,7 @@ FF_ENABLE_DEPRECATION_WARNINGS "the maximum admitted value for the timebase denominator " "is %d\n", s->avctx->time_base.num, s->avctx->time_base.den, (1 << 16) - 1); - return -1; + return AVERROR(EINVAL); } s->time_increment_bits = av_log2(s->avctx->time_base.den - 1) + 1; @@ -775,21 +775,22 @@ FF_ENABLE_DEPRECATION_WARNINGS case AV_CODEC_ID_AMV: s->out_format = FMT_MJPEG; s->intra_only = 1; /* force intra only for jpeg */ - if (!CONFIG_MJPEG_ENCODER || - ff_mjpeg_encode_init(s) < 0) - return -1; + if (!CONFIG_MJPEG_ENCODER) + return AVERROR(EINVAL); + if ((ret = ff_mjpeg_encode_init(s)) < 0) + return ret; avctx->delay = 0; s->low_delay = 1; break; case AV_CODEC_ID_H261: if (!CONFIG_H261_ENCODER) - return -1; + return AVERROR(EINVAL); if (ff_h261_get_picture_format(s->width, s->height) < 0) { av_log(avctx, AV_LOG_ERROR, "The specified picture size of %dx%d is not valid for the " "H.261 codec.\nValid sizes are 176x144, 352x288\n", s->width, s->height); - return -1; + return AVERROR(EINVAL); } s->out_format = FMT_H261; avctx->delay = 0; @@ -798,7 +799,7 @@ FF_ENABLE_DEPRECATION_WARNINGS break; case AV_CODEC_ID_H263: if (!CONFIG_H263_ENCODER) - return -1; + return AVERROR(EINVAL); if (ff_match_2uint16(ff_h263_format, FF_ARRAY_ELEMS(ff_h263_format), s->width, s->height) == 8) { av_log(avctx, AV_LOG_ERROR, @@ -806,7 +807,7 @@ FF_ENABLE_DEPRECATION_WARNINGS "the H.263 codec.\nValid sizes are 128x96, 176x144, " "352x288, 704x576, and 1408x1152. " "Try H.263+.\n", s->width, s->height); - return -1; + return AVERROR(EINVAL); } s->out_format = FMT_H263; avctx->delay = 0; @@ -892,7 +893,7 @@ FF_ENABLE_DEPRECATION_WARNINGS s->low_delay = 1; break; default: - return -1; + return AVERROR(EINVAL); } #if FF_API_PRIVATE_OPT @@ -913,8 +914,8 @@ FF_ENABLE_DEPRECATION_WARNINGS /* init */ ff_mpv_idct_init(s); - if (ff_mpv_common_init(s) < 0) - return -1; + if ((ret = ff_mpv_common_init(s)) < 0) + return ret; ff_fdctdsp_init(&s->fdsp, avctx); ff_me_cmp_init(&s->mecc, avctx); @@ -1020,8 +1021,8 @@ FF_ENABLE_DEPRECATION_WARNINGS 31, 0); } - if (ff_rate_control_init(s) < 0) - return -1; + if ((ret = ff_rate_control_init(s)) < 0) + return ret; #if FF_API_PRIVATE_OPT FF_DISABLE_DEPRECATION_WARNINGS From patchwork Thu May 7 11:14:15 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 19530 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 6FE8C44984D for ; Thu, 7 May 2020 14:14:36 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 535F368A0C7; Thu, 7 May 2020 14:14:36 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pj1-f65.google.com (mail-pj1-f65.google.com [209.85.216.65]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3D5E2689923 for ; Thu, 7 May 2020 14:14:29 +0300 (EEST) Received: by mail-pj1-f65.google.com with SMTP id h12so3724400pjz.1 for ; Thu, 07 May 2020 04:14:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=GMftz6teSM5sINp7I3Iih8990+cmkl9RNmerUxqiKXE=; b=NMaplYZgypA5tP8kgGukYEyVxeN/gl+eE8OVcONQXA3qYw61208iBFx4KUdoGn0ycB j4BoQELwUrgvwhF4t9X0NzCt6zNVTHDhseK/RuOBarWd0n35ov/WDF8vGaDSnpmDTKAe h0fvW82icmIQqCvah2+SkKTTz2WR+uIZVpvoWMQ8bcLV1zXWcWbhGt+5jnXmX04oEgtR OhxGIWHslCkGKusJeTrz+vfYwzz7kzU5ST4D6bjs5Ph4gryLbSYytrZgPF5RaJxSEcCG F/YRKOXL+f/Mt7RL482FdFVY6U3yLDsFWyGPummHPuQXIkemSvq8w4McuNNYCJKNTIma IRwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=GMftz6teSM5sINp7I3Iih8990+cmkl9RNmerUxqiKXE=; b=qd766Bo3HsOPbL+c7mOf4I0bhOUy5wJyBVg/O9LifU4j/uV568oUB7gEXvJhaDJKhy sePO8wTBAW4LubTeX32GRjA24a+D17VnZ3JBqR9AB09gghZHBT9YwtZC5/uwYazRkJan LdkDfdETUA2maXJxjeRa3mY7Fwf7D181357VZ4j65LfTb8gkX1awlE26xljcxNt3KERE nRhlr4UK8Y/t26w2WjrRl5u9RDW60mgC46mIZukWZu68ET2h9Dy7fpczF1wNYyaSB45E 8vdk5MVk1sXb7gZNCyqTdd2jE9Rjt0aaqMcOuKzA6LJ1HEmCIFe/O+F1X2db++Z5viAI v6aw== X-Gm-Message-State: AGi0PuYOIczbLaAybWXSFZ1qPFHijzwaobNu6i3m9Mm5WFkGLZ7A1gxH jjUPNMpM9icBsmIneHHvF1hZBOVy X-Google-Smtp-Source: APiQypJILmLuTl9exyDwSgv54EZS28LDxcmWHmL4Yqu4jERsudZkPW5HoKwhNdRkBKaoK7vBm8yjbA== X-Received: by 2002:a17:90b:b06:: with SMTP id bf6mr14531624pjb.179.1588850067428; Thu, 07 May 2020 04:14:27 -0700 (PDT) Received: from vpn2.localdomain ([161.117.202.209]) by smtp.gmail.com with ESMTPSA id y10sm4507551pfb.53.2020.05.07.04.14.26 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 07 May 2020 04:14:26 -0700 (PDT) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 May 2020 19:14:15 +0800 Message-Id: <1588850057-24236-3-git-send-email-lance.lmwang@gmail.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> References: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> Subject: [FFmpeg-devel] [PATCH v2 3/5] avcodec/mpeg12enc: return more specific error codes for encode_init() X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Limin Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Limin Wang Signed-off-by: Limin Wang --- libavcodec/mpeg12enc.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 643ba81..cab7076 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -139,16 +139,17 @@ static int find_frame_rate_index(MpegEncContext *s) static av_cold int encode_init(AVCodecContext *avctx) { + int ret; MpegEncContext *s = avctx->priv_data; - if (ff_mpv_encode_init(avctx) < 0) - return -1; + if ((ret = ff_mpv_encode_init(avctx)) < 0) + return ret; if (find_frame_rate_index(s) < 0) { if (s->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) { av_log(avctx, AV_LOG_ERROR, "MPEG-1/2 does not support %d/%d fps\n", avctx->time_base.den, avctx->time_base.num); - return -1; + return AVERROR(EINVAL); } else { av_log(avctx, AV_LOG_INFO, "MPEG-1/2 does not support %d/%d fps, there may be AV sync issues\n", @@ -159,7 +160,7 @@ static av_cold int encode_init(AVCodecContext *avctx) if (avctx->profile == FF_PROFILE_UNKNOWN) { if (avctx->level != FF_LEVEL_UNKNOWN) { av_log(avctx, AV_LOG_ERROR, "Set profile and level\n"); - return -1; + return AVERROR(EINVAL); } /* Main or 4:2:2 */ avctx->profile = s->chroma_format == CHROMA_420 ? FF_PROFILE_MPEG2_MAIN : FF_PROFILE_MPEG2_422; @@ -175,7 +176,7 @@ static av_cold int encode_init(AVCodecContext *avctx) if (avctx->profile != FF_PROFILE_MPEG2_HIGH && s->chroma_format != CHROMA_420) { av_log(avctx, AV_LOG_ERROR, "Only High(1) and 4:2:2(0) profiles support 4:2:2 color sampling\n"); - return -1; + return AVERROR(EINVAL); } if (avctx->width <= 720 && avctx->height <= 576) avctx->level = 8; /* Main */ @@ -205,7 +206,7 @@ static av_cold int encode_init(AVCodecContext *avctx) if (s->drop_frame_timecode && s->frame_rate_index != 4) { av_log(avctx, AV_LOG_ERROR, "Drop frame time code only allowed with 1001/30000 fps\n"); - return -1; + return AVERROR(EINVAL); } #if FF_API_PRIVATE_OPT From patchwork Thu May 7 11:14:16 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 19531 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 68C2544984D for ; Thu, 7 May 2020 14:14:38 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4EA0968A176; Thu, 7 May 2020 14:14:38 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pg1-f196.google.com (mail-pg1-f196.google.com [209.85.215.196]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 569AE68A0F8 for ; Thu, 7 May 2020 14:14:31 +0300 (EEST) Received: by mail-pg1-f196.google.com with SMTP id 207so2687083pgc.6 for ; Thu, 07 May 2020 04:14:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=1u3VFro4en/8JM/GNWBHnFMIZJyJl1xk1bGJ4SjGrNw=; b=Bg2XCdUz7YW5cGEqOBWhtLijcbhp2FjnYJYmFsQjexAb1T65QjlqFDqj4MNTyQFSIm 4kkwYiSBZMeiwymLT3urmNKirmPETmj39fCDJZyw16YJa1YOtZHI7WyJp8xsJollC+r5 +VtPThHiQ08KuQSqk7Jh40NvMBy1QObsjbMAI2JjBEyq0pbdyoZmEl9hnyyyxbmIDpAg hn/KS6cu7K84Z/aQpceWZhdXYbi0LRlCas0aIhsXrVx12KnUbCJiMW8aJh/X5a/Wax+F +Knim3rCIVbQ1fCiXFmiaz518ur9OJjLH0f2WmglpaaB+Tfo9FqBIWVLI6tFPulLJsIw nPdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=1u3VFro4en/8JM/GNWBHnFMIZJyJl1xk1bGJ4SjGrNw=; b=sqY7vSLOWSO/95GnZDR6z8u2iGuosNIxzXJ8P7vraa6RuS7L4cX2Bgl3EbrRN0/rXo GPbjvG9if1FLb6jtfSBmQFq+Lp9WQ8Anm7EvwMNzWQqcQPl3b6Xs2mR/Tz0egzlSbdpg sVU6TkKooB4FM0g8edCeLy3CuoNMDKskqZc3oDXykMT4Ubzp9GoY/yK2ZpQE5PDFENgY PZsnr3Z3nvrMWInoapzCaucvY2RR7FwfxCf0CzgpccqZDPQ4J16T1D8QVePZBhbKf75z YSOV4NLSoc/UcxJZfKFCJ9hhSSL6sEFFvRbcVqrxneuDwSSb+FPUEdO5e7n3672XvW6t mW8w== X-Gm-Message-State: AGi0PuarmwCyjs3I/4Qpbtek9RjSzuJrH984Qk5tYhy2TDTtmYbXfndB brft+ZNNGck/2qPkSRMRF1UPLEOl X-Google-Smtp-Source: APiQypJKsmZJBgQJAuppaeaC6mPTFiiFVV8Y4jKzwOe+7UKE0rbIkJSaYAfHHLpsmAYp+yL+oy04Lg== X-Received: by 2002:a63:750b:: with SMTP id q11mr10913677pgc.138.1588850068987; Thu, 07 May 2020 04:14:28 -0700 (PDT) Received: from vpn2.localdomain ([161.117.202.209]) by smtp.gmail.com with ESMTPSA id y10sm4507551pfb.53.2020.05.07.04.14.27 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 07 May 2020 04:14:28 -0700 (PDT) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 May 2020 19:14:16 +0800 Message-Id: <1588850057-24236-4-git-send-email-lance.lmwang@gmail.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> References: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> Subject: [FFmpeg-devel] [PATCH v2 4/5] avcodec/mpegvideo: return more specific error codes for ff_mpv_common_init() X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Limin Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Limin Wang Signed-off-by: Limin Wang --- libavcodec/mpegvideo.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index 22cab28..b5ddb1b 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -889,7 +889,7 @@ static void clear_context(MpegEncContext *s) */ av_cold int ff_mpv_common_init(MpegEncContext *s) { - int i, ret; + int i, ret = AVERROR(ENOMEM); int nb_slices = (HAVE_THREADS && s->avctx->active_thread_type & FF_THREAD_SLICE) ? s->avctx->thread_count : 1; @@ -907,7 +907,7 @@ av_cold int ff_mpv_common_init(MpegEncContext *s) if (s->avctx->pix_fmt == AV_PIX_FMT_NONE) { av_log(s->avctx, AV_LOG_ERROR, "decoding to AV_PIX_FMT_NONE is not supported.\n"); - return -1; + return AVERROR(EINVAL); } if (nb_slices > MAX_THREADS || (nb_slices > s->mb_height && s->mb_height)) { @@ -923,7 +923,7 @@ av_cold int ff_mpv_common_init(MpegEncContext *s) if ((s->width || s->height) && av_image_check_size(s->width, s->height, 0, s->avctx)) - return -1; + return AVERROR(EINVAL); dct_init(s); @@ -954,7 +954,7 @@ av_cold int ff_mpv_common_init(MpegEncContext *s) if (!s->new_picture.f) goto fail; - if (init_context_frame(s)) + if ((ret = init_context_frame(s))) goto fail; s->parse_context.state = -1; @@ -971,7 +971,7 @@ av_cold int ff_mpv_common_init(MpegEncContext *s) if (!s->thread_context[i]) goto fail; } - if (init_duplicate_context(s->thread_context[i]) < 0) + if ((ret = init_duplicate_context(s->thread_context[i])) < 0) goto fail; s->thread_context[i]->start_mb_y = (s->mb_height * (i) + nb_slices / 2) / nb_slices; @@ -979,7 +979,7 @@ av_cold int ff_mpv_common_init(MpegEncContext *s) (s->mb_height * (i + 1) + nb_slices / 2) / nb_slices; } } else { - if (init_duplicate_context(s) < 0) + if ((ret = init_duplicate_context(s)) < 0) goto fail; s->start_mb_y = 0; s->end_mb_y = s->mb_height; @@ -990,7 +990,7 @@ av_cold int ff_mpv_common_init(MpegEncContext *s) return 0; fail: ff_mpv_common_end(s); - return -1; + return ret; } /** From patchwork Thu May 7 11:14:17 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 19532 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id A575544984D for ; Thu, 7 May 2020 14:14:40 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 8BA9568A175; Thu, 7 May 2020 14:14:40 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f194.google.com (mail-pl1-f194.google.com [209.85.214.194]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8102D689FB2 for ; Thu, 7 May 2020 14:14:32 +0300 (EEST) Received: by mail-pl1-f194.google.com with SMTP id t7so1947231plr.0 for ; Thu, 07 May 2020 04:14:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=Q6102jn7yDum/mMikndZZBf1L6VvhneDDlZK87XKRGA=; b=UxcLPKnD0pJi6vkj1FLuZ4rVkUXUrWSVzQ1rrIRSTvPZ99hyQ+bg7sIgsuiDohgtgC O2JB8Qp5LITuS2tngVio9i/RCzrEc0FiFna5KqIGC/F9MJn6vP9XpF3OZojHoK+MODbg xiOMvK8vGin7BSAV6NVGH28GMANrQ5xAD8ELbwMhAVw+0ctmfjVMb3HN19WuUJknD/Oa Vblhjkfg3TGl0EI1OBL6vXq9KwIut58Rx7FcmD7y9OXCu4+2u5MTv2Y27D4A56B2H/aa jCNYuBRxsBgVOXl2rj+SHd6qNn8qp2FCDUOsRp0qU8ECjH/UFHiRtH2o3jFQmgFBYpCg dPHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=Q6102jn7yDum/mMikndZZBf1L6VvhneDDlZK87XKRGA=; b=nGSR1LV2R+l8h13MC0koQZS5mvlITMKTDlKB31CCrUk/0I+w4h+TPGl95dwtzn9Ajm nG51+g/sorakz2XOYnDafNW+shRFfcYnP4+e+kVaL/g2leBRkCFK3NyphZ+3XTwKzoL+ sHchzqs2coFaR+ylezBLx+cwFxo03Z1DlIX8AYwnwh1TPEfG5nSeBeyNZEf2QQONVgow 6wg2Y9i42jx1HQeTkP1LIaXzYf+d/24dIRZTQ6paW4EhdPLzc5BCN1Tz9exUY64aA/Ua 1otPzimYBpOnj4XtKhJfJwJ0YWKtjgYG1uAtaH/Z0Y5KSqHwXbVW0wllMEzs0hD+IoHj 2L2A== X-Gm-Message-State: AGi0PualJfox8Jbb2u83bqroBLEHgj8IKNIkawNEN66BZ7G3tCX34TA4 WUomIZp39JuVz11PwMMt+MyjTv3j X-Google-Smtp-Source: APiQypK61jADcVlO3h/TXY4PFNFqRAUWq6wasjwYxNxxuu/pLsoOA8ebBQs1X7BpXEPvwqko/waWdA== X-Received: by 2002:a17:90a:a40e:: with SMTP id y14mr15935707pjp.101.1588850070615; Thu, 07 May 2020 04:14:30 -0700 (PDT) Received: from vpn2.localdomain ([161.117.202.209]) by smtp.gmail.com with ESMTPSA id y10sm4507551pfb.53.2020.05.07.04.14.29 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 07 May 2020 04:14:30 -0700 (PDT) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 May 2020 19:14:17 +0800 Message-Id: <1588850057-24236-5-git-send-email-lance.lmwang@gmail.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> References: <1588850057-24236-1-git-send-email-lance.lmwang@gmail.com> Subject: [FFmpeg-devel] [PATCH v2 5/5] avcodec/mpegvideo: return more specific error codes for init_duplicate_context() X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Limin Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Limin Wang Signed-off-by: Limin Wang --- libavcodec/mpegvideo.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index b5ddb1b..8a74a45 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -359,7 +359,7 @@ static int init_duplicate_context(MpegEncContext *s) int y_size = s->b8_stride * (2 * s->mb_height + 1); int c_size = s->mb_stride * (s->mb_height + 1); int yc_size = y_size + 2 * c_size; - int i; + int i, ret = AVERROR(ENOMEM); if (s->mb_height & 1) yc_size += 2*s->b8_stride + 2*s->mb_stride; @@ -408,7 +408,7 @@ static int init_duplicate_context(MpegEncContext *s) return 0; fail: - return -1; // free() through ff_mpv_common_end() + return ret; // free() through ff_mpv_common_end() } static void free_duplicate_context(MpegEncContext *s)