From patchwork Thu Nov 14 13:46:21 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 16258 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 6102B447018 for ; Thu, 14 Nov 2019 15:46:45 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3EC7968AC57; Thu, 14 Nov 2019 15:46:45 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f193.google.com (mail-pl1-f193.google.com [209.85.214.193]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 548BA68AC57 for ; Thu, 14 Nov 2019 15:46:38 +0200 (EET) Received: by mail-pl1-f193.google.com with SMTP id w8so2662252plq.5 for ; Thu, 14 Nov 2019 05:46:38 -0800 (PST) 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=ayofcXy5Hp3TvJob2OuHbp+GoKxxFcl1BoL/LVzcxJw=; b=S5fVG5i8Mz8z64P28yjUdI9bGqF+hm0OuVyC5hOrZ0qo5goaVIy2PAJlOuDvy5Yt0R DgZ4AlT59ThnklhwWaJAgaEtwEzywTuV8VvwCWKjx31YFp1nkJKcntg+cq6nchANDDZG 68gEVd3hiWYke4T2H/alhKqrzeezrNV1OgPX1sQCadMbsO5c1MfecdamzYk4ugmAWSiR Mq17gnukFOw8TQ8zExs4FgtPTmeLVI7Ix8u4cfeKYKlaBxjzARkGB9TX4u5sYQz6Xccj 6UJBZ11kfqbKO9/9Swbq60t/lotbXRoLUgRqbQ+CYhIsMNsoZ7cW+TFODq/73moXYAO+ 0x5A== 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=ayofcXy5Hp3TvJob2OuHbp+GoKxxFcl1BoL/LVzcxJw=; b=JonVE0R8XfovoiznQd0FJogjYLqPLeOP30YdGoO8fXtyhxUxJm+knj+KWgxBn8gxfi +ZE46D+qeV3GSTe4u5tLoYwrelnVDIxgMxFf+cAdYGv7bpzjUNu6SM7UHK50emtE8gTT 2xUALZ7S1SNmW/tnpzRUeQcOb8mSG6G18Z52FkFfEPzsfxSza1ei8AWb0bIoOUzWDXTs zcrXg58uJ9KE2mOg7oXo6v0eBkMjrM40wXRF3JStgYhotAkPAQHIfZ//U8opbmozKycL faztAWZsZKnK6beguZzacwH7srGjjaiIWbc0w0B8ewJDvT6Lb8/fJcLFuiko6mgedjYX FafA== X-Gm-Message-State: APjAAAXycW0ZTn0KNZjd35+VWcbKhB3kUPTwGheXL570G20TixIEw571 FHakTEi41fGPbRsDtn6klL+uOGl6 X-Google-Smtp-Source: APXvYqz9spR6o6At67Fh6Bg+oedObDZeuCQiLUE+hbN70H9SxKcLzWdr1zjZ61uLRr6TxJNEQ0DAJQ== X-Received: by 2002:a17:902:b404:: with SMTP id x4mr9862217plr.1.1573739196009; Thu, 14 Nov 2019 05:46:36 -0800 (PST) Received: from vpn.localdomain ([47.90.99.151]) by smtp.gmail.com with ESMTPSA id r13sm7925148pfg.3.2019.11.14.05.46.34 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 14 Nov 2019 05:46:35 -0800 (PST) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 14 Nov 2019 21:46:21 +0800 Message-Id: <20191114134623.17390-2-lance.lmwang@gmail.com> X-Mailer: git-send-email 2.9.5 In-Reply-To: <20191114134623.17390-1-lance.lmwang@gmail.com> References: <20191114134623.17390-1-lance.lmwang@gmail.com> Subject: [FFmpeg-devel] [PATCH v2 2/4] avfilter/vf_lut3d: Fix for framecrc bitexact for 32bit and 64bit system 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 --- libavfilter/vf_lut3d.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/libavfilter/vf_lut3d.c b/libavfilter/vf_lut3d.c index 9e820a17c9..9ba86f7238 100644 --- a/libavfilter/vf_lut3d.c +++ b/libavfilter/vf_lut3d.c @@ -243,9 +243,9 @@ static int interp_##nbits##_##name##_p##depth(AVFilterContext *ctx, void *arg, i srcg[x] * scale_g, \ srcb[x] * scale_b}; \ struct rgbvec vec = interp_##name(lut3d, &scaled_rgb); \ - dstr[x] = av_clip_uintp2(vec.r * (float)((1<linesize[3]) \ dsta[x] = srca[x]; \ } \ @@ -315,9 +315,9 @@ static int interp_##nbits##_##name(AVFilterContext *ctx, void *arg, int jobnr, i src[x + g] * scale_g, \ src[x + b] * scale_b}; \ struct rgbvec vec = interp_##name(lut3d, &scaled_rgb); \ - dst[x + r] = av_clip_uint##nbits(vec.r * (float)((1<linesize[3]) \ dsta[x] = srca[x]; \ } \ @@ -1511,9 +1511,9 @@ static int interp_1d_##nbits##_##name(AVFilterContext *ctx, void *arg, \ rr = interp_1d_##name(lut1d, 0, rr); \ gg = interp_1d_##name(lut1d, 1, gg); \ bb = interp_1d_##name(lut1d, 2, bb); \ - dst[x + r] = av_clip_uint##nbits(rr * factor); \ - dst[x + g] = av_clip_uint##nbits(gg * factor); \ - dst[x + b] = av_clip_uint##nbits(bb * factor); \ + dst[x + r] = av_clip_uint##nbits(rr * factor + 0.5f); \ + dst[x + g] = av_clip_uint##nbits(gg * factor + 0.5f); \ + dst[x + b] = av_clip_uint##nbits(bb * factor + 0.5f); \ if (!direct && step == 4) \ dst[x + a] = src[x + a]; \ } \