From patchwork Wed Dec 13 18:26:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marton Balint X-Patchwork-Id: 45113 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp4465888pzf; Wed, 13 Dec 2023 10:27:15 -0800 (PST) X-Google-Smtp-Source: AGHT+IGw+HwSDdy8IgaAy6s7IY/3eyA4igY8oLwDNeWwQ1s7H4AxO8zBGrgwyJax9zxeuWD5L09e X-Received: by 2002:ac2:5ed1:0:b0:50b:f380:5fa6 with SMTP id d17-20020ac25ed1000000b0050bf3805fa6mr3993991lfq.89.1702492034918; Wed, 13 Dec 2023 10:27:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702492034; cv=none; d=google.com; s=arc-20160816; b=RYJHdDIz6KBXIhr7F8nguRttKpA0N8T9725wQIt5wmeM5puzH2nOMEPU0g4zfkVPR0 Djf4Dt8WrR66D2+bxilaeXHFIdOUWvLmTHsv8mDtGBczpt0P9EuCmH59a3g0I96vJ+8A P2SDM4Tjp5aNoUqO8R58J2gwpuwrswlGp+6blnv4bOGYBKASALAvb+YjpDNr7AVLlWRY udJW2+QthieOKZWtE+O37crpqeh6envxTVEg2g2WAvXtJIrIiNzYik6fAcTUB7dDaiz3 dzbqLpV9/sqpbuQ5Q+y3cM4+AfE9kSeYh7BjQswDf0ZUFRgWkADb04v6zsGHdnAvrVX/ zRiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to:from :delivered-to; bh=AHbfLCxt7PmtfckQ3YkjnxQXJ3duUScAw+9Pot4kNOQ=; fh=s+G8Ss4JbeMFkWPSp2LmIH/LXFyBlALRiww1j3FPjHY=; b=mPQnw9vXWiS566uzGEtRxuk3D7WLaHdPMHvfwN+3WlyVEg6fkaY+0c3Ib0ZXNkxF+E AxENqD0RGZhCBMwc6TdrtyWu+BrFV66ECQ6PeosxtCoahGHx/aQiHAwwwTo0NNEGvACJ nEL/eOGJdgsB4W6oYxrU7uvR7uXcSpJyd7o+IktUPVwOTk1iky1w0kUcvrmh3U6jCCrb 5REQbrmBj863vUzNXYDIShHH7aX6q+W/1IAiNIOlge6ngiyvo95ZPNONVcq/jYjmc9sQ K7m/pjFHyfIGP/dGIPMhXRyAlngR4Yfi2q9uEo+3bn5TJmru0LzSaTfWSBNadiUT8n9o REqw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id f25-20020a50d559000000b005522b430444si524457edj.651.2023.12.13.10.27.14; Wed, 13 Dec 2023 10:27:14 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 36A4E68D040; Wed, 13 Dec 2023 20:27:11 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from iq.passwd.hu (iq.passwd.hu [217.27.212.140]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 309E868D007 for ; Wed, 13 Dec 2023 20:27:04 +0200 (EET) Received: from localhost (localhost [127.0.0.1]) by iq.passwd.hu (Postfix) with ESMTP id 18B3FE9A07; Wed, 13 Dec 2023 19:27:04 +0100 (CET) X-Virus-Scanned: amavisd-new at passwd.hu Received: from iq.passwd.hu ([127.0.0.1]) by localhost (iq.passwd.hu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1EIfBkxjDohu; Wed, 13 Dec 2023 19:27:01 +0100 (CET) Received: from bluegene.passwd.hu (localhost [127.0.0.1]) by iq.passwd.hu (Postfix) with ESMTP id 97B8AE9A01; Wed, 13 Dec 2023 19:27:01 +0100 (CET) From: Marton Balint To: ffmpeg-devel@ffmpeg.org Date: Wed, 13 Dec 2023 19:26:56 +0100 Message-Id: <20231213182657.9190-1-cus@passwd.hu> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] avcodec/mjpegdec: use memset to clear alpha X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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: Marton Balint Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: Bic2UTNuE96i Signed-off-by: Marton Balint --- libavcodec/mjpegdec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c index 8676155ecf..8191606f43 100644 --- a/libavcodec/mjpegdec.c +++ b/libavcodec/mjpegdec.c @@ -2793,8 +2793,8 @@ the_end: dst[0][j] = g*257 >> 16; dst[1][j] = b*257 >> 16; dst[2][j] = r*257 >> 16; - dst[3][j] = 255; } + memset(dst[3], 255, w); } } if (s->adobe_transform == 2 && s->avctx->pix_fmt == AV_PIX_FMT_YUVA444P) { @@ -2816,8 +2816,8 @@ the_end: dst[0][j] = r*257 >> 16; dst[1][j] = (g*257 >> 16) + 128; dst[2][j] = (b*257 >> 16) + 128; - dst[3][j] = 255; } + memset(dst[3], 255, w); } } From patchwork Wed Dec 13 18:26:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marton Balint X-Patchwork-Id: 45114 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp4465962pzf; Wed, 13 Dec 2023 10:27:23 -0800 (PST) X-Google-Smtp-Source: AGHT+IFo/uk8+fg8nF73WwxH4Zom3JYgWt0k5w5SqkqeUT98X+j/TIBcEfrGyd0Cd/QQNKj4p8gf X-Received: by 2002:a50:9356:0:b0:54b:cb6d:48ad with SMTP id n22-20020a509356000000b0054bcb6d48admr4266632eda.18.1702492043164; Wed, 13 Dec 2023 10:27:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702492043; cv=none; d=google.com; s=arc-20160816; b=WTBBk24aIURypAnua9SRLd2zDzXjAsJtY6sJVsq4Htq10DsKvTJGP9iG0EovDEMyhD /P4SpeMpeLfTFTA54tlbRNgDmliBh6a3LUAKniEfhao9HqnOO2T0YCNdYxA9I4eq7Tmv 0lB6MlCYzUms5+SP1NlcrFl2DOSNhChwYAhMrE7oujUK4cRsSonXEDRY7gT31+cBqj3z Gz9waDfYs+doSYdV0lVtFYuHoUHloZ+WhQvS3efPzrKOyeZoU0Ob2crY9wo4fYUx06BK t4Sr2Am8/fubDN+lbnVR783dfCO6YAHaaGb4lQV5jXvIJ/FxQuHD2RM3fhssehHodH4K x1zA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to :message-id:date:to:from:delivered-to; bh=LN06FGIJ8IIVZ6olD0wqrEoeqF9JythRgbabxc6I/E8=; fh=s+G8Ss4JbeMFkWPSp2LmIH/LXFyBlALRiww1j3FPjHY=; b=E3anzb6Nykxzv6Ib8f1RseXZ7kHIFZDvDDk4ublwk3oyXBhtNbhOnlZWNxIadtkRGI WAMqf1IJ97d5QyAIufyj69nTsyMhazLEgzqxYZojnP9cNDAFfH3+L6RKRy68Gb1NbQVE NJiGdJIa8GwZgRSsWGv+ah5Ms5PJ0kuzRpAl9NXkBI458qd1v+EkLIN3qH50MXYGG8XE 4BLYhVj8VvSzRPFqG5FpU5GdiEqY0ZDn/9w+c1PSgguxW6xYmLCqPitiNV8tPvr99rhZ YjSUWV6jn7aIOVPrWgjkGX/C4VhJPfwHP2nsXV1ig410S1wnH0tP29OZnw7Ky8+A6dTJ JTUQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id v7-20020a056402348700b0054b05969bcasi5600086edc.334.2023.12.13.10.27.22; Wed, 13 Dec 2023 10:27:23 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3B60468D062; Wed, 13 Dec 2023 20:27:14 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from iq.passwd.hu (iq.passwd.hu [217.27.212.140]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 804A468D037 for ; Wed, 13 Dec 2023 20:27:07 +0200 (EET) Received: from localhost (localhost [127.0.0.1]) by iq.passwd.hu (Postfix) with ESMTP id 46D6AE98F8; Wed, 13 Dec 2023 19:27:07 +0100 (CET) X-Virus-Scanned: amavisd-new at passwd.hu Received: from iq.passwd.hu ([127.0.0.1]) by localhost (iq.passwd.hu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XrYmUTOsRdV0; Wed, 13 Dec 2023 19:27:04 +0100 (CET) Received: from bluegene.passwd.hu (localhost [127.0.0.1]) by iq.passwd.hu (Postfix) with ESMTP id 35BE5E98EF; Wed, 13 Dec 2023 19:27:04 +0100 (CET) From: Marton Balint To: ffmpeg-devel@ffmpeg.org Date: Wed, 13 Dec 2023 19:26:57 +0100 Message-Id: <20231213182657.9190-2-cus@passwd.hu> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20231213182657.9190-1-cus@passwd.hu> References: <20231213182657.9190-1-cus@passwd.hu> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/2] avcodec/mjpegdec: avoid indirection when accessing avctx X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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: Marton Balint Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: EoFRxWm0tzBF Signed-off-by: Marton Balint --- libavcodec/mjpegdec.c | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c index 8191606f43..81f724d230 100644 --- a/libavcodec/mjpegdec.c +++ b/libavcodec/mjpegdec.c @@ -2422,7 +2422,7 @@ redo_for_pal8: } s->start_code = start_code; - if (s->avctx->debug & FF_DEBUG_STARTCODE) + if (avctx->debug & FF_DEBUG_STARTCODE) av_log(avctx, AV_LOG_DEBUG, "startcode: %X\n", start_code); /* process markers */ @@ -2486,9 +2486,9 @@ redo_for_pal8: case SOF0: case SOF1: if (start_code == SOF0) - s->avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT; + avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT; else - s->avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT; + avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT; s->lossless = 0; s->ls = 0; s->progressive = 0; @@ -2496,7 +2496,7 @@ redo_for_pal8: goto fail; break; case SOF2: - s->avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_PROGRESSIVE_DCT; + avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_PROGRESSIVE_DCT; s->lossless = 0; s->ls = 0; s->progressive = 1; @@ -2504,8 +2504,8 @@ redo_for_pal8: goto fail; break; case SOF3: - s->avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_LOSSLESS; - s->avctx->properties |= FF_CODEC_PROPERTY_LOSSLESS; + avctx->profile = AV_PROFILE_MJPEG_HUFFMAN_LOSSLESS; + avctx->properties |= FF_CODEC_PROPERTY_LOSSLESS; s->lossless = 1; s->ls = 0; s->progressive = 0; @@ -2513,8 +2513,8 @@ redo_for_pal8: goto fail; break; case SOF48: - s->avctx->profile = AV_PROFILE_MJPEG_JPEG_LS; - s->avctx->properties |= FF_CODEC_PROPERTY_LOSSLESS; + avctx->profile = AV_PROFILE_MJPEG_JPEG_LS; + avctx->properties |= FF_CODEC_PROPERTY_LOSSLESS; s->lossless = 1; s->ls = 1; s->progressive = 0; @@ -2549,8 +2549,8 @@ eoi_parser: s->got_picture = 0; goto the_end_no_picture; } - if (s->avctx->hwaccel) { - ret = FF_HW_SIMPLE_CALL(s->avctx, end_frame); + if (avctx->hwaccel) { + ret = FF_HW_SIMPLE_CALL(avctx, end_frame); if (ret < 0) return ret; @@ -2621,7 +2621,7 @@ fail: return ret; the_end: - is16bit = av_pix_fmt_desc_get(s->avctx->pix_fmt)->comp[0].step > 1; + is16bit = av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].step > 1; if (AV_RB32(s->upscale_h)) { int p; @@ -2640,7 +2640,7 @@ the_end: avctx->pix_fmt == AV_PIX_FMT_GBRP || avctx->pix_fmt == AV_PIX_FMT_GBRAP ); - ret = av_pix_fmt_get_chroma_sub_sample(s->avctx->pix_fmt, &hshift, &vshift); + ret = av_pix_fmt_get_chroma_sub_sample(avctx->pix_fmt, &hshift, &vshift); if (ret) return ret; @@ -2720,7 +2720,7 @@ the_end: avctx->pix_fmt == AV_PIX_FMT_GBRP || avctx->pix_fmt == AV_PIX_FMT_GBRAP ); - ret = av_pix_fmt_get_chroma_sub_sample(s->avctx->pix_fmt, &hshift, &vshift); + ret = av_pix_fmt_get_chroma_sub_sample(avctx->pix_fmt, &hshift, &vshift); if (ret) return ret; @@ -2750,7 +2750,7 @@ the_end: } } if (s->flipped && !s->rgb) { - ret = av_pix_fmt_get_chroma_sub_sample(s->avctx->pix_fmt, &hshift, &vshift); + ret = av_pix_fmt_get_chroma_sub_sample(avctx->pix_fmt, &hshift, &vshift); if (ret) return ret; @@ -2766,7 +2766,7 @@ the_end: } } - if (s->avctx->pix_fmt == AV_PIX_FMT_GBRP) { + if (avctx->pix_fmt == AV_PIX_FMT_GBRP) { av_assert0(s->nb_components == 3); FFSWAP(uint8_t *, frame->data[0], frame->data[2]); FFSWAP(uint8_t *, frame->data[0], frame->data[1]); @@ -2774,7 +2774,7 @@ the_end: FFSWAP(int, frame->linesize[0], frame->linesize[1]); } - if (s->adobe_transform == 0 && s->avctx->pix_fmt == AV_PIX_FMT_GBRAP) { + if (s->adobe_transform == 0 && avctx->pix_fmt == AV_PIX_FMT_GBRAP) { int w = s->picture_ptr->width; int h = s->picture_ptr->height; av_assert0(s->nb_components == 4); @@ -2797,7 +2797,7 @@ the_end: memset(dst[3], 255, w); } } - if (s->adobe_transform == 2 && s->avctx->pix_fmt == AV_PIX_FMT_YUVA444P) { + if (s->adobe_transform == 2 && avctx->pix_fmt == AV_PIX_FMT_YUVA444P) { int w = s->picture_ptr->width; int h = s->picture_ptr->height; av_assert0(s->nb_components == 4); @@ -2842,7 +2842,7 @@ the_end: sd = av_frame_new_side_data(frame, AV_FRAME_DATA_ICC_PROFILE, total_size); if (!sd) { - av_log(s->avctx, AV_LOG_ERROR, "Could not allocate frame side data\n"); + av_log(avctx, AV_LOG_ERROR, "Could not allocate frame side data\n"); return AVERROR(ENOMEM); } @@ -2865,7 +2865,7 @@ the_end: sd = av_frame_new_side_data(frame, AV_FRAME_DATA_DISPLAYMATRIX, sizeof(int32_t) * 9); if (!sd) { - av_log(s->avctx, AV_LOG_ERROR, "Could not allocate frame side data\n"); + av_log(avctx, AV_LOG_ERROR, "Could not allocate frame side data\n"); return AVERROR(ENOMEM); }