From patchwork Tue Oct 8 22:50:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52142 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp587665vql; Tue, 8 Oct 2024 16:01:10 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWUagXHK0fEufkrBMFEypQP9l6YtrBsK0VuoVLbz/g5Ud4xCEYq1dwBzHmksbuTojB9aQhM1v75sUdr4R7GWNh4@gmail.com X-Google-Smtp-Source: AGHT+IElojq0N/XH87cOoZD4/hhjW++8Ljp7Dh97p/Gw3hfQi5g+NCIzlYMENKUGA2a5okMlwY7t X-Received: by 2002:a05:6402:51ca:b0:5c8:95ce:8cc2 with SMTP id 4fb4d7f45d1cf-5c91d5abbffmr405751a12.16.1728428469843; Tue, 08 Oct 2024 16:01:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728428469; cv=none; d=google.com; s=arc-20240605; b=dpxMAGw/8pWF/5Q7jx+FKDcxax5nrpMD4h/ZewlD9vrs9BYaMI5r9hIkiHpH873K9e 4dXhLzzX5NVlkSlz+I9BHZZFx8PEQZyyd29rbTpqBn/vOJuEIVmM3gyVT5EFCF5IzYFz d58znTmTMiOOaj0xqH7hBLamBJ8MTjkwtNAFQO+O5wUpJahqNh+cNpSDDS4z3TZn2B5i poai6stq4bpLpUJ+zkWaOanXkCBYMmpKDZr8A5B+6mb/94xariQ7/ct6wzRe7kJl61mR euug3cC4scZenb1XolV+ki1feo14eqRdSnNl58FlInR6XGdPUwxb1dg/bN52jOLSg30D FekA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=55SzS6a1/zgDF7GoA+Za1j55N8AlDKZk2qZeSGJh6Fs=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=VxLPAS8DMy6BOFLrwSdtDIoYeC6wtpRbq3KXxpLGn2HO3bumHmD+Z1ddImv+mHNZSz BI0Pp5yoXa9TuYBaXikyPNwz3bXbc4rzj7oR6pjSCHJHsOAcvLdbHgd1uWlyybkHgktK b+w89hTqH599+w3T6yjrEvr2OaZhDzxnUvMBWpVXJ3RIh5anTM3aAKn7+SYZlRbxBFM9 /2my6qwwNRBMLZ/E94BwpBaHNWV3Js/EuQ3Sbq4RMENHhjUE6wwoDoPsWD+p1ENEIgEB UsPtV/UAag4WR3rxDuZMhrUPxUxK1bdagFVM+8yvn4ROfsQffng8I4cmuWny1/bgFpo1 ZIuQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=YOdE7dCI; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c91e0b30e4si228174a12.446.2024.10.08.16.01.09; Tue, 08 Oct 2024 16:01:09 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=YOdE7dCI; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2C6F668DD79; Wed, 9 Oct 2024 01:50:46 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3189D68DD6D for ; Wed, 9 Oct 2024 01:50:39 +0300 (EEST) Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-20c56b816faso11970815ad.2 for ; Tue, 08 Oct 2024 15:50:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427837; x=1729032637; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=E+yPiHwbzMcA9iFXUpKHmQTXfE/lTIvSQxcV5H/lIgs=; b=YOdE7dCIC8snbtgPUM8q13xwwYG04NiJ/N5I/+PwqkU7NwGN53HB9X6uV8PIxebFsI P+V+efgEzFLCBgjVu1vFPG8utgqUGPiu5VRFaGYXBLfkNoMk/j6r22qfhMcjPaHv5WYf 7EOQcM/6lAsTKBN6FbgFVmzBMq2OqgIfHu+zHS4tsBSBlwF6scC20wQyBn6h4pttgFis bKVyxvJP8lRsG48TdNxX+5nY6A2cM1x/ExZMjB/4YzwWGoCyw7PX//mr+7El0rJAblWR Jfv9Wpv2QP4egzVkhX5I5hM/fhMuKdP5uF55O0pKszbPtjiBvILOg4t2YsZRPU4yYMfP v9Dw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427837; x=1729032637; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=E+yPiHwbzMcA9iFXUpKHmQTXfE/lTIvSQxcV5H/lIgs=; b=Ea0MUuK3d3nwAuG3y+Uv5fDgiOj++hmYPKMFAz88sNHA1WVNTYAVqcgUA74Hza4QYq uAD8Ol1QCNQpBJsWC7VNv1Acoygr6XhoClfKbP24bX2BUN1v6p9a4/dfNTdTERO7Y2ur HZpTrpHch2UrnDllAFBxEUg8ZDcHNpIEIMN71Fug6s/Fq2GfH5UFt070s74cGgCQm/b7 3BjB+jrYF4eKErhGBxMnfn3bwBXO3q/uT0/dM9XTRmPSqQQoKp5aA5+nNHCGPCaEkfM9 g77ylzQgZH1IgQiZm5cXZhIjCENc+fhpbmwyjXxDPJ3D86hsz54aTZYPTYV4JsChARuj fzrQ== X-Gm-Message-State: AOJu0YygCY9RyyV43PUNMuZA/Cwy1Ll2V5u1h8PYwfTKdNtlFLpnH8+w BGiUUoGbo6eWbqUapI7fa22zuvg2maaLlbxTOrIL4hapyN23EWYvFVEPdw== X-Received: by 2002:a17:902:eccc:b0:20c:6399:d637 with SMTP id d9443c01a7336-20c6399e31dmr8033815ad.40.1728427836596; Tue, 08 Oct 2024 15:50:36 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.35 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:36 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:07 -0300 Message-ID: <20241008225027.12209-2-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 02/21] swscale/input: add UYVA input support 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: WIcPw1cBJMQW Signed-off-by: James Almer --- libswscale/input.c | 15 +++++++++++++++ libswscale/utils.c | 1 + 2 files changed, 16 insertions(+) diff --git a/libswscale/input.c b/libswscale/input.c index fd8077c455..462f0d71ea 100644 --- a/libswscale/input.c +++ b/libswscale/input.c @@ -736,6 +736,16 @@ static void read_ayuv_A_c(uint8_t *dst, const uint8_t *src, const uint8_t *unuse dst[i] = src[i * 4]; } +static void read_uyva_UV_c(uint8_t *dstU, uint8_t *dstV, const uint8_t *unused0, const uint8_t *src, + const uint8_t *unused1, int width, uint32_t *unused2, void *opq) +{ + int i; + for (i = 0; i < width; i++) { + dstU[i] = src[i * 4]; + dstV[i] = src[i * 4 + 2]; + } +} + static void read_xv30le_Y_c(uint8_t *dst, const uint8_t *src, const uint8_t *unused0, const uint8_t *unused1, int width, uint32_t *unused2, void *opq) { @@ -1476,6 +1486,9 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c, case AV_PIX_FMT_AYUV64LE: *chrToYV12 = read_ayuv64le_UV_c; break; + case AV_PIX_FMT_UYVA: + *chrToYV12 = read_uyva_UV_c; + break; case AV_PIX_FMT_XV36LE: *chrToYV12 = read_xv36le_UV_c; break; @@ -1875,6 +1888,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c, *lumToYV12 = read_xv30le_Y_c; break; case AV_PIX_FMT_AYUV: + case AV_PIX_FMT_UYVA: *lumToYV12 = read_ayuv_Y_c; break; case AV_PIX_FMT_AYUV64LE: @@ -2061,6 +2075,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c, *alpToYV12 = read_ya16be_alpha_c; break; case AV_PIX_FMT_VUYA: + case AV_PIX_FMT_UYVA: *alpToYV12 = read_vuya_A_c; break; case AV_PIX_FMT_AYUV: diff --git a/libswscale/utils.c b/libswscale/utils.c index 403444b309..978a2e1f09 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -269,6 +269,7 @@ static const FormatEntry format_entries[] = { [AV_PIX_FMT_XV30LE] = { 1, 1 }, [AV_PIX_FMT_XV36LE] = { 1, 1 }, [AV_PIX_FMT_AYUV] = { 1, 0 }, + [AV_PIX_FMT_UYVA] = { 1, 0 }, }; /** From patchwork Tue Oct 8 22:50:11 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52144 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp594897vql; Tue, 8 Oct 2024 16:16:12 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVRDUNP7Qrj1vohj/KcinNYxqChCNMxFluWlWQs1fDnuElI5K97ArgXHiJ0MMGywg9+Zt0ztmAYunuj0t1wgZBJ@gmail.com X-Google-Smtp-Source: AGHT+IGbwkxVH9N9bpO+sefv4hQ5/mhUNYNbzd74zaq4AlbmbyzaGpu6FJyw1blABHDyh+OZGZlN X-Received: by 2002:a5d:4851:0:b0:374:c287:929b with SMTP id ffacd0b85a97d-37d3a9b5345mr273555f8f.4.1728429372528; Tue, 08 Oct 2024 16:16:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728429372; cv=none; d=google.com; s=arc-20240605; b=b9ZYSjCm/KbjO/GdubzzUmMAqAW80atveFpt2RSl8PT17XPekwjyPo/AIJUz9uq02h Q9cSgllBH7Y7MEdIsBSQcsvr4CJeITCU39qYd2e1t5zPAoWnFI6oh2jVkBIsvyejeG0J YQoNJz4oU+KcYq1ev9ZMZqzpAVbCG22tE/e+M+aNYw/wCs9LFq3bJVIYPQLE37scwnuW XN5CJ7ate32IGwJiEUjKlUwuhF8U2dSP13e/oPW7HyCcIJihc2ekIZ2aF59drO5vidKB XS9Yn4ihBaunewIQeaVFZeM8HgpeCoTXwUH0g8ybhREJp4scx5CFtWx7KlIi4Cq4oGkC UCCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=VKP4vaOLJgS+SIgTuebxAQtaCVrwNzA4imLtCo+8kqs=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=bRGP7XnnBDv686ugL8vSLgI1/WXY9VZoOh9/FZE8mKtjNl6KrYMoU/ggcRAmxxYQje Wu77HKrDNU71CogKw99WpESCNnVf/GbePvBED5lZ7/gUsk15jFQE7Cf9jVoVUdfXgmEM CyXfYNKekpkpkhVlW5A5V4TycL5R97cJVZ9HXAVr+FsT8L8jb24RCfEV22xTJjbC9lCd /WLiwSaNsHj/ijX/FMLr3w5xkyBGS8ngE/pS8rT/afgEBM59P+PaZcioHmDHHNA9nRiS kUJm7ZXqwtiKk5CicT+AeKTrgWZNfkQKepPIhFeqzrtkL/045/Y8BmBk4bcKMXxKapLP KTvA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=XgiCTrsQ; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c8e05fcf16si179100a12.511.2024.10.08.16.16.11; Tue, 08 Oct 2024 16:16:12 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=XgiCTrsQ; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 55E4968DDB1; Wed, 9 Oct 2024 01:50:52 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 78FE768DD9A for ; Wed, 9 Oct 2024 01:50:45 +0300 (EEST) Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-20bb39d97d1so53774555ad.2 for ; Tue, 08 Oct 2024 15:50:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427843; x=1729032643; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=ztQHvHfCS8YpEZVtnSqRSQ8Sr12f5rhE/AovgiNiJss=; b=XgiCTrsQpY53UpZRQ+W4k7Q8kaxWvohESko0ZvM2n6ss8GdQd5AMbyfuWBi9pbSiUu el6mhfeuMUfW2BrR7R3D/gDmFUFXppNrMHZOXcbtIxymyTUNRGFGGid44+5rcKdAaGpa 44RHVu2YvkrFZcjLbqaOktAW9bd8nrBcFmgDeNy7Ny7q/PkDgHx+UUHZziHj+VeRq0HZ aejRGIsWgd3mEepH2Aw+HGBR6gANP5pC/bsbpqlubh29HDh26i7+4ROTVVjBk9DE4Fpu Ure0uoWcpMS1tKAEMxa2AxnrPpOCPlYmnZZqIuHmDZoTcPPGQK/ho/XrB53y3yWEo5yF GKfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427843; x=1729032643; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ztQHvHfCS8YpEZVtnSqRSQ8Sr12f5rhE/AovgiNiJss=; b=S2WjUvjA0WFD58Zb3Gml8c/TbJrhpQqkFvO3tvuk76CW+WWU5PE0+5G6zunVN/jVau rvg6njvafvIOmPVGnEFzzMsenP0j/LwWiEm8NF/ZwLbCzJL6l9ePWVgB4ofBrmACN8Av r5BLkk4e1gu/u2zzptByBvv+BiWeMJxxgtL1ldXF3i92gSFGSvq+vSw8Xq0dK7TWbEa6 c0wrnTXoGD5F4lbA/r0+0Eqt9ClgaoAFl1fEk90oWnn2x21UMGCPgYnYXLimDad6Gel9 gG1/po9KEd7HQToRXjgGYXmZf0xDj18CTGXio/Dy9E7aFRPp42jps49ZoHrwzMTCc+KX vC+w== X-Gm-Message-State: AOJu0YwgWUC/KfvHE1b0vx6H0OKA00i2LjUog5v88AjDxFEzNTL+4ZEw M07bmf5+5KjMj5bk2FQT6LK3icVLllRwfm6I827XaEHBBysNgnDsHzSKPw== X-Received: by 2002:a17:902:d54a:b0:20b:c026:6a0d with SMTP id d9443c01a7336-20c637d2b3bmr10633855ad.38.1728427842839; Tue, 08 Oct 2024 15:50:42 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.41 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:42 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:11 -0300 Message-ID: <20241008225027.12209-6-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 06/21] swscale/output: add AYUV output support 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: ftIIAbDwwZDh Signed-off-by: James Almer --- libswscale/output.c | 323 ++++++++++++----------- libswscale/utils.c | 2 +- tests/ref/fate/filter-pixdesc-ayuv | 1 + tests/ref/fate/filter-pixfmts-copy | 1 + tests/ref/fate/filter-pixfmts-crop | 1 + tests/ref/fate/filter-pixfmts-field | 1 + tests/ref/fate/filter-pixfmts-fieldorder | 1 + tests/ref/fate/filter-pixfmts-hflip | 1 + tests/ref/fate/filter-pixfmts-il | 1 + tests/ref/fate/filter-pixfmts-null | 1 + tests/ref/fate/filter-pixfmts-pad | 1 + tests/ref/fate/filter-pixfmts-scale | 1 + tests/ref/fate/filter-pixfmts-transpose | 1 + tests/ref/fate/filter-pixfmts-vflip | 1 + 14 files changed, 183 insertions(+), 154 deletions(-) create mode 100644 tests/ref/fate/filter-pixdesc-ayuv diff --git a/libswscale/output.c b/libswscale/output.c index c9dfd6f60a..328b108089 100644 --- a/libswscale/output.c +++ b/libswscale/output.c @@ -2668,165 +2668,177 @@ yuv2xv36le_X_c(SwsContext *c, const int16_t *lumFilter, } } -static void -yuv2vuyX_1_c(SwsContext *c, const int16_t *buf0, - const int16_t *ubuf[2], const int16_t *vbuf[2], - const int16_t *abuf0, uint8_t *dest, int dstW, - int uvalpha, int y) -{ - int hasAlpha = !!abuf0; - int i; - - if (uvalpha < 2048) { - for (i = 0; i < dstW; i++) { - int Y = (buf0[i] + 64) >> 7; - int U = (ubuf[0][i] + 64) >> 7; - int V = (vbuf[0][i] + 64) >> 7; - int A = 255; - - if (Y & 0x100) - Y = av_clip_uint8(Y); - if (U & 0x100) - U = av_clip_uint8(U); - if (V & 0x100) - V = av_clip_uint8(V); - - if (hasAlpha) { - A = (abuf0[i] + 64) >> 7; - if (A & 0x100) - A = av_clip_uint8(A); - } - - dest[4 * i ] = V; - dest[4 * i + 1] = U; - dest[4 * i + 2] = Y; - dest[4 * i + 3] = A; - } - } else { - for (i = 0; i < dstW; i++) { - int Y = (buf0[i] + 64) >> 7; - int U = (ubuf[0][i] + ubuf[1][i] + 128) >> 8; - int V = (vbuf[0][i] + vbuf[1][i] + 128) >> 8; - int A = 255; - - if (Y & 0x100) - Y = av_clip_uint8(Y); - if (U & 0x100) - U = av_clip_uint8(U); - if (V & 0x100) - V = av_clip_uint8(V); - - if (hasAlpha) { - A = (abuf0[i] + 64) >> 7; - if (A & 0x100) - A = av_clip_uint8(A); - } - - dest[4 * i ] = V; - dest[4 * i + 1] = U; - dest[4 * i + 2] = Y; - dest[4 * i + 3] = A; - } - } +#define AYUV_1_WRAPPER(fmt, C0, C1, C2, C3) \ +static void \ +yuv2 ## fmt ##_1_c(SwsContext *c, const int16_t *buf0, \ + const int16_t *ubuf[2], const int16_t *vbuf[2], \ + const int16_t *abuf0, uint8_t *dest, int dstW, \ + int uvalpha, int y) \ +{ \ + int hasAlpha = !!abuf0; \ + int i; \ + \ + if (uvalpha < 2048) { \ + for (i = 0; i < dstW; i++) { \ + int Y = (buf0[i] + 64) >> 7; \ + int U = (ubuf[0][i] + 64) >> 7; \ + int V = (vbuf[0][i] + 64) >> 7; \ + int A = 255; \ + \ + if (Y & 0x100) \ + Y = av_clip_uint8(Y); \ + if (U & 0x100) \ + U = av_clip_uint8(U); \ + if (V & 0x100) \ + V = av_clip_uint8(V); \ + \ + if (hasAlpha) { \ + A = (abuf0[i] + 64) >> 7; \ + if (A & 0x100) \ + A = av_clip_uint8(A); \ + } \ + \ + dest[4 * i ] = (C0); \ + dest[4 * i + 1] = (C1); \ + dest[4 * i + 2] = (C2); \ + dest[4 * i + 3] = (C3); \ + } \ + } else { \ + for (i = 0; i < dstW; i++) { \ + int Y = (buf0[i] + 64) >> 7; \ + int U = (ubuf[0][i] + ubuf[1][i] + 128) >> 8; \ + int V = (vbuf[0][i] + vbuf[1][i] + 128) >> 8; \ + int A = 255; \ + \ + if (Y & 0x100) \ + Y = av_clip_uint8(Y); \ + if (U & 0x100) \ + U = av_clip_uint8(U); \ + if (V & 0x100) \ + V = av_clip_uint8(V); \ + \ + if (hasAlpha) { \ + A = (abuf0[i] + 64) >> 7; \ + if (A & 0x100) \ + A = av_clip_uint8(A); \ + } \ + \ + dest[4 * i ] = (C0); \ + dest[4 * i + 1] = (C1); \ + dest[4 * i + 2] = (C2); \ + dest[4 * i + 3] = (C3); \ + } \ + } \ } -static void -yuv2vuyX_2_c(SwsContext *c, const int16_t *buf[2], - const int16_t *ubuf[2], const int16_t *vbuf[2], - const int16_t *abuf[2], uint8_t *dest, int dstW, - int yalpha, int uvalpha, int y) -{ - int hasAlpha = abuf && abuf[0] && abuf[1]; - const int16_t *buf0 = buf[0], *buf1 = buf[1], - *ubuf0 = ubuf[0], *ubuf1 = ubuf[1], - *vbuf0 = vbuf[0], *vbuf1 = vbuf[1], - *abuf0 = hasAlpha ? abuf[0] : NULL, - *abuf1 = hasAlpha ? abuf[1] : NULL; - int yalpha1 = 4096 - yalpha; - int uvalpha1 = 4096 - uvalpha; - int i; - - av_assert2(yalpha <= 4096U); - av_assert2(uvalpha <= 4096U); - - for (i = 0; i < dstW; i++) { - int Y = (buf0[i] * yalpha1 + buf1[i] * yalpha) >> 19; - int U = (ubuf0[i] * uvalpha1 + ubuf1[i] * uvalpha) >> 19; - int V = (vbuf0[i] * uvalpha1 + vbuf1[i] * uvalpha) >> 19; - int A = 255; - - if (Y & 0x100) - Y = av_clip_uint8(Y); - if (U & 0x100) - U = av_clip_uint8(U); - if (V & 0x100) - V = av_clip_uint8(V); - - if (hasAlpha) { - A = (abuf0[i] * yalpha1 + abuf1[i] * yalpha) >> 19; - A = av_clip_uint8(A); - } - - dest[4 * i ] = V; - dest[4 * i + 1] = U; - dest[4 * i + 2] = Y; - dest[4 * i + 3] = A; - } +AYUV_1_WRAPPER(vuyX, V, U, Y, A) +AYUV_1_WRAPPER(ayuv, A, Y, U, V) + +#define AYUV_2_WRAPPER(fmt, C0, C1, C2, C3) \ +static void \ +yuv2 ## fmt ##_2_c(SwsContext *c, const int16_t *buf[2], \ + const int16_t *ubuf[2], const int16_t *vbuf[2], \ + const int16_t *abuf[2], uint8_t *dest, int dstW, \ + int yalpha, int uvalpha, int y) \ +{ \ + int hasAlpha = abuf && abuf[0] && abuf[1]; \ + const int16_t *buf0 = buf[0], *buf1 = buf[1], \ + *ubuf0 = ubuf[0], *ubuf1 = ubuf[1], \ + *vbuf0 = vbuf[0], *vbuf1 = vbuf[1], \ + *abuf0 = hasAlpha ? abuf[0] : NULL, \ + *abuf1 = hasAlpha ? abuf[1] : NULL; \ + int yalpha1 = 4096 - yalpha; \ + int uvalpha1 = 4096 - uvalpha; \ + int i; \ + \ + av_assert2(yalpha <= 4096U); \ + av_assert2(uvalpha <= 4096U); \ + \ + for (i = 0; i < dstW; i++) { \ + int Y = (buf0[i] * yalpha1 + buf1[i] * yalpha) >> 19; \ + int U = (ubuf0[i] * uvalpha1 + ubuf1[i] * uvalpha) >> 19; \ + int V = (vbuf0[i] * uvalpha1 + vbuf1[i] * uvalpha) >> 19; \ + int A = 255; \ + \ + if (Y & 0x100) \ + Y = av_clip_uint8(Y); \ + if (U & 0x100) \ + U = av_clip_uint8(U); \ + if (V & 0x100) \ + V = av_clip_uint8(V); \ + \ + if (hasAlpha) { \ + A = (abuf0[i] * yalpha1 + abuf1[i] * yalpha) >> 19; \ + A = av_clip_uint8(A); \ + } \ + \ + dest[4 * i ] = (C0); \ + dest[4 * i + 1] = (C1); \ + dest[4 * i + 2] = (C2); \ + dest[4 * i + 3] = (C3); \ + } \ } -static void -yuv2vuyX_X_c(SwsContext *c, const int16_t *lumFilter, - const int16_t **lumSrc, int lumFilterSize, - const int16_t *chrFilter, const int16_t **chrUSrc, - const int16_t **chrVSrc, int chrFilterSize, - const int16_t **alpSrc, uint8_t *dest, int dstW, int y) -{ - int i; - - for (i = 0; i < dstW; i++) { - int j; - int Y = 1 << 18, U = 1 << 18; - int V = 1 << 18, A = 255; - - for (j = 0; j < lumFilterSize; j++) - Y += lumSrc[j][i] * lumFilter[j]; - - for (j = 0; j < chrFilterSize; j++) - U += chrUSrc[j][i] * chrFilter[j]; - - for (j = 0; j < chrFilterSize; j++) - V += chrVSrc[j][i] * chrFilter[j]; - - Y >>= 19; - U >>= 19; - V >>= 19; - - if (Y & 0x100) - Y = av_clip_uint8(Y); - if (U & 0x100) - U = av_clip_uint8(U); - if (V & 0x100) - V = av_clip_uint8(V); - - if (alpSrc) { - A = 1 << 18; - - for (j = 0; j < lumFilterSize; j++) - A += alpSrc[j][i] * lumFilter[j]; - - A >>= 19; - - if (A & 0x100) - A = av_clip_uint8(A); - } - - dest[4 * i ] = V; - dest[4 * i + 1] = U; - dest[4 * i + 2] = Y; - dest[4 * i + 3] = A; - } +AYUV_2_WRAPPER(vuyX, V, U, Y, A) +AYUV_2_WRAPPER(ayuv, A, Y, U, V) + +#define AYUV_X_WRAPPER(fmt, C0, C1, C2, C3) \ +static void \ +yuv2 ## fmt ##_X_c(SwsContext *c, const int16_t *lumFilter, \ + const int16_t **lumSrc, int lumFilterSize, \ + const int16_t *chrFilter, const int16_t **chrUSrc, \ + const int16_t **chrVSrc, int chrFilterSize, \ + const int16_t **alpSrc, uint8_t *dest, int dstW, int y) \ +{ \ + int i; \ + \ + for (i = 0; i < dstW; i++) { \ + int j; \ + int Y = 1 << 18, U = 1 << 18; \ + int V = 1 << 18, A = 255; \ + \ + for (j = 0; j < lumFilterSize; j++) \ + Y += lumSrc[j][i] * lumFilter[j]; \ + \ + for (j = 0; j < chrFilterSize; j++) \ + U += chrUSrc[j][i] * chrFilter[j]; \ + \ + for (j = 0; j < chrFilterSize; j++) \ + V += chrVSrc[j][i] * chrFilter[j]; \ + \ + Y >>= 19; \ + U >>= 19; \ + V >>= 19; \ + \ + if (Y & 0x100) \ + Y = av_clip_uint8(Y); \ + if (U & 0x100) \ + U = av_clip_uint8(U); \ + if (V & 0x100) \ + V = av_clip_uint8(V); \ + \ + if (alpSrc) { \ + A = 1 << 18; \ + \ + for (j = 0; j < lumFilterSize; j++) \ + A += alpSrc[j][i] * lumFilter[j]; \ + \ + A >>= 19; \ + \ + if (A & 0x100) \ + A = av_clip_uint8(A); \ + } \ + \ + dest[4 * i ] = (C0); \ + dest[4 * i + 1] = (C1); \ + dest[4 * i + 2] = (C2); \ + dest[4 * i + 3] = (C3); \ + } \ } +AYUV_X_WRAPPER(vuyX, V, U, Y, A) +AYUV_X_WRAPPER(ayuv, A, Y, U, V) + #define output_pixel(pos, val, bits) \ AV_WL16(pos, av_clip_uintp2(val >> shift, bits) << output_shift); @@ -3379,6 +3391,11 @@ av_cold void ff_sws_init_output_funcs(SwsContext *c, case AV_PIX_FMT_AYUV64LE: *yuv2packedX = yuv2ayuv64le_X_c; break; + case AV_PIX_FMT_AYUV: + *yuv2packed1 = yuv2ayuv_1_c; + *yuv2packed2 = yuv2ayuv_2_c; + *yuv2packedX = yuv2ayuv_X_c; + break; case AV_PIX_FMT_VUYA: case AV_PIX_FMT_VUYX: *yuv2packed1 = yuv2vuyX_1_c; diff --git a/libswscale/utils.c b/libswscale/utils.c index e2ad71a38d..84d23c3ff2 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -268,7 +268,7 @@ static const FormatEntry format_entries[] = { [AV_PIX_FMT_RGBAF16LE] = { 1, 0 }, [AV_PIX_FMT_XV30LE] = { 1, 1 }, [AV_PIX_FMT_XV36LE] = { 1, 1 }, - [AV_PIX_FMT_AYUV] = { 1, 0 }, + [AV_PIX_FMT_AYUV] = { 1, 1 }, [AV_PIX_FMT_UYVA] = { 1, 0 }, [AV_PIX_FMT_VYU444] = { 1, 0 }, [AV_PIX_FMT_V30XLE] = { 1, 0 }, diff --git a/tests/ref/fate/filter-pixdesc-ayuv b/tests/ref/fate/filter-pixdesc-ayuv new file mode 100644 index 0000000000..178e847222 --- /dev/null +++ b/tests/ref/fate/filter-pixdesc-ayuv @@ -0,0 +1 @@ +pixdesc-ayuv a21ac760efdec0065bcf605f4ed75f7f diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index 120129dc1e..dc165b5ec5 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -2,6 +2,7 @@ 0rgb 527ef3d164c8fd0700493733959689c2 abgr 023ecf6396d324edb113e4a483b79ba2 argb f003b555ef429222005d33844cca9325 +ayuv eb7e43cfbb961d1e369311d0f58b9f52 ayuv64le 07b9c969dfbe4add4c0626773b151d4f bgr0 6fcd67c8e6cec723dab21c70cf53dc16 bgr24 4cff3814819f02ecf5824edfd768d2b1 diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index 4731e96fc0..07ded708bc 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -2,6 +2,7 @@ 0rgb 974833c777e6abe6d84dc59af2ca5625 abgr 1d21f5b8a20186ac9dd54459c986a2a7 argb 8b822972049a1e207000763f2564d6e0 +ayuv f2846cdd8fc01820e561fe4d3855938c ayuv64le ab2f7bc8f150af47c42c778e3ea28bce bgr0 38a84849a9198667c348c686802e3b52 bgr24 1dacd8e04bf0eff163e82250d01a9cc7 diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index 0727d733f2..9e1e06bd80 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -2,6 +2,7 @@ 0rgb e2c35753a2271d1f9455b1809bc0e907 abgr c0eb95959edf5d40ff8af315e62d0f8a argb 6dca4f2987b49b7d63f702d17bace630 +ayuv 6aeadbc3ec2a6ff2bfab9495e7285fed ayuv64le d9836decca6323ba88b3b3d02257c0b6 bgr0 1da3fdbac616b3b410d081e39ed7a1f6 bgr24 573c76d77b1cbe6534ea7c0267dc1b13 diff --git a/tests/ref/fate/filter-pixfmts-fieldorder b/tests/ref/fate/filter-pixfmts-fieldorder index 1d7a98ce11..8f1febf4ad 100644 --- a/tests/ref/fate/filter-pixfmts-fieldorder +++ b/tests/ref/fate/filter-pixfmts-fieldorder @@ -2,6 +2,7 @@ 0rgb 2b0f066cfa0bef378a492875d541de8f abgr 832924b5351361db68dbdbb96c60ae55 argb 80d08e68cb91bc8f2f817516e65f0bd0 +ayuv 61b23fc754d8ca0d6740fa08a0a6ebf2 ayuv64le 84ef6260fe02427da946d4a2207fb54c bgr0 d2c676224ea80ac3ce01afde325ea1a0 bgr24 b7fdbcd10f20e6ea2d40aae0f329f80d diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index 43404db154..a49abba15b 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -2,6 +2,7 @@ 0rgb ada57572ee2b35f86edac9b911ce8523 abgr d2da6c3ee72e4a89a7cd011dd08566b2 argb 36cf791c52c5463bfc52a070de54337e +ayuv 122f591eac5669b658c22b09355e4263 ayuv64le 4cedbc38b3d4dcb26cdab170ce6d667b bgr0 66e9fda4e658d73bfe4fc9d792542271 bgr24 db074979bd684ca4547e28681ad3f6ab diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il index 4a6f15f074..1ac9cf3bd2 100644 --- a/tests/ref/fate/filter-pixfmts-il +++ b/tests/ref/fate/filter-pixfmts-il @@ -2,6 +2,7 @@ 0rgb 53efe0182723cd1dedfdbf56357c76f5 abgr 97603869e6248a8e5d8501563a11b114 argb 9e50e6ef02c83f28e97865a1f46ddfcd +ayuv 3dfdbbbf605d83629f3ef4c96210b074 ayuv64le 6f45f683e99ddf4180c7c7f47719efcc bgr0 590dcd1297d1dd4541eea217381db604 bgr24 73afe7b447b083a7c2d682abe8dd451a diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index 120129dc1e..dc165b5ec5 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -2,6 +2,7 @@ 0rgb 527ef3d164c8fd0700493733959689c2 abgr 023ecf6396d324edb113e4a483b79ba2 argb f003b555ef429222005d33844cca9325 +ayuv eb7e43cfbb961d1e369311d0f58b9f52 ayuv64le 07b9c969dfbe4add4c0626773b151d4f bgr0 6fcd67c8e6cec723dab21c70cf53dc16 bgr24 4cff3814819f02ecf5824edfd768d2b1 diff --git a/tests/ref/fate/filter-pixfmts-pad b/tests/ref/fate/filter-pixfmts-pad index abf4fceb46..5d8111b623 100644 --- a/tests/ref/fate/filter-pixfmts-pad +++ b/tests/ref/fate/filter-pixfmts-pad @@ -2,6 +2,7 @@ 0rgb 8e076dd0f8a9f4652595dffe3544f0f0 abgr 52738042432893de555e6a3833172806 argb 2a10108ac524b422b8a2393c064b3eab +ayuv ddb44f03af05b0cb01dced60641a4160 bgr0 025d4d5e5691801ba39bc9de70e39df0 bgr24 f8b65ad845905c7d0c93ca28dfbb826f bgr48le 4564b56dd1f2a9761b8a7a5244ac4c49 diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale index 2052d3f2f0..41a6fe76e7 100644 --- a/tests/ref/fate/filter-pixfmts-scale +++ b/tests/ref/fate/filter-pixfmts-scale @@ -2,6 +2,7 @@ 0rgb 80a58af8c639743307207ab4b69ca863 abgr 63f2eaa8712ea6108985f4a0b83587c9 argb f0e17c71a40643c33a5bcfb481f6d8f8 +ayuv 9992b829065e2ea4a44de3a25766ca9b ayuv64le 59fb016f9874062d0be77cb3920ffed2 bgr0 243d58ca64f97b2f415b4c63cb79f0e1 bgr24 18744aaab4b8bce065a7144dc0ccf921 diff --git a/tests/ref/fate/filter-pixfmts-transpose b/tests/ref/fate/filter-pixfmts-transpose index 0a395f7e71..bcda0e6460 100644 --- a/tests/ref/fate/filter-pixfmts-transpose +++ b/tests/ref/fate/filter-pixfmts-transpose @@ -2,6 +2,7 @@ 0rgb cf1bedd0784a3efd3ab00c4e44005c37 abgr 6d6f896f853a6c6f93ee70dba9af3d17 argb 87bbd23debb94d486ac3a6b6c0b005f9 +ayuv fe3d4a2d4d37deb94e6f447edc77f199 ayuv64le e4c07e0d5b333b3bc9eb4f3ce6af3a2c bgr0 df3a6eedd4939ce09a357b655ac2962a bgr24 f9a08135e5d58c0b2a5509c369a88414 diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip index 5ba28917a7..bb8ad46704 100644 --- a/tests/ref/fate/filter-pixfmts-vflip +++ b/tests/ref/fate/filter-pixfmts-vflip @@ -2,6 +2,7 @@ 0rgb 76b792f8ce8a72925e04294dc2f25b36 abgr 8b94f489e68802d76f1e2844688a4911 argb 3fd6af7ef2364d8aa845d45db289a04a +ayuv 928ac9b09b90dec1d8bc3ecd13b75a60 ayuv64le 558671dd31d0754cfa6344eaf441df78 bgr0 7117438cf000254610f23625265769b5 bgr24 52b2c21cbc166978a38a646c354b6858 From patchwork Tue Oct 8 22:50:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52148 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp628239vql; Tue, 8 Oct 2024 17:46:11 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVnibKJOq2dVRv9vB0QDgwW9mjYAYs03RdHt0LFtRO+SN+dkGBpU17d04oHPYW+o8BUxHTnu7G2webVWWi9nbfF@gmail.com X-Google-Smtp-Source: AGHT+IHskUhfql77400BihPgPXs6+ah6VZy3yi2WqtiwQyF6wbnEsaDr0e2j839CC6jwxxoI5Afs X-Received: by 2002:a17:907:efde:b0:a99:54a7:1177 with SMTP id a640c23a62f3a-a998d20b05emr44953866b.31.1728434771007; Tue, 08 Oct 2024 17:46:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728434770; cv=none; d=google.com; s=arc-20240605; b=as+614fpdJiBbH8R1KdniYqdtcm9SKPp4DD8QgNjqHYhrE7PDVTbcZYxyvgME9iW5T ZV15ZmxiEGAeOnhRkbacapTM3EMdJJeUFKXP6R5GNBXV+/rhRjziu1iFqnEJJpFVCKzj 7SfF1Da28DTzr9nGLt+nIZcF8Bxt63DVWt6v6MfpACivsdDbPr7qgZ6FjMydUGLZikO1 1x/2bvMAJXyHA4VbANJ8AzvVafCi3B66SXWJ+1b9bZO1L7TGhdhuHqOqVoixND/WTm9p nKut6my2mnOtI2Sf3hQE4ajqIuTsdJbDnKk3XhAl1k+aFiOwPDfTn/MxnIPKjhmv45Sm Yh+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=4npKGbowIX+ztuOfgBPmYYXC1oMiJO/jjJXiWQd33bc=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=CfE94929dcYYBSqVfqJCvOyySgol8eVkwtcIe7rC7YjrOJD1+W9gNsVJerDOR+4z61 WNDv9Hy+7i9bC/oVBnzZXls8VgHfZjkBMCp7nopK+Hcs/D5EDNxkJP/2w+3H1DE270us MBxB1r7D7I+IoJZkaOKu6fxWLRvR2Kz1QFM227xHMB4NVgLnmmVx0pgEeEzyUGXbe9OB zMvlzzAg8vsscFNQo4FUL2xU+IbMY+W5BckHt2XCUmx+B5StG5nJDQO5ydDR3pnZvGxz SKur7juefmBJGJJCqchv3Pbqm+ixopFsdzXd8TYpqjq6I1SLcruV8YVSne9NBwgziSUr cWag==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=noFjtEMF; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a640c23a62f3a-a9940965382si544532066b.418.2024.10.08.17.46.10; Tue, 08 Oct 2024 17:46:10 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=noFjtEMF; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BBBC568DD48; Wed, 9 Oct 2024 01:50:55 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0293868DDB1 for ; Wed, 9 Oct 2024 01:50:47 +0300 (EEST) Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-20b95359440so53368295ad.0 for ; Tue, 08 Oct 2024 15:50:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427844; x=1729032644; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=csNAmTc4PdXsddNffxKhAwAwMUS0Qb0i94lci5IokCM=; b=noFjtEMFv1oC0FzB7Wht9GO10PHTdBSj5kG5u8Zs/evl2fv2SBXRFYeM36kSQa2cAX 9e2ot7saXI5Qap4h26XUXORDw+NDA/Vp2kcYbcmqWM4ZkR4OmPGAJ6AVL46nCm2GlE9t lhtBlmt7JhyKB5mRZwggKpkcx7U0dPsQ5n9HehcwCoAG3QFqJdgElrTz/BlyWaTuKPhh D3krbPb6UZiFO3LzYcYtxS857l2+GVWaJmY/TKLIMo/ydnNLAtajvhHURe0ZhY3F/Ctt ywssZKEtSw34NkzBV1XBfm3FycmKn5XFps0VmmIXaPT4Mg3U5GGVPD4m8T0Z9tInGJVf 8cXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427844; x=1729032644; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=csNAmTc4PdXsddNffxKhAwAwMUS0Qb0i94lci5IokCM=; b=ox9hyhjT72pjVWN7CvzU0Kve5Uk0qOfQxJcMW88HhnHNz9HtsD2h2KbuC7Nyd1o1nv lwl1/A82o1n6Rp+kKqqvX1xY89IIfi4V3v5eWXNNhDUP4rcamarRLkslPStH3673hEJf Q+TXw9t9Jpug3HYsfSl/se2oCP/VlP8K/ZnVaJUURqB+gen3sDfVRFbU6AaEAqJwMbWJ RK5qM7L5n2HoCegP13zH58elHMeoGjtELOOZfMd54u0wEUb1Sna7fZkr9sdM5/T0NPVL hFkpfbISPW43NLpMpgiGu8jGqwURzttWStRixKHSemIr0HYer+jZKtwtw5WwMwRii+rY Qsiw== X-Gm-Message-State: AOJu0Yy3HMiEoMbVd2mQZ4TlgS3L98FLxq9F9JBi0pPqmkNIZQjY8OBl K1ebS4YvUZjWlNXCqoEWegbUXdSuZU8SbUR6Csw0PXaHLu0ERRm5AK32wg== X-Received: by 2002:a17:902:d48a:b0:20c:6105:48e2 with SMTP id d9443c01a7336-20c6378fcedmr7520815ad.52.1728427844416; Tue, 08 Oct 2024 15:50:44 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.43 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:43 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:12 -0300 Message-ID: <20241008225027.12209-7-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 07/21] swscale/output: add UYVA output support 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: XXudd/3b4fMW Signed-off-by: James Almer --- libswscale/output.c | 8 ++++++++ libswscale/utils.c | 2 +- tests/ref/fate/filter-pixdesc-uyva | 1 + tests/ref/fate/filter-pixfmts-copy | 1 + tests/ref/fate/filter-pixfmts-crop | 1 + tests/ref/fate/filter-pixfmts-field | 1 + tests/ref/fate/filter-pixfmts-fieldorder | 1 + tests/ref/fate/filter-pixfmts-hflip | 1 + tests/ref/fate/filter-pixfmts-il | 1 + tests/ref/fate/filter-pixfmts-null | 1 + tests/ref/fate/filter-pixfmts-pad | 1 + tests/ref/fate/filter-pixfmts-scale | 1 + tests/ref/fate/filter-pixfmts-transpose | 1 + tests/ref/fate/filter-pixfmts-vflip | 1 + 14 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 tests/ref/fate/filter-pixdesc-uyva diff --git a/libswscale/output.c b/libswscale/output.c index 328b108089..829180e854 100644 --- a/libswscale/output.c +++ b/libswscale/output.c @@ -2733,6 +2733,7 @@ yuv2 ## fmt ##_1_c(SwsContext *c, const int16_t *buf0, \ AYUV_1_WRAPPER(vuyX, V, U, Y, A) AYUV_1_WRAPPER(ayuv, A, Y, U, V) +AYUV_1_WRAPPER(uyva, U, Y, V, A) #define AYUV_2_WRAPPER(fmt, C0, C1, C2, C3) \ static void \ @@ -2781,6 +2782,7 @@ yuv2 ## fmt ##_2_c(SwsContext *c, const int16_t *buf[2], \ AYUV_2_WRAPPER(vuyX, V, U, Y, A) AYUV_2_WRAPPER(ayuv, A, Y, U, V) +AYUV_2_WRAPPER(uyva, U, Y, V, A) #define AYUV_X_WRAPPER(fmt, C0, C1, C2, C3) \ static void \ @@ -2838,6 +2840,7 @@ yuv2 ## fmt ##_X_c(SwsContext *c, const int16_t *lumFilter, \ AYUV_X_WRAPPER(vuyX, V, U, Y, A) AYUV_X_WRAPPER(ayuv, A, Y, U, V) +AYUV_X_WRAPPER(uyva, U, Y, V, A) #define output_pixel(pos, val, bits) \ AV_WL16(pos, av_clip_uintp2(val >> shift, bits) << output_shift); @@ -3402,6 +3405,11 @@ av_cold void ff_sws_init_output_funcs(SwsContext *c, *yuv2packed2 = yuv2vuyX_2_c; *yuv2packedX = yuv2vuyX_X_c; break; + case AV_PIX_FMT_UYVA: + *yuv2packed1 = yuv2uyva_1_c; + *yuv2packed2 = yuv2uyva_2_c; + *yuv2packedX = yuv2uyva_X_c; + break; case AV_PIX_FMT_XV30LE: *yuv2packedX = yuv2xv30le_X_c; break; diff --git a/libswscale/utils.c b/libswscale/utils.c index 84d23c3ff2..c80cc18eb2 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -269,7 +269,7 @@ static const FormatEntry format_entries[] = { [AV_PIX_FMT_XV30LE] = { 1, 1 }, [AV_PIX_FMT_XV36LE] = { 1, 1 }, [AV_PIX_FMT_AYUV] = { 1, 1 }, - [AV_PIX_FMT_UYVA] = { 1, 0 }, + [AV_PIX_FMT_UYVA] = { 1, 1 }, [AV_PIX_FMT_VYU444] = { 1, 0 }, [AV_PIX_FMT_V30XLE] = { 1, 0 }, }; diff --git a/tests/ref/fate/filter-pixdesc-uyva b/tests/ref/fate/filter-pixdesc-uyva new file mode 100644 index 0000000000..49fd1bc6b1 --- /dev/null +++ b/tests/ref/fate/filter-pixdesc-uyva @@ -0,0 +1 @@ +pixdesc-uyva 7cec5f820722500f491c3495113e726e diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index dc165b5ec5..de9b35e35a 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -97,6 +97,7 @@ rgb8 7ac6008c84d622c2fc50581706e17576 rgba b6e1b441c365e03b5ffdf9b7b68d9a0c rgba64be ae2ae04b5efedca3505f47c4dd6ea6ea rgba64le b91e1d77f799eb92241a2d2d28437b15 +uyva affad7282152bcce415bdf228df00ae4 uyvy422 3bcf3c80047592f2211fae3260b1b65d vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index 07ded708bc..666d99f932 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -95,6 +95,7 @@ rgb8 9b364a8f112ad9459fec47a51cc03b30 rgba 9488ac85abceaf99a9309eac5a87697e rgba64be 89910046972ab3c68e2a348302cc8ca9 rgba64le fea8ebfc869b52adf353778f29eac7a7 +uyva caa03b07812dbb6c48b5fb34edf73962 vuya 76578a705ff3a37559653c1289bd03dd vuyx 615241c5406eb556fca0ad8606c23a02 x2bgr10le 84de725b85662c362862820dc4a309aa diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index 9e1e06bd80..672ee5d2ec 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -97,6 +97,7 @@ rgb8 62c3b9e2a171de3d894a8eeb271c85e8 rgba ee616262ca6d67b7ecfba4b36c602ce3 rgba64be 23c8c0edaabe3eaec89ce69633fb0048 rgba64le dfdba4de4a7cac9abf08852666c341d3 +uyva c1c2953840061e3778842051b078a41e uyvy422 1c49e44ab3f060e85fc4a3a9464f045e vuya f72bcf29d75cd143d0c565f7cc49119a vuyx 3d02eeab336d0a8106f6fdd91be61073 diff --git a/tests/ref/fate/filter-pixfmts-fieldorder b/tests/ref/fate/filter-pixfmts-fieldorder index 8f1febf4ad..4b9ba2a88d 100644 --- a/tests/ref/fate/filter-pixfmts-fieldorder +++ b/tests/ref/fate/filter-pixfmts-fieldorder @@ -86,6 +86,7 @@ rgb8 6deae05ccac5c50bd0d9c9fe8e124557 rgba 1fdf872a087a32cd35b80cc7be399578 rgba64be 5598f44514d122b9a57c5c92c20bbc61 rgba64le b34e6e30621ae579519a2d91a96a0acf +uyva fa5df2c0474b2a41dbe2210372b15fcc uyvy422 75de70e31c435dde878002d3f22b238a vuya a3891d4168ff208948fd0b3ba0910495 vuyx 9e4480c5fcb7c091ec3e517420764ef3 diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index a49abba15b..4742e3957e 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -95,6 +95,7 @@ rgb8 68a3a575badadd9e4f90226209f11699 rgba 51961c723ea6707e0a410cd3f21f15d3 rgba64be c910444019f4cfbf4d995227af55da8d rgba64le 0c810d8b3a6bca10321788e1cb145340 +uyva 9266fd7374abf86f7035e356574586f0 vuya 7e530261e7ac4eae4fd616fd7572d0b8 vuyx f1d087284fb1556d76e6def5f94bf273 x2bgr10le 827cc659f29378e00c5a7d2c0ada8f9a diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il index 1ac9cf3bd2..f43377e3dc 100644 --- a/tests/ref/fate/filter-pixfmts-il +++ b/tests/ref/fate/filter-pixfmts-il @@ -96,6 +96,7 @@ rgb8 93f9fa5ecf522abe13ed34f21831fdfe rgba 625d8f4bd39c4bdbf61eb5e4713aecc9 rgba64be db70d33aa6c06f3e0a1c77bd11284261 rgba64le a8a2daae04374a27219bc1c890204007 +uyva f16f848f8283bcd59da6a4d85bc5b0a0 uyvy422 d6ee3ca43356d08c392382b24b22cda5 vuya b9deab5ba249dd608b709c09255a4932 vuyx 4251d94ee49e6a3cc1c10c09cd331308 diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index dc165b5ec5..de9b35e35a 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -97,6 +97,7 @@ rgb8 7ac6008c84d622c2fc50581706e17576 rgba b6e1b441c365e03b5ffdf9b7b68d9a0c rgba64be ae2ae04b5efedca3505f47c4dd6ea6ea rgba64le b91e1d77f799eb92241a2d2d28437b15 +uyva affad7282152bcce415bdf228df00ae4 uyvy422 3bcf3c80047592f2211fae3260b1b65d vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee diff --git a/tests/ref/fate/filter-pixfmts-pad b/tests/ref/fate/filter-pixfmts-pad index 5d8111b623..bab4344e01 100644 --- a/tests/ref/fate/filter-pixfmts-pad +++ b/tests/ref/fate/filter-pixfmts-pad @@ -42,6 +42,7 @@ rgb0 0984eb985dabbe757ed6beb53db84eff rgb24 17f9e2e0c609009acaf2175c42d4a2a5 rgb48le ed08db9b1aa50d69b8c3d73db93e390e rgba b157c90191463d34fb3ce77b36c96386 +uyva be076f4efae6b51032c5fc676a31f2cc vuya 44368c0a758ee68e24ce976e3b1b8535 vuyx ff637b205b78ee581e393124d0f44f5d ya16le dfc900a8130a7c5e64201557cbaef50a diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale index 41a6fe76e7..66307bc1d3 100644 --- a/tests/ref/fate/filter-pixfmts-scale +++ b/tests/ref/fate/filter-pixfmts-scale @@ -97,6 +97,7 @@ rgb8 bcdc033b4ef0979d060dbc8893d4db58 rgba 85bb5d03cea1c6e8002ced3373904336 rgba64be ee73e57923af984b31cc7795d13929da rgba64le 783d2779adfafe3548bdb671ec0de69e +uyva ee83c7ba25cfc997de70a4e5b3eb398f uyvy422 aeb4ba4f9f003ae21f6d18089198244f vuya ffa817e283bf6a0b6fba21b07523ccaa vuyx a6ff68f46c6b4b7595ec91b2a497df8e diff --git a/tests/ref/fate/filter-pixfmts-transpose b/tests/ref/fate/filter-pixfmts-transpose index bcda0e6460..e5e8a3b7bc 100644 --- a/tests/ref/fate/filter-pixfmts-transpose +++ b/tests/ref/fate/filter-pixfmts-transpose @@ -87,6 +87,7 @@ rgb8 c90feb30c3c9391ef5f470209d7b7a15 rgba 4d76a9542143752a4ac30f82f88f68f1 rgba64be a60041217f4c0cd796d19d3940a12a41 rgba64le ad47197774858858ae7b0c177dffa459 +uyva 1500c3f52e32b2080be180d2e8196a7b vuya 9ece18a345beb17cd19e09e443eca4bf vuyx 46b5b821d7ee6ddedb3ddafd1e5b007c x2bgr10le 4aa774b6d8f6d446a64f1f288e5c97eb diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip index bb8ad46704..53ef4732cc 100644 --- a/tests/ref/fate/filter-pixfmts-vflip +++ b/tests/ref/fate/filter-pixfmts-vflip @@ -97,6 +97,7 @@ rgb8 7df049b6094f8a5e084d74462f6d6cde rgba c1a5908572737f2ae1e5d8218af65f4b rgba64be 17e6273323b5779b5f3f775f150c1011 rgba64le 48f45b10503b7dd140329c3dd0d54c98 +uyva 0d2d0d286d841ea5b35cc06626dcafe4 uyvy422 3a237e8376264e0cfa78f8a3fdadec8a vuya fb849f76e56181e005c31fce75d7038c vuyx ed7de87da324b39090a8961dfd56ca5a From patchwork Tue Oct 8 22:50:13 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52157 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp693289vql; Tue, 8 Oct 2024 21:16:12 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXUgzQiIDAAZ2YnvYwY36iU2RqPkXHy+gbw/j3PBpaq0KGRNoCnhFGsV36AYmuC0xy2sWk6uhBGAFri6o4UBSpO@gmail.com X-Google-Smtp-Source: AGHT+IFOzEFhC0s8iYsEpG0IPQotBfs8qSUNdwQLjlhPSeG6TwY607BKgGGgEWX0oJ6QnwmvBdR1 X-Received: by 2002:a05:6402:5187:b0:5c5:cb7f:e56a with SMTP id 4fb4d7f45d1cf-5c905cfc19emr5964917a12.1.1728447371870; Tue, 08 Oct 2024 21:16:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728447371; cv=none; d=google.com; s=arc-20240605; b=BQ+mNAEAGPsrpNeVuOvRLY7P447NKpVB/Xt6lRdVH6m8VMKL0RAkA5b9rM8YvfhbqQ I3dCoj0WbU6gVuKLzKgISeCfHS1AYufiKD2xFNQJ8V8hhES6+2E6/P+jRmfFfEDTXDVY MH1mglFQsrN2fLsRLe/peto2puEfWg1NR3vENLSV45K1YXPQzDFASXQp1MYHtzhBsq9E W6xgQgEWgyYSiHH3FBwMxoUJqNdm+5KNpzCXI+W4D1DQ/ZHPCDkXrpl+u+M2/Lc/YjHB f5PoJzcebiTLOulEHlHbiEtsxQSUk9kHsa3jwm1x5tCm9lZ/YtXVS0ktBEWcPoWLukHN sg3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=DIpgf6lpQ1YZ4jbyqT1p4JNjeXMdT5SpU8hAIqdyRSU=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=UpvbreXkAS6u4BWRRGzXmf2Gkr/nUktJCPf2Y1j2wghAbZ2EWqLk6IRNFBXz48HaPV q1GyLg/kJMwKqi/I/JhgtXGeG2JaVIxlzAJ8uO53NSGScyJtduDjcSyIO/1tWmfDh07M YFwuMZURYhsECSWzdkoZKI31BBB7NfTD9bznensOkUQdRkOHmxUr1STPj8RS+61VKsHg dLn68f3FwWFK2HXz6kT4JhAoCuLBIfZ9i0tph0lUHWAAdYJi7hWIyT7QGhsXied4mM/L wbCfBJzPRxN4k9IiwBMA4rl54GP2+3V56VPK/tpa5bvJqoX5ov0GlcwpelzvxCOmMpEl feQA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=EUDy71+I; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c8e060dc46si6952914a12.663.2024.10.08.21.16.11; Tue, 08 Oct 2024 21:16:11 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=EUDy71+I; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 487F568DDE4; Wed, 9 Oct 2024 01:50:58 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7746E68DDBD for ; Wed, 9 Oct 2024 01:50:48 +0300 (EEST) Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-20b9b35c7c3so64961515ad.3 for ; Tue, 08 Oct 2024 15:50:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427846; x=1729032646; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=HyY53MQmt1k+MTiI8TcahM0bsFWPvCnVsCMoFqI87nE=; b=EUDy71+ITXVgnuljGNnTdX6CfbFHB50LjSZKmoMSPtrbPAcn0gF/GuqOC63nD3Qaju SnWbRDgP8DOfbG4447re2sYAj9a7CnLsZjSt+o1l4EQI6ekMZCD21ZieMm2i8ZcLcnw/ 49R8xXjhae+yrsdDJj4cU7Ge07W6xZ1oTmFMgZvbXAv6Ju35ny0XDsQkY2LzjjcL9Fh9 sFha6TRHAQNHDsADmgagRvrlMyWvtGD2Phg6VXNgUsRMDt7IF79QBMh2OWnO9kMdvjDX z2SlLE20k2vrHsWdJaHgexG+VzL0aeNw8kvYZJtZn53kn+o0d16uJ3JZmmqZoDipdImb 9HJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427846; x=1729032646; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HyY53MQmt1k+MTiI8TcahM0bsFWPvCnVsCMoFqI87nE=; b=IsIbo8R+JWkn/An7bA3uQ5csSGhSNXWOtFujTPxd/c9nde39k16isDIJLqSFtiuOVh GnelV3RYWYl9CHK0OShYjpVfCkt3OEglmYVs/+vXeH1sJDu2V8FjIwNVOP4EIjNid5pk 18i7RfkaFlWNz/Cm42e84PCbcqH2gva1w4Op/rxofden/vHbau0Sx9Za0zJe88UPbD/i 3zusu14OWorMXjhBiOTwhRjKx88mE+4fDhuVZaI+V2NMUnenW0gRIrFSRbf1UpumgUTL 2jpu0rpu3K32d4Aq6pudDAA2xBjR7AKtAILxTUhMh13ihbFh/umh9Bp8R7d+8UQvrehL YCnw== X-Gm-Message-State: AOJu0YyhRWCsrpGJGGjjxAPvbgLsI1eaGtXXlvqGqZEBGtQ8CWAJuci2 XuLthICwbmJdd3MAmmlivZxXdusTU1qUEE/d+B8jHOaJtJtMJfrG0djJXQ== X-Received: by 2002:a17:903:1ce:b0:20b:bac2:88f6 with SMTP id d9443c01a7336-20c639155bemr6726855ad.52.1728427846019; Tue, 08 Oct 2024 15:50:46 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:45 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:13 -0300 Message-ID: <20241008225027.12209-8-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 08/21] swscale/output: add VYU444 output support 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: hk+CtiQRySwb Signed-off-by: James Almer --- libswscale/output.c | 124 +++++++++++++++++++++++ libswscale/utils.c | 2 +- tests/ref/fate/filter-pixdesc-vyu444 | 1 + tests/ref/fate/filter-pixfmts-copy | 1 + tests/ref/fate/filter-pixfmts-crop | 1 + tests/ref/fate/filter-pixfmts-field | 1 + tests/ref/fate/filter-pixfmts-fieldorder | 1 + tests/ref/fate/filter-pixfmts-hflip | 1 + tests/ref/fate/filter-pixfmts-il | 1 + tests/ref/fate/filter-pixfmts-null | 1 + tests/ref/fate/filter-pixfmts-pad | 1 + tests/ref/fate/filter-pixfmts-scale | 1 + tests/ref/fate/filter-pixfmts-transpose | 1 + tests/ref/fate/filter-pixfmts-vflip | 1 + 14 files changed, 137 insertions(+), 1 deletion(-) create mode 100644 tests/ref/fate/filter-pixdesc-vyu444 diff --git a/libswscale/output.c b/libswscale/output.c index 829180e854..f94c0bcfee 100644 --- a/libswscale/output.c +++ b/libswscale/output.c @@ -2882,6 +2882,125 @@ AYUV_X_WRAPPER(uyva, U, Y, V, A) yuv2y2xx_wrapper(10) yuv2y2xx_wrapper(12) +static void +yuv2vyu444_1_c(SwsContext *c, const int16_t *buf0, + const int16_t *ubuf[2], const int16_t *vbuf[2], + const int16_t *abuf0, uint8_t *dest, int dstW, + int uvalpha, int y) +{ + int i; + + if (uvalpha < 2048) { + for (i = 0; i < dstW; i++) { + int Y = (buf0[i] + 64) >> 7; + int U = (ubuf[0][i] + 64) >> 7; + int V = (vbuf[0][i] + 64) >> 7; + + if (Y & 0x100) + Y = av_clip_uint8(Y); + if (U & 0x100) + U = av_clip_uint8(U); + if (V & 0x100) + V = av_clip_uint8(V); + + dest[3 * i ] = V; + dest[3 * i + 1] = Y; + dest[3 * i + 2] = U; + } + } else { + for (i = 0; i < dstW; i++) { + int Y = (buf0[i] + 64) >> 7; + int U = (ubuf[0][i] + ubuf[1][i] + 128) >> 8; + int V = (vbuf[0][i] + vbuf[1][i] + 128) >> 8; + + if (Y & 0x100) + Y = av_clip_uint8(Y); + if (U & 0x100) + U = av_clip_uint8(U); + if (V & 0x100) + V = av_clip_uint8(V); + + dest[3 * i ] = V; + dest[3 * i + 1] = Y; + dest[3 * i + 2] = U; + } + } +} + +static void +yuv2vyu444_2_c(SwsContext *c, const int16_t *buf[2], + const int16_t *ubuf[2], const int16_t *vbuf[2], + const int16_t *abuf[2], uint8_t *dest, int dstW, + int yalpha, int uvalpha, int y) +{ + const int16_t *buf0 = buf[0], *buf1 = buf[1], + *ubuf0 = ubuf[0], *ubuf1 = ubuf[1], + *vbuf0 = vbuf[0], *vbuf1 = vbuf[1]; + int yalpha1 = 4096 - yalpha; + int uvalpha1 = 4096 - uvalpha; + int i; + + av_assert2(yalpha <= 4096U); + av_assert2(uvalpha <= 4096U); + + for (i = 0; i < dstW; i++) { + int Y = (buf0[i] * yalpha1 + buf1[i] * yalpha) >> 19; + int U = (ubuf0[i] * uvalpha1 + ubuf1[i] * uvalpha) >> 19; + int V = (vbuf0[i] * uvalpha1 + vbuf1[i] * uvalpha) >> 19; + + if (Y & 0x100) + Y = av_clip_uint8(Y); + if (U & 0x100) + U = av_clip_uint8(U); + if (V & 0x100) + V = av_clip_uint8(V); + + dest[3 * i ] = V; + dest[3 * i + 1] = Y; + dest[3 * i + 2] = U; + } +} + +static void +yuv2vyu444_X_c(SwsContext *c, const int16_t *lumFilter, + const int16_t **lumSrc, int lumFilterSize, + const int16_t *chrFilter, const int16_t **chrUSrc, + const int16_t **chrVSrc, int chrFilterSize, + const int16_t **alpSrc, uint8_t *dest, int dstW, int y) +{ + int i; + + for (i = 0; i < dstW; i++) { + int j; + int Y = 1 << 18, U = 1 << 18; + int V = 1 << 18; + + for (j = 0; j < lumFilterSize; j++) + Y += lumSrc[j][i] * lumFilter[j]; + + for (j = 0; j < chrFilterSize; j++) + U += chrUSrc[j][i] * chrFilter[j]; + + for (j = 0; j < chrFilterSize; j++) + V += chrVSrc[j][i] * chrFilter[j]; + + Y >>= 19; + U >>= 19; + V >>= 19; + + if (Y & 0x100) + Y = av_clip_uint8(Y); + if (U & 0x100) + U = av_clip_uint8(U); + if (V & 0x100) + V = av_clip_uint8(V); + + dest[3 * i ] = V; + dest[3 * i + 1] = Y; + dest[3 * i + 2] = U; + } +} + #undef output_pixel av_cold void ff_sws_init_output_funcs(SwsContext *c, @@ -3376,6 +3495,11 @@ av_cold void ff_sws_init_output_funcs(SwsContext *c, *yuv2packed2 = yuv2uyvy422_2_c; *yuv2packedX = yuv2uyvy422_X_c; break; + case AV_PIX_FMT_VYU444: + *yuv2packed1 = yuv2vyu444_1_c; + *yuv2packed2 = yuv2vyu444_2_c; + *yuv2packedX = yuv2vyu444_X_c; + break; case AV_PIX_FMT_YA8: *yuv2packed1 = yuv2ya8_1_c; *yuv2packed2 = yuv2ya8_2_c; diff --git a/libswscale/utils.c b/libswscale/utils.c index c80cc18eb2..719619858f 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -270,7 +270,7 @@ static const FormatEntry format_entries[] = { [AV_PIX_FMT_XV36LE] = { 1, 1 }, [AV_PIX_FMT_AYUV] = { 1, 1 }, [AV_PIX_FMT_UYVA] = { 1, 1 }, - [AV_PIX_FMT_VYU444] = { 1, 0 }, + [AV_PIX_FMT_VYU444] = { 1, 1 }, [AV_PIX_FMT_V30XLE] = { 1, 0 }, }; diff --git a/tests/ref/fate/filter-pixdesc-vyu444 b/tests/ref/fate/filter-pixdesc-vyu444 new file mode 100644 index 0000000000..7572621e76 --- /dev/null +++ b/tests/ref/fate/filter-pixdesc-vyu444 @@ -0,0 +1 @@ +pixdesc-vyu444 ae888f94235dd6d122c4fa3aa40f11d0 diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index de9b35e35a..e538466636 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -101,6 +101,7 @@ uyva affad7282152bcce415bdf228df00ae4 uyvy422 3bcf3c80047592f2211fae3260b1b65d vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee +vyu444 2b2e6df31f5895340f25d6f67572b113 x2bgr10le 550c0d190cf695afa4eaacb644db6b75 x2rgb10le c1e3ac21be04a16bb157b22784524520 xv30le c14b5a953bf3be56346f66ca174a5b1b diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index 666d99f932..37b78ce5ae 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -98,6 +98,7 @@ rgba64le fea8ebfc869b52adf353778f29eac7a7 uyva caa03b07812dbb6c48b5fb34edf73962 vuya 76578a705ff3a37559653c1289bd03dd vuyx 615241c5406eb556fca0ad8606c23a02 +vyu444 a6067a24e63385242948dbc4c5a4ab5d x2bgr10le 84de725b85662c362862820dc4a309aa x2rgb10le f4265aca7a67dbfa9354370098ca6f33 xv30le a9edb820819b900a4a897fee4562a4fb diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index 672ee5d2ec..0cf92f3c21 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -101,6 +101,7 @@ uyva c1c2953840061e3778842051b078a41e uyvy422 1c49e44ab3f060e85fc4a3a9464f045e vuya f72bcf29d75cd143d0c565f7cc49119a vuyx 3d02eeab336d0a8106f6fdd91be61073 +vyu444 09fcf24f46ed72d51983d87ad3bed864 x2bgr10le dbe21538d7cb1744914f6bd46ec09b55 x2rgb10le a18bc4ae5274e0a8cca9137ecd50c677 xv30le e940366c78efc9e292e9de28cf04dba9 diff --git a/tests/ref/fate/filter-pixfmts-fieldorder b/tests/ref/fate/filter-pixfmts-fieldorder index 4b9ba2a88d..d902c9087d 100644 --- a/tests/ref/fate/filter-pixfmts-fieldorder +++ b/tests/ref/fate/filter-pixfmts-fieldorder @@ -90,6 +90,7 @@ uyva fa5df2c0474b2a41dbe2210372b15fcc uyvy422 75de70e31c435dde878002d3f22b238a vuya a3891d4168ff208948fd0b3ba0910495 vuyx 9e4480c5fcb7c091ec3e517420764ef3 +vyu444 e2e54e73f81389559a972f4049ab8606 x2bgr10le 86474d84f26c5c51d6f75bf7e1de8da8 x2rgb10le cdf6a9e8a8d081aa768c6ae2e6221676 xv30le 25aac48128d94010a3660839500caee5 diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index 4742e3957e..49e2b60d34 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -98,6 +98,7 @@ rgba64le 0c810d8b3a6bca10321788e1cb145340 uyva 9266fd7374abf86f7035e356574586f0 vuya 7e530261e7ac4eae4fd616fd7572d0b8 vuyx f1d087284fb1556d76e6def5f94bf273 +vyu444 a9377d852b8263e50987593be7b03c7a x2bgr10le 827cc659f29378e00c5a7d2c0ada8f9a x2rgb10le d4a8189b65395a88d0a38a7053f3359f xv30le 072aa2b61ce1e764f9d1957e8abee9a9 diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il index f43377e3dc..852c6e126a 100644 --- a/tests/ref/fate/filter-pixfmts-il +++ b/tests/ref/fate/filter-pixfmts-il @@ -100,6 +100,7 @@ uyva f16f848f8283bcd59da6a4d85bc5b0a0 uyvy422 d6ee3ca43356d08c392382b24b22cda5 vuya b9deab5ba249dd608b709c09255a4932 vuyx 4251d94ee49e6a3cc1c10c09cd331308 +vyu444 cd6598487e9f9e2c7165b656c486eade x2bgr10le 135acaff8318cf9861bb0f7849a9e5e9 x2rgb10le 517fb186f523dc7cdc5c5c6967cfbe94 xv30le 7f6414a3fc700380025c29812e8376a9 diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index de9b35e35a..e538466636 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -101,6 +101,7 @@ uyva affad7282152bcce415bdf228df00ae4 uyvy422 3bcf3c80047592f2211fae3260b1b65d vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee +vyu444 2b2e6df31f5895340f25d6f67572b113 x2bgr10le 550c0d190cf695afa4eaacb644db6b75 x2rgb10le c1e3ac21be04a16bb157b22784524520 xv30le c14b5a953bf3be56346f66ca174a5b1b diff --git a/tests/ref/fate/filter-pixfmts-pad b/tests/ref/fate/filter-pixfmts-pad index bab4344e01..086d89e51c 100644 --- a/tests/ref/fate/filter-pixfmts-pad +++ b/tests/ref/fate/filter-pixfmts-pad @@ -45,6 +45,7 @@ rgba b157c90191463d34fb3ce77b36c96386 uyva be076f4efae6b51032c5fc676a31f2cc vuya 44368c0a758ee68e24ce976e3b1b8535 vuyx ff637b205b78ee581e393124d0f44f5d +vyu444 88fde4581eb7369d7ff28bb27268b169 ya16le dfc900a8130a7c5e64201557cbaef50a ya8 5d25e9a7975805d3f0dac516a6132b6e yuv410p cb871dcc1e84a7ef1d21f9237b88cf6e diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale index 66307bc1d3..67b1e4b075 100644 --- a/tests/ref/fate/filter-pixfmts-scale +++ b/tests/ref/fate/filter-pixfmts-scale @@ -101,6 +101,7 @@ uyva ee83c7ba25cfc997de70a4e5b3eb398f uyvy422 aeb4ba4f9f003ae21f6d18089198244f vuya ffa817e283bf6a0b6fba21b07523ccaa vuyx a6ff68f46c6b4b7595ec91b2a497df8e +vyu444 0e5edaa26029501f05c0693321d60ded x2bgr10le d57b9a99033cc7b65ddd111578f2d385 x2rgb10le d56bdb23fa6a8e12a0b4394987f89935 xv30le afe68d8a47e8460e0164970b1da0c5be diff --git a/tests/ref/fate/filter-pixfmts-transpose b/tests/ref/fate/filter-pixfmts-transpose index e5e8a3b7bc..de7ef24ec8 100644 --- a/tests/ref/fate/filter-pixfmts-transpose +++ b/tests/ref/fate/filter-pixfmts-transpose @@ -90,6 +90,7 @@ rgba64le ad47197774858858ae7b0c177dffa459 uyva 1500c3f52e32b2080be180d2e8196a7b vuya 9ece18a345beb17cd19e09e443eca4bf vuyx 46b5b821d7ee6ddedb3ddafd1e5b007c +vyu444 508978bb072eba1bc4636a4abd68dbe2 x2bgr10le 4aa774b6d8f6d446a64f1f288e5c97eb x2rgb10le 09cb1d98fe17ad8a6d9d3bec97ddc845 xv30le b1ac5a12f46d32c70acb63f89838ab76 diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip index 53ef4732cc..b55b6a94b6 100644 --- a/tests/ref/fate/filter-pixfmts-vflip +++ b/tests/ref/fate/filter-pixfmts-vflip @@ -101,6 +101,7 @@ uyva 0d2d0d286d841ea5b35cc06626dcafe4 uyvy422 3a237e8376264e0cfa78f8a3fdadec8a vuya fb849f76e56181e005c31fce75d7038c vuyx ed7de87da324b39090a8961dfd56ca5a +vyu444 5a98e2118b75a3804bb80003cf6fa731 x2bgr10le 795b66a5fc83cd2cf300aae51c230f80 x2rgb10le 262c502230cf3724f8e2cf4737f18a42 xv30le 7e29ee107a1fabf3c7251f337d4b9fe5 From patchwork Tue Oct 8 22:50:15 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52150 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp652319vql; Tue, 8 Oct 2024 18:56:12 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCX2sSOqEdE+Anz9DeJ9V8DA4IlKxX/Rl2XVMx8TQCApwC+ovHsLWpgwTnj2Ya2xmnUI1RTGzUCo3X3Vvx1i5tBU@gmail.com X-Google-Smtp-Source: AGHT+IHnrL5vO5I5x7kL2LuoKhBAj25pUUmdSDLNY0Dpjp3qnxh/Ly4/3JojgAs8DRD7c4Oeafow X-Received: by 2002:a05:6402:51d2:b0:5c8:b983:cf35 with SMTP id 4fb4d7f45d1cf-5c91d6656acmr600283a12.22.1728438972250; Tue, 08 Oct 2024 18:56:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728438972; cv=none; d=google.com; s=arc-20240605; b=fZSPHNg+VqTrjIAG42Ni7tWVddzRx2I8f3IW+5XCohrVEsTvE9ZUPe9WvTsu2acZFW kacv8ULi0li4dHEjzMY7Eb2Netd/WMPwvfmAhi7RuAl9qC/5Ckjrx0G8NMK+uNlHIlFS y8cuCqvEqUGRH/KASN/YDmeqpM8pjQGWBVzi/2uN/1zfLPDO/p1sE3TTt+Ndjgr5dILv C3efXFHrCcmZE0q/aJSq5QSbHYN2DHJxk2o3mZYOXlEwgzVs5xYoIBgj/Jt/hqj2FnT4 AE0t5lsekNXWpUx1OyMuPRu1CevzPp+ev1cFG7eLVi/03S8nAq9SdeDpK6zrG6VPunUA 1UoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=yEAaI49BrIFNJuCfE0XSQ5t3njBLVQCTcUtTo7NjDFg=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=hxIUlgmVyB6l9r8IzIbIw01T2Z9DPKUw/QMaKEYU/haamcLCPrTUv41lzy1UKLHd4P Fc8QNzOvpInDxmebpwbCvVnvm+EeiONIKpZQB+r/satwYt9yMNJgejkRgQ1Lc5TwlIQe P/HDXw37lzeuE+wj/FqfRnV4wGOb/4myyaWXOCJ33PLlbb9+hNqQPkic3etB+aDieu+/ qalGzcocJ9ZZK2RRk1v0vjl1GU5WCMS0bhUX77Y9l71iW2MgvyPHs5v9q34DauWivBOp hJjjdKiS/LFKpDsw4EVN13Q6gR42T2uBCQ/82JtKxqVEOcVOBM21ITHQ+jOsRrYTeLRe 206g==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=HYNwREBa; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c8e058a7ebsi6713812a12.123.2024.10.08.18.56.11; Tue, 08 Oct 2024 18:56:12 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=HYNwREBa; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6F92568DDD2; Wed, 9 Oct 2024 01:50:54 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9277368DDA5 for ; Wed, 9 Oct 2024 01:50:51 +0300 (EEST) Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-20b1335e4e4so61018365ad.0 for ; Tue, 08 Oct 2024 15:50:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427849; x=1729032649; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=FKOMUij3GQzQFeGHMdqJJjhgIhtViJ2CAN8Bxx8hfDU=; b=HYNwREBa0CWvWvaH8H3UXmEghABvsAsQpj1xD9wcEDFaSGCvOI3nI2mjFhEj1xPALj BDtI552h9kvEzVes6+Fw/nvBChXpTuF0HorwDa07TWNub1YYFPM92Rhr0SnzdyomNKDA eqHlRaUqsW/sEJ7HLZ6Dalyw6bSsQnwoCBlKhEHD/uX2gwvsI+aYrTpBUh37sKcPiTtp xOeiBYQx34u5X1ZMZv3vKSbT1ue3vfGR0uNf6ajAAQNiIu1dzEggShVaZ9W5TldxrNAe /cI0PR83kQBUMpkgU+N5xcqletvrSNiHzeCYk37KYDmXsANsL4vZRmEdoOWwPPsRIbGh Cy8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427849; x=1729032649; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FKOMUij3GQzQFeGHMdqJJjhgIhtViJ2CAN8Bxx8hfDU=; b=jeCYmqhqOoEWYwADbrWaFPFccq99gU6fbtcPCxPbnEJQLxSoCdCLClo1Q/8S4afg6W ns2snFYzJO8vvFP1qtvk7wHKJtSWFnNsV/zZwRThj2Jke94dFDZeCcx92sRLBqV9EJO/ w/nGcy6txzwStAaII0njDNmzca352jaoqXdUG3LCJ0Se17c6SUdqnGTSh2/JVAItbmgK dVb1elbD0G4NDLYUzm/r2MjuX/nNtUeiRehVSW3XVi6T+8Vhw8yEJtYE1yM+jYbZFbtg Wby7kUlvzuOKgXzYXpDmw7QL4UAev10yGh6iG/wHpNOW62q5HtH0O5i2hw8O7r1Bthja DQHA== X-Gm-Message-State: AOJu0YywQPSDj3a4FrNyfEwT+FftF7XeeztBL1FalQ+PsmRbwu+YfTps CDX9OvSsK71+HjDU2L8GxHvvVHbWWQ55Zh549ZW5N87mAr/UstXohV8LAA== X-Received: by 2002:a17:903:244e:b0:20c:5b98:8cd7 with SMTP id d9443c01a7336-20c637f84aemr8840955ad.38.1728427848965; Tue, 08 Oct 2024 15:50:48 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.47 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:48 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:15 -0300 Message-ID: <20241008225027.12209-10-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 10/21] avformat/riff: map y408 fourcc to RAWVIDEO decoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: VrUXWm0BzxRd Signed-off-by: James Almer --- libavcodec/raw.c | 1 + libavformat/riff.c | 1 + tests/ref/fate/filter-pixdesc-ayuv | 2 +- tests/ref/fate/filter-pixfmts-copy | 2 +- tests/ref/fate/filter-pixfmts-crop | 2 +- tests/ref/fate/filter-pixfmts-field | 2 +- tests/ref/fate/filter-pixfmts-fieldorder | 2 +- tests/ref/fate/filter-pixfmts-hflip | 2 +- tests/ref/fate/filter-pixfmts-il | 2 +- tests/ref/fate/filter-pixfmts-null | 2 +- tests/ref/fate/filter-pixfmts-pad | 2 +- tests/ref/fate/filter-pixfmts-scale | 2 +- tests/ref/fate/filter-pixfmts-transpose | 2 +- tests/ref/fate/filter-pixfmts-vflip | 2 +- 14 files changed, 14 insertions(+), 12 deletions(-) diff --git a/libavcodec/raw.c b/libavcodec/raw.c index b73b80e5fd..acdd79ded8 100644 --- a/libavcodec/raw.c +++ b/libavcodec/raw.c @@ -237,6 +237,7 @@ static const PixelFormatTag raw_pix_fmt_tags[] = { { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', '2') }, { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', 's') }, { AV_PIX_FMT_YUYV422, MKTAG('D', 'V', 'O', 'O') }, /* Digital Voodoo SD 8 Bit */ + { AV_PIX_FMT_AYUV, MKTAG('y', '4', '0', '8') }, { AV_PIX_FMT_RGB555LE,MKTAG('L', '5', '5', '5') }, { AV_PIX_FMT_RGB565LE,MKTAG('L', '5', '6', '5') }, { AV_PIX_FMT_RGB565BE,MKTAG('B', '5', '6', '5') }, diff --git a/libavformat/riff.c b/libavformat/riff.c index ca81b4837a..b079b00f6c 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -296,6 +296,7 @@ const AVCodecTag ff_codec_bmp_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '4', 'C', 'B') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '0', 'F', 'L') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '0', 'F', 'B') }, + { AV_CODEC_ID_RAWVIDEO, MKTAG('y', '4', '0', '8') }, { AV_CODEC_ID_FRWU, MKTAG('F', 'R', 'W', 'U') }, { AV_CODEC_ID_R10K, MKTAG('R', '1', '0', 'k') }, { AV_CODEC_ID_R210, MKTAG('r', '2', '1', '0') }, diff --git a/tests/ref/fate/filter-pixdesc-ayuv b/tests/ref/fate/filter-pixdesc-ayuv index 178e847222..aed45638ef 100644 --- a/tests/ref/fate/filter-pixdesc-ayuv +++ b/tests/ref/fate/filter-pixdesc-ayuv @@ -1 +1 @@ -pixdesc-ayuv a21ac760efdec0065bcf605f4ed75f7f +pixdesc-ayuv 31b8e3c2e1f027af001f774e8a6feae4 diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index bf2eaaf23e..4910c1b9ed 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -2,7 +2,7 @@ 0rgb 527ef3d164c8fd0700493733959689c2 abgr 023ecf6396d324edb113e4a483b79ba2 argb f003b555ef429222005d33844cca9325 -ayuv eb7e43cfbb961d1e369311d0f58b9f52 +ayuv 631859cdc018cd9671482e435a87becc ayuv64le 07b9c969dfbe4add4c0626773b151d4f bgr0 6fcd67c8e6cec723dab21c70cf53dc16 bgr24 4cff3814819f02ecf5824edfd768d2b1 diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index f4aa40f1e4..7fe2876e40 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -2,7 +2,7 @@ 0rgb 974833c777e6abe6d84dc59af2ca5625 abgr 1d21f5b8a20186ac9dd54459c986a2a7 argb 8b822972049a1e207000763f2564d6e0 -ayuv f2846cdd8fc01820e561fe4d3855938c +ayuv fb7bdb9f775c47099892c0588f5be426 ayuv64le ab2f7bc8f150af47c42c778e3ea28bce bgr0 38a84849a9198667c348c686802e3b52 bgr24 1dacd8e04bf0eff163e82250d01a9cc7 diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index 5466291c60..51107d7b91 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -2,7 +2,7 @@ 0rgb e2c35753a2271d1f9455b1809bc0e907 abgr c0eb95959edf5d40ff8af315e62d0f8a argb 6dca4f2987b49b7d63f702d17bace630 -ayuv 6aeadbc3ec2a6ff2bfab9495e7285fed +ayuv 25f429cbd3c1ac60851d69c262601415 ayuv64le d9836decca6323ba88b3b3d02257c0b6 bgr0 1da3fdbac616b3b410d081e39ed7a1f6 bgr24 573c76d77b1cbe6534ea7c0267dc1b13 diff --git a/tests/ref/fate/filter-pixfmts-fieldorder b/tests/ref/fate/filter-pixfmts-fieldorder index 871adcb4d1..72af3664b8 100644 --- a/tests/ref/fate/filter-pixfmts-fieldorder +++ b/tests/ref/fate/filter-pixfmts-fieldorder @@ -2,7 +2,7 @@ 0rgb 2b0f066cfa0bef378a492875d541de8f abgr 832924b5351361db68dbdbb96c60ae55 argb 80d08e68cb91bc8f2f817516e65f0bd0 -ayuv 61b23fc754d8ca0d6740fa08a0a6ebf2 +ayuv 7fd34c9bd28c8ac7979eaa41c1a8ab9f ayuv64le 84ef6260fe02427da946d4a2207fb54c bgr0 d2c676224ea80ac3ce01afde325ea1a0 bgr24 b7fdbcd10f20e6ea2d40aae0f329f80d diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index 4d9cfdce31..0592290ebc 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -2,7 +2,7 @@ 0rgb ada57572ee2b35f86edac9b911ce8523 abgr d2da6c3ee72e4a89a7cd011dd08566b2 argb 36cf791c52c5463bfc52a070de54337e -ayuv 122f591eac5669b658c22b09355e4263 +ayuv ae787b7ee2a8b1f4af2335ddca56ff58 ayuv64le 4cedbc38b3d4dcb26cdab170ce6d667b bgr0 66e9fda4e658d73bfe4fc9d792542271 bgr24 db074979bd684ca4547e28681ad3f6ab diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il index 5fbd162239..04a12e53a6 100644 --- a/tests/ref/fate/filter-pixfmts-il +++ b/tests/ref/fate/filter-pixfmts-il @@ -2,7 +2,7 @@ 0rgb 53efe0182723cd1dedfdbf56357c76f5 abgr 97603869e6248a8e5d8501563a11b114 argb 9e50e6ef02c83f28e97865a1f46ddfcd -ayuv 3dfdbbbf605d83629f3ef4c96210b074 +ayuv 6e65a0b3bb18e89997dd558a7331df17 ayuv64le 6f45f683e99ddf4180c7c7f47719efcc bgr0 590dcd1297d1dd4541eea217381db604 bgr24 73afe7b447b083a7c2d682abe8dd451a diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index bf2eaaf23e..4910c1b9ed 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -2,7 +2,7 @@ 0rgb 527ef3d164c8fd0700493733959689c2 abgr 023ecf6396d324edb113e4a483b79ba2 argb f003b555ef429222005d33844cca9325 -ayuv eb7e43cfbb961d1e369311d0f58b9f52 +ayuv 631859cdc018cd9671482e435a87becc ayuv64le 07b9c969dfbe4add4c0626773b151d4f bgr0 6fcd67c8e6cec723dab21c70cf53dc16 bgr24 4cff3814819f02ecf5824edfd768d2b1 diff --git a/tests/ref/fate/filter-pixfmts-pad b/tests/ref/fate/filter-pixfmts-pad index 086d89e51c..f995db4237 100644 --- a/tests/ref/fate/filter-pixfmts-pad +++ b/tests/ref/fate/filter-pixfmts-pad @@ -2,7 +2,7 @@ 0rgb 8e076dd0f8a9f4652595dffe3544f0f0 abgr 52738042432893de555e6a3833172806 argb 2a10108ac524b422b8a2393c064b3eab -ayuv ddb44f03af05b0cb01dced60641a4160 +ayuv 1c0934c07791c49da33c14f535d73abc bgr0 025d4d5e5691801ba39bc9de70e39df0 bgr24 f8b65ad845905c7d0c93ca28dfbb826f bgr48le 4564b56dd1f2a9761b8a7a5244ac4c49 diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale index dd6ba5ff66..b6516d2970 100644 --- a/tests/ref/fate/filter-pixfmts-scale +++ b/tests/ref/fate/filter-pixfmts-scale @@ -2,7 +2,7 @@ 0rgb 80a58af8c639743307207ab4b69ca863 abgr 63f2eaa8712ea6108985f4a0b83587c9 argb f0e17c71a40643c33a5bcfb481f6d8f8 -ayuv 9992b829065e2ea4a44de3a25766ca9b +ayuv f20a5cc54f6459aad6b5f36ae092da5d ayuv64le 59fb016f9874062d0be77cb3920ffed2 bgr0 243d58ca64f97b2f415b4c63cb79f0e1 bgr24 18744aaab4b8bce065a7144dc0ccf921 diff --git a/tests/ref/fate/filter-pixfmts-transpose b/tests/ref/fate/filter-pixfmts-transpose index 450905ead6..e7fa2ca852 100644 --- a/tests/ref/fate/filter-pixfmts-transpose +++ b/tests/ref/fate/filter-pixfmts-transpose @@ -2,7 +2,7 @@ 0rgb cf1bedd0784a3efd3ab00c4e44005c37 abgr 6d6f896f853a6c6f93ee70dba9af3d17 argb 87bbd23debb94d486ac3a6b6c0b005f9 -ayuv fe3d4a2d4d37deb94e6f447edc77f199 +ayuv ba6a6588737f8ddffd2018d9c667e559 ayuv64le e4c07e0d5b333b3bc9eb4f3ce6af3a2c bgr0 df3a6eedd4939ce09a357b655ac2962a bgr24 f9a08135e5d58c0b2a5509c369a88414 diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip index a23da2c39e..edcd3ed3d3 100644 --- a/tests/ref/fate/filter-pixfmts-vflip +++ b/tests/ref/fate/filter-pixfmts-vflip @@ -2,7 +2,7 @@ 0rgb 76b792f8ce8a72925e04294dc2f25b36 abgr 8b94f489e68802d76f1e2844688a4911 argb 3fd6af7ef2364d8aa845d45db289a04a -ayuv 928ac9b09b90dec1d8bc3ecd13b75a60 +ayuv c3bc52cd5ae5094c85bd465a259e2870 ayuv64le 558671dd31d0754cfa6344eaf441df78 bgr0 7117438cf000254610f23625265769b5 bgr24 52b2c21cbc166978a38a646c354b6858 From patchwork Tue Oct 8 22:50:16 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52160 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp734624vql; Tue, 8 Oct 2024 23:36:33 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXIKAfY+b3G+WNBdlljw99ylLKfmq/QKC69fnzKzlYRHskFblcETO0iDu6V58fSXdmim+jX35sHiPFHKdVo6/Pn@gmail.com X-Google-Smtp-Source: AGHT+IHdZfRsXd01O4V+lYfpA1DQKBWiaQDS3FEixTXh8jsk79UEGPhJZpJybF2uE15LJaT7kZM6 X-Received: by 2002:a17:907:6d12:b0:a8d:2faf:d343 with SMTP id a640c23a62f3a-a998d1f503emr81715366b.27.1728455793329; Tue, 08 Oct 2024 23:36:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728455793; cv=none; d=google.com; s=arc-20240605; b=OVDq2hkGAib0tPFEz2aFG6ohxuqUxuBImHjWi9m5O2TJtNRT8ngs4mYZtJi21KjONr rbZ70oCIoYj+hzoHWWiutKsvJxQZDygn4hNlrfIbVkNgixzgZjYvULu+ALMlA25KbJ1n ghhp50/ZM53hTBs5phg5HxRpyZ8tcepr2v+TolWccvgzkdEOdQOAZ4z5TNMrIbgMEABK 9COkERZ+7zNJuFX6I93+fSbF9e409S4Q1xeb0MJd4AiMhQ1Et5AgycXRHO2x2L992b2L LX9gtiilbo6SN1yJ14IghYltRI8DNp3znuY0+TEDUQzXDAu0toMDKfm45wkDmc0D9jCB LUBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=PfVy7LVsbyjbJpTRi2WneaGVHdtAEmbW3rRYzPK9TrE=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=B541gHXtOp1IJ1cmjhubVa/oy1YXoT/wpC2OXbYSyQeT4Z/31B942FxOcJUT6CvVfw Xhqf5IVwe4+jMyU3aLo03lF1n0s2gsTVke+gOXeCBa76B6/iBmaJaoEO7aGHlMERNA0S Mx6iEfaDeKZO0lFiZd0eKZ36F6Qh/TLWx5F9XJmgsr+K/cjfULjToUR9WW2T4C9eCRdh 6EVhoHseAru52bOWvzrMG6ZJypZEs0hoD6y+fCJc5jSurP1kUISQkppa83P9Ahp9G+5K 1/EGvD4Sa/G1IzqdGxBICbMBSifUDMhz8dBzyFAOGly8c/v3Wfzukk2QuBD0j14EPnfW dpTw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=Idh5qN0v; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a640c23a62f3a-a99585e1010si406116766b.341.2024.10.08.23.36.08; Tue, 08 Oct 2024 23:36:33 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=Idh5qN0v; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id EA5F168DDE1; Wed, 9 Oct 2024 01:50:56 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E68A468DDB8 for ; Wed, 9 Oct 2024 01:50:52 +0300 (EEST) Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-20b84bfbdfcso2121635ad.0 for ; Tue, 08 Oct 2024 15:50:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427851; x=1729032651; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=RxOKZoT3W1vLcsLWqPKZBVJcLcGGRuX9KnQGA1pjIMs=; b=Idh5qN0vVXpRAcK6KQZHqul8dnOfR1CfY1CzA/uLhpVBtoeNxeVnpH92jk9wzcKibF arr7xz/EkRbAjLRaCEKwMd+2lFevIRqO/QQt9RXUwAZk1r8pUvJ6PQ4gAGfYx0bKCHAe 69TyV0oBLFJO/WGLk5AY0OautmIN7qJcixECe8iUY2PFrKaUcaG+a2J4xxmZMX1tjNaj KxSsjbmI57me/7U8XfvddcmKZzPibCydX3/tMNJeROonZtu03nSJMouNxLZZj/E7ndTz 205gsdMviqrQPKn4TZjSH+s2lujFMga5aXfzgmOqtHjLDOvv4bO6161ec8+K6qtR94cD nxYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427851; x=1729032651; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RxOKZoT3W1vLcsLWqPKZBVJcLcGGRuX9KnQGA1pjIMs=; b=Q2aiHZypyT3gQfY8bVaSajFR4xMcLPfgLPsWTqg+ljr1c0arbug7w8hkXL78hi2lK+ toldkI2OHyZpA8U6m5jFSLI6IG1TNuAnQYlWcYBVvfbq6Qo57mMbSWibJ5jI2ZO+InRL Nmc5/e2RCLsaHhx7Hup5vhq7aaoScRMOmSusxBqgD3HO8dYZTyX+taihUbVPmbsrXGfT sffb53pTz4O1c3BxWo9mo80ETI0qiTCa/1Jkmmn6wKxciOBlzZl3J1b/0bm0gl0o4w5x cAwTSq1cMYrKBtFyZ/6VSxsJGwl2X0EzNi4uIesBikwAz17CGEhPXxBHA0dmWpdjKkSf QYig== X-Gm-Message-State: AOJu0Yyc4fk5UTuqIGgaMMXykf9L7CwZcPzQs5xGrIGooLNuXkkJuvMh V6jg3UE/HSfcxwHH4wk0XJMsjmAQ4cmTX8qUr+fUYZCZPyrN3jQpVms4AA== X-Received: by 2002:a17:902:f545:b0:206:955c:67be with SMTP id d9443c01a7336-20c4e288024mr58703885ad.9.1728427850544; Tue, 08 Oct 2024 15:50:50 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.49 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:49 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:16 -0300 Message-ID: <20241008225027.12209-11-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 11/21] avformat/riff: map v408 fourcc to RAWVIDEO decoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: bOL8KFkgBpZ0 There's no need to keep using a custom decoder for this pixel format. Signed-off-by: James Almer --- libavcodec/raw.c | 1 + libavformat/riff.c | 1 + tests/ref/fate/filter-pixdesc-uyva | 2 +- tests/ref/fate/filter-pixfmts-copy | 2 +- tests/ref/fate/filter-pixfmts-crop | 2 +- tests/ref/fate/filter-pixfmts-field | 2 +- tests/ref/fate/filter-pixfmts-fieldorder | 2 +- tests/ref/fate/filter-pixfmts-hflip | 2 +- tests/ref/fate/filter-pixfmts-il | 2 +- tests/ref/fate/filter-pixfmts-null | 2 +- tests/ref/fate/filter-pixfmts-pad | 2 +- tests/ref/fate/filter-pixfmts-scale | 2 +- tests/ref/fate/filter-pixfmts-transpose | 2 +- tests/ref/fate/filter-pixfmts-vflip | 2 +- 14 files changed, 14 insertions(+), 12 deletions(-) diff --git a/libavcodec/raw.c b/libavcodec/raw.c index acdd79ded8..4b77be4157 100644 --- a/libavcodec/raw.c +++ b/libavcodec/raw.c @@ -237,6 +237,7 @@ static const PixelFormatTag raw_pix_fmt_tags[] = { { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', '2') }, { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', 's') }, { AV_PIX_FMT_YUYV422, MKTAG('D', 'V', 'O', 'O') }, /* Digital Voodoo SD 8 Bit */ + { AV_PIX_FMT_UYVA, MKTAG('v', '4', '0', '8') }, { AV_PIX_FMT_AYUV, MKTAG('y', '4', '0', '8') }, { AV_PIX_FMT_RGB555LE,MKTAG('L', '5', '5', '5') }, { AV_PIX_FMT_RGB565LE,MKTAG('L', '5', '6', '5') }, diff --git a/libavformat/riff.c b/libavformat/riff.c index b079b00f6c..02f6b5ebc6 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -296,6 +296,7 @@ const AVCodecTag ff_codec_bmp_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '4', 'C', 'B') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '0', 'F', 'L') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '0', 'F', 'B') }, + { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '0', '8') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('y', '4', '0', '8') }, { AV_CODEC_ID_FRWU, MKTAG('F', 'R', 'W', 'U') }, { AV_CODEC_ID_R10K, MKTAG('R', '1', '0', 'k') }, diff --git a/tests/ref/fate/filter-pixdesc-uyva b/tests/ref/fate/filter-pixdesc-uyva index 49fd1bc6b1..684562877e 100644 --- a/tests/ref/fate/filter-pixdesc-uyva +++ b/tests/ref/fate/filter-pixdesc-uyva @@ -1 +1 @@ -pixdesc-uyva 7cec5f820722500f491c3495113e726e +pixdesc-uyva 646d7fbb9600f80590d9a7cff4919cd5 diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index 4910c1b9ed..419d0e9bd9 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -97,7 +97,7 @@ rgb8 7ac6008c84d622c2fc50581706e17576 rgba b6e1b441c365e03b5ffdf9b7b68d9a0c rgba64be ae2ae04b5efedca3505f47c4dd6ea6ea rgba64le b91e1d77f799eb92241a2d2d28437b15 -uyva affad7282152bcce415bdf228df00ae4 +uyva 8896d7525f12de08818a01a5d5cf84f1 uyvy422 3bcf3c80047592f2211fae3260b1b65d v30xle b5ec677137b6f1d9f14a2386a1a7a526 vuya 3d5e934651cae1ce334001cb1829ad22 diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index 7fe2876e40..0ee93f570a 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -95,7 +95,7 @@ rgb8 9b364a8f112ad9459fec47a51cc03b30 rgba 9488ac85abceaf99a9309eac5a87697e rgba64be 89910046972ab3c68e2a348302cc8ca9 rgba64le fea8ebfc869b52adf353778f29eac7a7 -uyva caa03b07812dbb6c48b5fb34edf73962 +uyva 03f362ac6a39f25286bc6616111b0752 v30xle f92c959d672e17a3a27351e671757212 vuya 76578a705ff3a37559653c1289bd03dd vuyx 615241c5406eb556fca0ad8606c23a02 diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index 51107d7b91..364fae0882 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -97,7 +97,7 @@ rgb8 62c3b9e2a171de3d894a8eeb271c85e8 rgba ee616262ca6d67b7ecfba4b36c602ce3 rgba64be 23c8c0edaabe3eaec89ce69633fb0048 rgba64le dfdba4de4a7cac9abf08852666c341d3 -uyva c1c2953840061e3778842051b078a41e +uyva 147398d2e8d310f915c95863ad192c5e uyvy422 1c49e44ab3f060e85fc4a3a9464f045e v30xle 265a463ad722cfaede2fa6cb5e9bf34e vuya f72bcf29d75cd143d0c565f7cc49119a diff --git a/tests/ref/fate/filter-pixfmts-fieldorder b/tests/ref/fate/filter-pixfmts-fieldorder index 72af3664b8..aa9bea3d52 100644 --- a/tests/ref/fate/filter-pixfmts-fieldorder +++ b/tests/ref/fate/filter-pixfmts-fieldorder @@ -86,7 +86,7 @@ rgb8 6deae05ccac5c50bd0d9c9fe8e124557 rgba 1fdf872a087a32cd35b80cc7be399578 rgba64be 5598f44514d122b9a57c5c92c20bbc61 rgba64le b34e6e30621ae579519a2d91a96a0acf -uyva fa5df2c0474b2a41dbe2210372b15fcc +uyva ccf5dfd33765dda88c4b4afa2ea31305 uyvy422 75de70e31c435dde878002d3f22b238a v30xle 1f04ac91824200d94d7841736c41f728 vuya a3891d4168ff208948fd0b3ba0910495 diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index 0592290ebc..7d17f057d1 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -95,7 +95,7 @@ rgb8 68a3a575badadd9e4f90226209f11699 rgba 51961c723ea6707e0a410cd3f21f15d3 rgba64be c910444019f4cfbf4d995227af55da8d rgba64le 0c810d8b3a6bca10321788e1cb145340 -uyva 9266fd7374abf86f7035e356574586f0 +uyva a8391c24037e2a670196b47bf6a2ca57 v30xle 1c62803a7a7c0c89e5fda3d41cc0a376 vuya 7e530261e7ac4eae4fd616fd7572d0b8 vuyx f1d087284fb1556d76e6def5f94bf273 diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il index 04a12e53a6..6e5f11ca46 100644 --- a/tests/ref/fate/filter-pixfmts-il +++ b/tests/ref/fate/filter-pixfmts-il @@ -96,7 +96,7 @@ rgb8 93f9fa5ecf522abe13ed34f21831fdfe rgba 625d8f4bd39c4bdbf61eb5e4713aecc9 rgba64be db70d33aa6c06f3e0a1c77bd11284261 rgba64le a8a2daae04374a27219bc1c890204007 -uyva f16f848f8283bcd59da6a4d85bc5b0a0 +uyva d2655e1a1c56bcb48f7c7a6a6270dd93 uyvy422 d6ee3ca43356d08c392382b24b22cda5 v30xle 267a4c668b14157d35399302bb978ac1 vuya b9deab5ba249dd608b709c09255a4932 diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index 4910c1b9ed..419d0e9bd9 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -97,7 +97,7 @@ rgb8 7ac6008c84d622c2fc50581706e17576 rgba b6e1b441c365e03b5ffdf9b7b68d9a0c rgba64be ae2ae04b5efedca3505f47c4dd6ea6ea rgba64le b91e1d77f799eb92241a2d2d28437b15 -uyva affad7282152bcce415bdf228df00ae4 +uyva 8896d7525f12de08818a01a5d5cf84f1 uyvy422 3bcf3c80047592f2211fae3260b1b65d v30xle b5ec677137b6f1d9f14a2386a1a7a526 vuya 3d5e934651cae1ce334001cb1829ad22 diff --git a/tests/ref/fate/filter-pixfmts-pad b/tests/ref/fate/filter-pixfmts-pad index f995db4237..3ed65ebced 100644 --- a/tests/ref/fate/filter-pixfmts-pad +++ b/tests/ref/fate/filter-pixfmts-pad @@ -42,7 +42,7 @@ rgb0 0984eb985dabbe757ed6beb53db84eff rgb24 17f9e2e0c609009acaf2175c42d4a2a5 rgb48le ed08db9b1aa50d69b8c3d73db93e390e rgba b157c90191463d34fb3ce77b36c96386 -uyva be076f4efae6b51032c5fc676a31f2cc +uyva 06271af718417c21d5bc6a992b04c32a vuya 44368c0a758ee68e24ce976e3b1b8535 vuyx ff637b205b78ee581e393124d0f44f5d vyu444 88fde4581eb7369d7ff28bb27268b169 diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale index b6516d2970..57c530b487 100644 --- a/tests/ref/fate/filter-pixfmts-scale +++ b/tests/ref/fate/filter-pixfmts-scale @@ -97,7 +97,7 @@ rgb8 bcdc033b4ef0979d060dbc8893d4db58 rgba 85bb5d03cea1c6e8002ced3373904336 rgba64be ee73e57923af984b31cc7795d13929da rgba64le 783d2779adfafe3548bdb671ec0de69e -uyva ee83c7ba25cfc997de70a4e5b3eb398f +uyva 2358038be6dac002a6c736e798a3d91c uyvy422 aeb4ba4f9f003ae21f6d18089198244f v30xle 42be9fac7725274bf54012b073ee0e91 vuya ffa817e283bf6a0b6fba21b07523ccaa diff --git a/tests/ref/fate/filter-pixfmts-transpose b/tests/ref/fate/filter-pixfmts-transpose index e7fa2ca852..5902d90910 100644 --- a/tests/ref/fate/filter-pixfmts-transpose +++ b/tests/ref/fate/filter-pixfmts-transpose @@ -87,7 +87,7 @@ rgb8 c90feb30c3c9391ef5f470209d7b7a15 rgba 4d76a9542143752a4ac30f82f88f68f1 rgba64be a60041217f4c0cd796d19d3940a12a41 rgba64le ad47197774858858ae7b0c177dffa459 -uyva 1500c3f52e32b2080be180d2e8196a7b +uyva cb773ee5a9f8964b9c826d55f9f425a3 v30xle 8a31095e6eb8e85ab6f030773fa20d03 vuya 9ece18a345beb17cd19e09e443eca4bf vuyx 46b5b821d7ee6ddedb3ddafd1e5b007c diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip index edcd3ed3d3..73d9d3297e 100644 --- a/tests/ref/fate/filter-pixfmts-vflip +++ b/tests/ref/fate/filter-pixfmts-vflip @@ -97,7 +97,7 @@ rgb8 7df049b6094f8a5e084d74462f6d6cde rgba c1a5908572737f2ae1e5d8218af65f4b rgba64be 17e6273323b5779b5f3f775f150c1011 rgba64le 48f45b10503b7dd140329c3dd0d54c98 -uyva 0d2d0d286d841ea5b35cc06626dcafe4 +uyva d43e89ba3d5c9274e1948eac8630fcc6 uyvy422 3a237e8376264e0cfa78f8a3fdadec8a v30xle 1b2e25e974fdcd53b396b577725d33cb vuya fb849f76e56181e005c31fce75d7038c From patchwork Tue Oct 8 22:50:17 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52146 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp605358vql; Tue, 8 Oct 2024 16:46:10 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXDCq9rVVGLfzFVFmenykLMKQrz0BNvMLO27J2YJYPJDVmHJMsahdwrul2W9WgFsyjQdAzUxmmga4MiJFq7MCPj@gmail.com X-Google-Smtp-Source: AGHT+IHCXzfV0Kh61c3rCq4PpMSdAHq4Rv6SRXMZWATycQk1wuVZ7+xBZem6qnFnucniHbAT46do X-Received: by 2002:a2e:511a:0:b0:2fb:d37:172 with SMTP id 38308e7fff4ca-2fb187cd624mr2650021fa.39.1728431170003; Tue, 08 Oct 2024 16:46:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728431169; cv=none; d=google.com; s=arc-20240605; b=d2lJiDzYsfxMp7GJK7RX/tgs+2Otj0B50pw0oWtGouUyMZn3+c9yE//CNYfpTadmuD 2QG4jlAHe43Hh/IyM6lbLxrqR1lgjHWpCLUHf9kaLc4X+R9Opxw/3vnkm5ait4049jkA FP46UKHG7nx88azqde2dqVJr/1xxyAdHW2AOReD4Bs1oZ1m4PrIv4FEVsTCfnJYebo4r ZU0VSOGjjHZLN35m6ViZufyANT8rNPJ4jUCQQ74dj8lFlCbA/AgDpl2cY7p/MNaUBfjC P70RRdeeA7vOIuWYTB7YSI1S6N2R2LxMqnD4jch9lzV6j+dvPlu52EuN9bidTdtIGceb OazA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=0A44WakxhYF0iNSvM+SJ4seSlyNnbLvQUYHV7SZ9GVE=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=dnXY8llAvwRxLY0hvwojzjfXm4sNxvA5ez6/4Rmm25JwNEcEDqHoN7DsmCjmPOeAJa +AzJDEiJzRDJo2eXeHbJczG1c5qjr79QiGCQkWJEZRVEXRBorIDaaOF5wWNz2jYM2PXg I5hJhOTtoVeClnawP3fCQ4gIuPluGa7OYoJtV41jELGYNx2c1vgRZ53yNIuvjcgH5SE/ JnqHyPzcuEHlAvDo/LsnnHtNwvlO945MFt5cKsBM+MoK72lGHRtKKTrSfg7WOEiV8joS 081zx3xcZMjON0lL1A1rATWRNfy6K/sdgBKXHDZS/P6knUQnbtvKfJxofReztH0EyRGs ZT0w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=hAcbjmZK; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 38308e7fff4ca-2faf9b22a2bsi27562471fa.311.2024.10.08.16.46.09; Tue, 08 Oct 2024 16:46:09 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=hAcbjmZK; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5EE4868DDF1; Wed, 9 Oct 2024 01:50:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BAA2668DDBA for ; Wed, 9 Oct 2024 01:50:54 +0300 (EEST) Received: by mail-pl1-f169.google.com with SMTP id d9443c01a7336-20b5fb2e89dso49210955ad.1 for ; Tue, 08 Oct 2024 15:50:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427852; x=1729032652; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=8Tot1he8CbmE8Br1NzeR9xlbY1vcccleRpm3Q0YIE0w=; b=hAcbjmZKvV5m+zTOBzt4VfPW7V7Y+2Q8vn2J8CmX4Kl8LIWYYRpdhjmC64BS7CNZ1p /TchoFoC8TR8Auy6acWFAlnwa4/ofi29N3uF6oOv+zEJMrzGqVVYrW4h2RjuRcLir5p4 WxCVKVaVPvH+LqnPPOu28OaSsIO7Giio0SbV+nuGWuIz7HFMCiFzt/mUgiuoMq2LRCj5 fLKRYYCMLr8Qi5lNFw+nPnwifCqNpMCPSwFM26K+8HEEQz/IkMLHpVgzBAtv1Yt9Fcg4 aIiveT9qY7xeY6K4E1wFRTtsexvvT6LcDRp12faXTnZbSe7cFgyUpOdjUm24jzo5pxVk MqdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427852; x=1729032652; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8Tot1he8CbmE8Br1NzeR9xlbY1vcccleRpm3Q0YIE0w=; b=hH+ce+vAHKNsGaxU+5mxIWJe8kOcXLUxlsIb3t9Cl4n1+DY2gWtndE2PC3iIFqgnQE 1ceHkLNuAwLeOduBa52oLAOwm5HeVFim4M3sRiT1pZIfvPrfy1rGSASG5w5o5wt2xI2i p72xb2ZAJKdJQ75ly17xXOxDHR33vqi31kPTMpAinGYT5Ryv4r0FruOB5HClYXW7ny9c I75hdQazZllBFw1ZTapbdA9yQ52Zm25Joo0MuyVEHA+EBfDNkdJH//wWZGwcBM5+Ma8U QfEOhbuVNNhoDd2GFIkzsCX/9iPyddLNHYCH5tr00IsgKcqzdcYk8n0z6LnSrS01vXAe L2KA== X-Gm-Message-State: AOJu0YyK83okBTilNc4E3NWIvBcHGhNRsmpp8SZMtx3nFIJ0NBG8kadF Xu+k8PZRj2t58sejnpG2lwnsNE5VLqb5Nma4Hs8e/aGlec6XmhImfpolPg== X-Received: by 2002:a17:902:e74e:b0:20b:9c8c:e9f3 with SMTP id d9443c01a7336-20c637235cdmr7913445ad.14.1728427851977; Tue, 08 Oct 2024 15:50:51 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.50 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:51 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:17 -0300 Message-ID: <20241008225027.12209-12-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 12/21] avformat/riff: map v308 fourcc to RAWVIDEO decoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: yvBN+kldTZER There's no need to keep using a custom decoder for this pixel format. Signed-off-by: James Almer --- libavcodec/raw.c | 1 + libavformat/riff.c | 1 + tests/ref/fate/filter-pixdesc-vyu444 | 2 +- tests/ref/fate/filter-pixfmts-copy | 2 +- tests/ref/fate/filter-pixfmts-crop | 2 +- tests/ref/fate/filter-pixfmts-field | 2 +- tests/ref/fate/filter-pixfmts-fieldorder | 2 +- tests/ref/fate/filter-pixfmts-hflip | 2 +- tests/ref/fate/filter-pixfmts-il | 2 +- tests/ref/fate/filter-pixfmts-null | 2 +- tests/ref/fate/filter-pixfmts-pad | 2 +- tests/ref/fate/filter-pixfmts-scale | 2 +- tests/ref/fate/filter-pixfmts-transpose | 2 +- tests/ref/fate/filter-pixfmts-vflip | 2 +- 14 files changed, 14 insertions(+), 12 deletions(-) diff --git a/libavcodec/raw.c b/libavcodec/raw.c index 4b77be4157..086823c06e 100644 --- a/libavcodec/raw.c +++ b/libavcodec/raw.c @@ -237,6 +237,7 @@ static const PixelFormatTag raw_pix_fmt_tags[] = { { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', '2') }, { AV_PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', 's') }, { AV_PIX_FMT_YUYV422, MKTAG('D', 'V', 'O', 'O') }, /* Digital Voodoo SD 8 Bit */ + { AV_PIX_FMT_VYU444, MKTAG('v', '3', '0', '8') }, { AV_PIX_FMT_UYVA, MKTAG('v', '4', '0', '8') }, { AV_PIX_FMT_AYUV, MKTAG('y', '4', '0', '8') }, { AV_PIX_FMT_RGB555LE,MKTAG('L', '5', '5', '5') }, diff --git a/libavformat/riff.c b/libavformat/riff.c index 02f6b5ebc6..7ee04c70f4 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -296,6 +296,7 @@ const AVCodecTag ff_codec_bmp_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '4', 'C', 'B') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '0', 'F', 'L') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '0', 'F', 'B') }, + { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '3', '0', '8') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '0', '8') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('y', '4', '0', '8') }, { AV_CODEC_ID_FRWU, MKTAG('F', 'R', 'W', 'U') }, diff --git a/tests/ref/fate/filter-pixdesc-vyu444 b/tests/ref/fate/filter-pixdesc-vyu444 index 7572621e76..a08abee73d 100644 --- a/tests/ref/fate/filter-pixdesc-vyu444 +++ b/tests/ref/fate/filter-pixdesc-vyu444 @@ -1 +1 @@ -pixdesc-vyu444 ae888f94235dd6d122c4fa3aa40f11d0 +pixdesc-vyu444 be62739ab38a49b86c0ed51f21de29e4 diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index 419d0e9bd9..d92246b066 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -102,7 +102,7 @@ uyvy422 3bcf3c80047592f2211fae3260b1b65d v30xle b5ec677137b6f1d9f14a2386a1a7a526 vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee -vyu444 2b2e6df31f5895340f25d6f67572b113 +vyu444 93912234400a4373b1a6b5c4e4b1a4ef x2bgr10le 550c0d190cf695afa4eaacb644db6b75 x2rgb10le c1e3ac21be04a16bb157b22784524520 xv30le c14b5a953bf3be56346f66ca174a5b1b diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index 0ee93f570a..fd7075bc84 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -99,7 +99,7 @@ uyva 03f362ac6a39f25286bc6616111b0752 v30xle f92c959d672e17a3a27351e671757212 vuya 76578a705ff3a37559653c1289bd03dd vuyx 615241c5406eb556fca0ad8606c23a02 -vyu444 a6067a24e63385242948dbc4c5a4ab5d +vyu444 5d976b25782ff69e4b3b18453fa1447b x2bgr10le 84de725b85662c362862820dc4a309aa x2rgb10le f4265aca7a67dbfa9354370098ca6f33 xv30le a9edb820819b900a4a897fee4562a4fb diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index 364fae0882..7a24cbc8f5 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -102,7 +102,7 @@ uyvy422 1c49e44ab3f060e85fc4a3a9464f045e v30xle 265a463ad722cfaede2fa6cb5e9bf34e vuya f72bcf29d75cd143d0c565f7cc49119a vuyx 3d02eeab336d0a8106f6fdd91be61073 -vyu444 09fcf24f46ed72d51983d87ad3bed864 +vyu444 b139fb4ddaef12a7542a68277211efa7 x2bgr10le dbe21538d7cb1744914f6bd46ec09b55 x2rgb10le a18bc4ae5274e0a8cca9137ecd50c677 xv30le e940366c78efc9e292e9de28cf04dba9 diff --git a/tests/ref/fate/filter-pixfmts-fieldorder b/tests/ref/fate/filter-pixfmts-fieldorder index aa9bea3d52..9030873369 100644 --- a/tests/ref/fate/filter-pixfmts-fieldorder +++ b/tests/ref/fate/filter-pixfmts-fieldorder @@ -91,7 +91,7 @@ uyvy422 75de70e31c435dde878002d3f22b238a v30xle 1f04ac91824200d94d7841736c41f728 vuya a3891d4168ff208948fd0b3ba0910495 vuyx 9e4480c5fcb7c091ec3e517420764ef3 -vyu444 e2e54e73f81389559a972f4049ab8606 +vyu444 3ddab207d561a3ee5efae09e504207f2 x2bgr10le 86474d84f26c5c51d6f75bf7e1de8da8 x2rgb10le cdf6a9e8a8d081aa768c6ae2e6221676 xv30le 25aac48128d94010a3660839500caee5 diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index 7d17f057d1..a4129859e0 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -99,7 +99,7 @@ uyva a8391c24037e2a670196b47bf6a2ca57 v30xle 1c62803a7a7c0c89e5fda3d41cc0a376 vuya 7e530261e7ac4eae4fd616fd7572d0b8 vuyx f1d087284fb1556d76e6def5f94bf273 -vyu444 a9377d852b8263e50987593be7b03c7a +vyu444 7b72337f92a7223fd115265e2f769276 x2bgr10le 827cc659f29378e00c5a7d2c0ada8f9a x2rgb10le d4a8189b65395a88d0a38a7053f3359f xv30le 072aa2b61ce1e764f9d1957e8abee9a9 diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il index 6e5f11ca46..9b61859354 100644 --- a/tests/ref/fate/filter-pixfmts-il +++ b/tests/ref/fate/filter-pixfmts-il @@ -101,7 +101,7 @@ uyvy422 d6ee3ca43356d08c392382b24b22cda5 v30xle 267a4c668b14157d35399302bb978ac1 vuya b9deab5ba249dd608b709c09255a4932 vuyx 4251d94ee49e6a3cc1c10c09cd331308 -vyu444 cd6598487e9f9e2c7165b656c486eade +vyu444 50e9e24a38afc81541a536d06aab5ebe x2bgr10le 135acaff8318cf9861bb0f7849a9e5e9 x2rgb10le 517fb186f523dc7cdc5c5c6967cfbe94 xv30le 7f6414a3fc700380025c29812e8376a9 diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index 419d0e9bd9..d92246b066 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -102,7 +102,7 @@ uyvy422 3bcf3c80047592f2211fae3260b1b65d v30xle b5ec677137b6f1d9f14a2386a1a7a526 vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee -vyu444 2b2e6df31f5895340f25d6f67572b113 +vyu444 93912234400a4373b1a6b5c4e4b1a4ef x2bgr10le 550c0d190cf695afa4eaacb644db6b75 x2rgb10le c1e3ac21be04a16bb157b22784524520 xv30le c14b5a953bf3be56346f66ca174a5b1b diff --git a/tests/ref/fate/filter-pixfmts-pad b/tests/ref/fate/filter-pixfmts-pad index 3ed65ebced..72571e94ab 100644 --- a/tests/ref/fate/filter-pixfmts-pad +++ b/tests/ref/fate/filter-pixfmts-pad @@ -45,7 +45,7 @@ rgba b157c90191463d34fb3ce77b36c96386 uyva 06271af718417c21d5bc6a992b04c32a vuya 44368c0a758ee68e24ce976e3b1b8535 vuyx ff637b205b78ee581e393124d0f44f5d -vyu444 88fde4581eb7369d7ff28bb27268b169 +vyu444 cf5d49d5c870f9e724fca104f847bfa1 ya16le dfc900a8130a7c5e64201557cbaef50a ya8 5d25e9a7975805d3f0dac516a6132b6e yuv410p cb871dcc1e84a7ef1d21f9237b88cf6e diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale index 57c530b487..84730ab3cb 100644 --- a/tests/ref/fate/filter-pixfmts-scale +++ b/tests/ref/fate/filter-pixfmts-scale @@ -102,7 +102,7 @@ uyvy422 aeb4ba4f9f003ae21f6d18089198244f v30xle 42be9fac7725274bf54012b073ee0e91 vuya ffa817e283bf6a0b6fba21b07523ccaa vuyx a6ff68f46c6b4b7595ec91b2a497df8e -vyu444 0e5edaa26029501f05c0693321d60ded +vyu444 d663334119da56e36aca1e8e4eb29a39 x2bgr10le d57b9a99033cc7b65ddd111578f2d385 x2rgb10le d56bdb23fa6a8e12a0b4394987f89935 xv30le afe68d8a47e8460e0164970b1da0c5be diff --git a/tests/ref/fate/filter-pixfmts-transpose b/tests/ref/fate/filter-pixfmts-transpose index 5902d90910..a7a1918819 100644 --- a/tests/ref/fate/filter-pixfmts-transpose +++ b/tests/ref/fate/filter-pixfmts-transpose @@ -91,7 +91,7 @@ uyva cb773ee5a9f8964b9c826d55f9f425a3 v30xle 8a31095e6eb8e85ab6f030773fa20d03 vuya 9ece18a345beb17cd19e09e443eca4bf vuyx 46b5b821d7ee6ddedb3ddafd1e5b007c -vyu444 508978bb072eba1bc4636a4abd68dbe2 +vyu444 e70a294738165223928fddc9970b8381 x2bgr10le 4aa774b6d8f6d446a64f1f288e5c97eb x2rgb10le 09cb1d98fe17ad8a6d9d3bec97ddc845 xv30le b1ac5a12f46d32c70acb63f89838ab76 diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip index 73d9d3297e..c7b1015fbb 100644 --- a/tests/ref/fate/filter-pixfmts-vflip +++ b/tests/ref/fate/filter-pixfmts-vflip @@ -102,7 +102,7 @@ uyvy422 3a237e8376264e0cfa78f8a3fdadec8a v30xle 1b2e25e974fdcd53b396b577725d33cb vuya fb849f76e56181e005c31fce75d7038c vuyx ed7de87da324b39090a8961dfd56ca5a -vyu444 5a98e2118b75a3804bb80003cf6fa731 +vyu444 815de7c57dc8afafb3de908a4a280582 x2bgr10le 795b66a5fc83cd2cf300aae51c230f80 x2rgb10le 262c502230cf3724f8e2cf4737f18a42 xv30le 7e29ee107a1fabf3c7251f337d4b9fe5 From patchwork Tue Oct 8 22:50:18 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52145 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp605349vql; Tue, 8 Oct 2024 16:46:08 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVOw/YCduEN6AGUZBNOgzGOkWg+81PBvvxRSycjOFFNnO5kaY1eW2GDtBRBD7KgKAK3SxF3A1N3Z6XUh704Ry6w@gmail.com X-Google-Smtp-Source: AGHT+IF82bDQnw6FGg3MNlyzqgYIO31ir5kDzcwr1sOQfO5443vw6ZPxz62ZU1MAPFtP1k607ftK X-Received: by 2002:a05:6512:2251:b0:539:8ee8:749e with SMTP id 2adb3069b0e04-539bdac054bmr1458130e87.3.1728431167767; Tue, 08 Oct 2024 16:46:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728431167; cv=none; d=google.com; s=arc-20240605; b=V28SejhoVAsmUZAeiU8iESFwgFwcD8gWisNbEfQCzNx2WdgW7Gm7K6l5keT+u0oMzn FoDztw4/aW4JWCU/navhmFLk7fIUVmsLG7O6lbT4Pr9LLr0J2FuwnCEpwCuoMe0dnW5W S27YNWAfU59Etq8g0mn42iEEAdhnJxyfHai9W1az1Dsd+OF/49u4vQtjx192QJ3DRwqK eS1YUWEt9SM0fcSI9HIN7XGaa5uWChjiyP1uS/gT9443jQGqY3wPmnAjynAlmDK2yNMR h9BAl3NsSNXep4KeETNat8HB6xAX+0d2JaNBK6en97SWzBySHZdGp+GR27M8UfdCjCEe GdCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=g9czA3kwnZBmADYPeIoY6rVIG5Q38aDQ2LIaFG0ApS4=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=clm3RFFh3virigCAGtbMvMW/UjFW3cgOli1619oEUrEaKKzKULzrSXEvbEZouyI3e9 E0hil3VghFzl1gvNcy0i66f7G2wYqNR6Okd63yPiPvbxu+UgciV79hSK20cs29IGWFWU eM7Fc9a358G5I5K8lL3Tvo94ySi8aB/6gH4V+KxO9SdLyvGZh2eIDFQis4+IaTvJIl0n 6kI+212jv7XidYp2mlkZYqNd+eDhQWlVthWhAJhD4/7PB8VKcBslmcUqOzpwxcqNVoYE oBAMGVpVxf7wUN+4cmPAlD+WuukI6UrMr8kTrSb1H57qbhaVWbbpRmpa86hUdMknLnDE W6mg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=MG8ETc05; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 2adb3069b0e04-539aff1f5d7si2991816e87.276.2024.10.08.16.46.07; Tue, 08 Oct 2024 16:46:07 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=MG8ETc05; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 21ED268DDF3; Wed, 9 Oct 2024 01:51:02 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8B1DE68DDBD for ; Wed, 9 Oct 2024 01:50:56 +0300 (EEST) Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-20b5fb2e89dso49211085ad.1 for ; Tue, 08 Oct 2024 15:50:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427854; x=1729032654; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=01cL9/llsCpeRFrbx7e3E1sb0EJR+HvpMPXIlf/u884=; b=MG8ETc05EyCUDvQ0q+psesoVH5MZiMck4qZSoOs3nNs3SNK4Uxg3vfVs59k9BWqqo7 ELJxkAmLjVafVlJ0Tll2vlhhppQKUx8tZsjrK2mKzB6dNp1868PF2mF6MUxNCZkSz43P d1xgYbDnXIfaHlo21yJ0VLlaL054XlR1JtPkIgk1UnCcT+4kcg1v9jUsc/PFp/AydFRt CKY6gwDQIQxLlFQ6aJMU8RhVpX9/XCxVHOSVScEqkVOmVynFYMXixsyDbiy0m+w+K+Qd jMbzdg+lL/z+0dmcgTFPUu14UOjJ8QMeNu3riU1JnW+IxP9ynfHPujhm+8l0DVyU7Emn 45mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427854; x=1729032654; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=01cL9/llsCpeRFrbx7e3E1sb0EJR+HvpMPXIlf/u884=; b=Lp8KlW8G60hAHd1PPyE2eEj7NR3yF44tSMvQq0tO0PFLiSRtX/jW4P4yFsxmm+6Mnw z7a3h8ocoyrXPtswa7z8kT/DrxmSBrRZcFExmzJe8nYtiZ3v4e+jJX5IttGSVIPfjgal uQzNxd1O4VdCPdSh1UvrbfzXl7F9PeIqirxdR+piJOoYycx2+5f/+WEbah2wiTwXbqAS Fh8RZ2ve37+hFT9W0f3c/nx0wuY9CjEnvhqecEXGIOKnKbu1P0ftjaUIbHXyMPpee4S3 m/3bAup3p9mjjK6qZRneFe0G9O86opdQLqBVTJswtk0C+xn1N4LtepzBFDe/QCoO28Qm O+AQ== X-Gm-Message-State: AOJu0Yzt7DjzMER4KS3ZU/fG560qy0gdsKF6ExglI/0TT62RyxTtcPI5 QXWECUU2VvLftEMibAIZYDc6mxHEbW48bzVyqr8nmQR1W1lvW+Cj433X8A== X-Received: by 2002:a17:902:d508:b0:20b:983c:f0a0 with SMTP id d9443c01a7336-20c6374311dmr8865455ad.31.1728427853686; Tue, 08 Oct 2024 15:50:53 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.52 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:52 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:18 -0300 Message-ID: <20241008225027.12209-13-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 13/21] avformat/riff: map v410 fourcc to RAWVIDEO decoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: Aal0VwNGn4Bq There's no need to keep using a custom decoder for this pixel format. Signed-off-by: James Almer --- libavcodec/raw.c | 1 + libavformat/riff.c | 1 + tests/ref/fate/filter-pixdesc-v30xle | 2 +- tests/ref/fate/filter-pixfmts-copy | 2 +- tests/ref/fate/filter-pixfmts-crop | 2 +- tests/ref/fate/filter-pixfmts-field | 2 +- tests/ref/fate/filter-pixfmts-fieldorder | 2 +- tests/ref/fate/filter-pixfmts-hflip | 2 +- tests/ref/fate/filter-pixfmts-il | 2 +- tests/ref/fate/filter-pixfmts-null | 2 +- tests/ref/fate/filter-pixfmts-scale | 2 +- tests/ref/fate/filter-pixfmts-transpose | 2 +- tests/ref/fate/filter-pixfmts-vflip | 2 +- 13 files changed, 13 insertions(+), 11 deletions(-) diff --git a/libavcodec/raw.c b/libavcodec/raw.c index 086823c06e..adc189b26a 100644 --- a/libavcodec/raw.c +++ b/libavcodec/raw.c @@ -239,6 +239,7 @@ static const PixelFormatTag raw_pix_fmt_tags[] = { { AV_PIX_FMT_YUYV422, MKTAG('D', 'V', 'O', 'O') }, /* Digital Voodoo SD 8 Bit */ { AV_PIX_FMT_VYU444, MKTAG('v', '3', '0', '8') }, { AV_PIX_FMT_UYVA, MKTAG('v', '4', '0', '8') }, + { AV_PIX_FMT_V30XLE, MKTAG('v', '4', '1', '0') }, { AV_PIX_FMT_AYUV, MKTAG('y', '4', '0', '8') }, { AV_PIX_FMT_RGB555LE,MKTAG('L', '5', '5', '5') }, { AV_PIX_FMT_RGB565LE,MKTAG('L', '5', '6', '5') }, diff --git a/libavformat/riff.c b/libavformat/riff.c index 7ee04c70f4..7f3291a392 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -298,6 +298,7 @@ const AVCodecTag ff_codec_bmp_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('I', '0', 'F', 'B') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '3', '0', '8') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '0', '8') }, + { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '1', '0') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('y', '4', '0', '8') }, { AV_CODEC_ID_FRWU, MKTAG('F', 'R', 'W', 'U') }, { AV_CODEC_ID_R10K, MKTAG('R', '1', '0', 'k') }, diff --git a/tests/ref/fate/filter-pixdesc-v30xle b/tests/ref/fate/filter-pixdesc-v30xle index b13f30d6b7..c9cfeb0888 100644 --- a/tests/ref/fate/filter-pixdesc-v30xle +++ b/tests/ref/fate/filter-pixdesc-v30xle @@ -1 +1 @@ -pixdesc-v30xle 39705ee98e5f00ab0e388e25d7ce7419 +pixdesc-v30xle 96e7b6248f347559d40a5154d36083e0 diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy index d92246b066..51bc3d8a83 100644 --- a/tests/ref/fate/filter-pixfmts-copy +++ b/tests/ref/fate/filter-pixfmts-copy @@ -99,7 +99,7 @@ rgba64be ae2ae04b5efedca3505f47c4dd6ea6ea rgba64le b91e1d77f799eb92241a2d2d28437b15 uyva 8896d7525f12de08818a01a5d5cf84f1 uyvy422 3bcf3c80047592f2211fae3260b1b65d -v30xle b5ec677137b6f1d9f14a2386a1a7a526 +v30xle 1b74b2ae9d93674380964a2ddcdc803e vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee vyu444 93912234400a4373b1a6b5c4e4b1a4ef diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop index fd7075bc84..8423d3ed92 100644 --- a/tests/ref/fate/filter-pixfmts-crop +++ b/tests/ref/fate/filter-pixfmts-crop @@ -96,7 +96,7 @@ rgba 9488ac85abceaf99a9309eac5a87697e rgba64be 89910046972ab3c68e2a348302cc8ca9 rgba64le fea8ebfc869b52adf353778f29eac7a7 uyva 03f362ac6a39f25286bc6616111b0752 -v30xle f92c959d672e17a3a27351e671757212 +v30xle 4cd15e59ac7a3cc116e8b09edf90af20 vuya 76578a705ff3a37559653c1289bd03dd vuyx 615241c5406eb556fca0ad8606c23a02 vyu444 5d976b25782ff69e4b3b18453fa1447b diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field index 7a24cbc8f5..8037e3206c 100644 --- a/tests/ref/fate/filter-pixfmts-field +++ b/tests/ref/fate/filter-pixfmts-field @@ -99,7 +99,7 @@ rgba64be 23c8c0edaabe3eaec89ce69633fb0048 rgba64le dfdba4de4a7cac9abf08852666c341d3 uyva 147398d2e8d310f915c95863ad192c5e uyvy422 1c49e44ab3f060e85fc4a3a9464f045e -v30xle 265a463ad722cfaede2fa6cb5e9bf34e +v30xle 337aab325e9bd1247560b22dae767c29 vuya f72bcf29d75cd143d0c565f7cc49119a vuyx 3d02eeab336d0a8106f6fdd91be61073 vyu444 b139fb4ddaef12a7542a68277211efa7 diff --git a/tests/ref/fate/filter-pixfmts-fieldorder b/tests/ref/fate/filter-pixfmts-fieldorder index 9030873369..948001feff 100644 --- a/tests/ref/fate/filter-pixfmts-fieldorder +++ b/tests/ref/fate/filter-pixfmts-fieldorder @@ -88,7 +88,7 @@ rgba64be 5598f44514d122b9a57c5c92c20bbc61 rgba64le b34e6e30621ae579519a2d91a96a0acf uyva ccf5dfd33765dda88c4b4afa2ea31305 uyvy422 75de70e31c435dde878002d3f22b238a -v30xle 1f04ac91824200d94d7841736c41f728 +v30xle 53fc11848a0a1433761deb62deee087a vuya a3891d4168ff208948fd0b3ba0910495 vuyx 9e4480c5fcb7c091ec3e517420764ef3 vyu444 3ddab207d561a3ee5efae09e504207f2 diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip index a4129859e0..04daa8ddd3 100644 --- a/tests/ref/fate/filter-pixfmts-hflip +++ b/tests/ref/fate/filter-pixfmts-hflip @@ -96,7 +96,7 @@ rgba 51961c723ea6707e0a410cd3f21f15d3 rgba64be c910444019f4cfbf4d995227af55da8d rgba64le 0c810d8b3a6bca10321788e1cb145340 uyva a8391c24037e2a670196b47bf6a2ca57 -v30xle 1c62803a7a7c0c89e5fda3d41cc0a376 +v30xle a367069a1da9da215cfca28e4e4e207d vuya 7e530261e7ac4eae4fd616fd7572d0b8 vuyx f1d087284fb1556d76e6def5f94bf273 vyu444 7b72337f92a7223fd115265e2f769276 diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il index 9b61859354..c5374d5112 100644 --- a/tests/ref/fate/filter-pixfmts-il +++ b/tests/ref/fate/filter-pixfmts-il @@ -98,7 +98,7 @@ rgba64be db70d33aa6c06f3e0a1c77bd11284261 rgba64le a8a2daae04374a27219bc1c890204007 uyva d2655e1a1c56bcb48f7c7a6a6270dd93 uyvy422 d6ee3ca43356d08c392382b24b22cda5 -v30xle 267a4c668b14157d35399302bb978ac1 +v30xle a1a9719011f9e20a25b10f4702b10d0e vuya b9deab5ba249dd608b709c09255a4932 vuyx 4251d94ee49e6a3cc1c10c09cd331308 vyu444 50e9e24a38afc81541a536d06aab5ebe diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null index d92246b066..51bc3d8a83 100644 --- a/tests/ref/fate/filter-pixfmts-null +++ b/tests/ref/fate/filter-pixfmts-null @@ -99,7 +99,7 @@ rgba64be ae2ae04b5efedca3505f47c4dd6ea6ea rgba64le b91e1d77f799eb92241a2d2d28437b15 uyva 8896d7525f12de08818a01a5d5cf84f1 uyvy422 3bcf3c80047592f2211fae3260b1b65d -v30xle b5ec677137b6f1d9f14a2386a1a7a526 +v30xle 1b74b2ae9d93674380964a2ddcdc803e vuya 3d5e934651cae1ce334001cb1829ad22 vuyx 0af13a42f9d0932c5a9bb6a8a5d1c5ee vyu444 93912234400a4373b1a6b5c4e4b1a4ef diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale index 84730ab3cb..7b2ef3ac29 100644 --- a/tests/ref/fate/filter-pixfmts-scale +++ b/tests/ref/fate/filter-pixfmts-scale @@ -99,7 +99,7 @@ rgba64be ee73e57923af984b31cc7795d13929da rgba64le 783d2779adfafe3548bdb671ec0de69e uyva 2358038be6dac002a6c736e798a3d91c uyvy422 aeb4ba4f9f003ae21f6d18089198244f -v30xle 42be9fac7725274bf54012b073ee0e91 +v30xle eb50190ed5800f979c091a6e39275cbe vuya ffa817e283bf6a0b6fba21b07523ccaa vuyx a6ff68f46c6b4b7595ec91b2a497df8e vyu444 d663334119da56e36aca1e8e4eb29a39 diff --git a/tests/ref/fate/filter-pixfmts-transpose b/tests/ref/fate/filter-pixfmts-transpose index a7a1918819..b56392d167 100644 --- a/tests/ref/fate/filter-pixfmts-transpose +++ b/tests/ref/fate/filter-pixfmts-transpose @@ -88,7 +88,7 @@ rgba 4d76a9542143752a4ac30f82f88f68f1 rgba64be a60041217f4c0cd796d19d3940a12a41 rgba64le ad47197774858858ae7b0c177dffa459 uyva cb773ee5a9f8964b9c826d55f9f425a3 -v30xle 8a31095e6eb8e85ab6f030773fa20d03 +v30xle 84548ae5825baa041a96db6bb9c362b0 vuya 9ece18a345beb17cd19e09e443eca4bf vuyx 46b5b821d7ee6ddedb3ddafd1e5b007c vyu444 e70a294738165223928fddc9970b8381 diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip index c7b1015fbb..30e8ef7fc5 100644 --- a/tests/ref/fate/filter-pixfmts-vflip +++ b/tests/ref/fate/filter-pixfmts-vflip @@ -99,7 +99,7 @@ rgba64be 17e6273323b5779b5f3f775f150c1011 rgba64le 48f45b10503b7dd140329c3dd0d54c98 uyva d43e89ba3d5c9274e1948eac8630fcc6 uyvy422 3a237e8376264e0cfa78f8a3fdadec8a -v30xle 1b2e25e974fdcd53b396b577725d33cb +v30xle 34771be4875c31f8ffbc06c77fd1a49e vuya fb849f76e56181e005c31fce75d7038c vuyx ed7de87da324b39090a8961dfd56ca5a vyu444 815de7c57dc8afafb3de908a4a280582 From patchwork Tue Oct 8 22:50:19 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52155 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp672387vql; Tue, 8 Oct 2024 20:06:12 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUQx4dzzTB2FbT/bKswAZW4tC+FPtB1LtmnK2U2HhModt7n1x1qpQNe7Bp+TAtA9tW0CY0WRm0b5LmMvpA/LGoZ@gmail.com X-Google-Smtp-Source: AGHT+IGTwEK9Ah7iXMBLe8DVub8z8KNf9Zuq8K/40C1soy8afBKpU5pNzzY+1V+/Z9FqHkjDhF4O X-Received: by 2002:a05:6402:3493:b0:5c8:b923:58b0 with SMTP id 4fb4d7f45d1cf-5c91d3011ecmr828796a12.0.1728443171808; Tue, 08 Oct 2024 20:06:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728443171; cv=none; d=google.com; s=arc-20240605; b=E3mU8yFRqK4ad+nEzQXfoHEWYZnSTvkxfMnTV4KJ0lvZnaZV7XQh4b+7mrpL3BJ9Pv 5BIh9jywti6oNFcnpUDfnyI/M7DPw+b2W1RHUG4GK+ADpYw1IYLbmZyvWSS3cc0Sq7DW LrTTqcKF6cTnSS7CaSSbeQghw7x+RJ+8Q6NQt/oqKcVjflqDtavangYlQCmMwghVQyzf nZhtHh38Auimr+BGZ/IYw+oc1crXUaeaPRI3r9WVEQN6lolKX/fC01WoyV6EQqy63cK5 3NBryAVtdDMEN3G1sUtROkQGBC7SViciwmbhEuDM5+s9OuETAXKLLdTqxqosfjEvuf16 vXvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=8AEayRsixfcQqVSRQU2fmnVOm8eAMC8MlK7JhJ+bO+w=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=kyZ3Bzk0YsqfudbVlTTxsL1crNDsFGJ7QQ2PimEFUuIi4NKMJ5UoTYYh8cqvFiIZ95 ABXhbAyGcD56m5lNu7H6wi/aegFrhvsYJWV46k1hv23qxHzYScJbTULnhjuf4u8VD8cJ 5U7OZYaz4LQEA3hc1dz6Ofu4K7Niw0XI2jclLC2F/dDe53xmrKuc/morUFABTUQ7bsg2 gj1U94k+Iaiiz6goG3apvxAvBRGMhTSTl7NpxJCsQNCYg/QYLLSpC9F82OH+R/4jjAP5 GnGy34hbMM9B58c0S9hyJ4tpL3u6OiaY6Zqs6WrpkqanlkfW4c1qPzUG9jmBtuNZ23YD Bnyg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b="Upa6uuE/"; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c8e05a2a2fsi6820696a12.167.2024.10.08.20.06.11; Tue, 08 Oct 2024 20:06:11 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b="Upa6uuE/"; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 8605768DE0B; Wed, 9 Oct 2024 01:51:03 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EA98168DDE4 for ; Wed, 9 Oct 2024 01:50:57 +0300 (EEST) Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-20b7eb9e81eso73504685ad.2 for ; Tue, 08 Oct 2024 15:50:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427855; x=1729032655; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=lgsYjjG8pv49XRGD29QmMYnNugWzZU1Sywa5rS3rW7E=; b=Upa6uuE/Cr2bNLr6D+9uoRs4REuLWNF3jHbPYE/7nWmmlL3aGO7DtCGVRv0m4UUtcW 4zaEBYlTmXw/7c9Ae8rLjE3Ad9HJ0l6jVmqc0Ip42FMATyWjBFx1EKu3IpTPo8d0h56C vmEAnmadI589Q4rViVUUjV6P3pXaWdcFdPZ9NXlEKX4U0jP5Qbe0gtUjTUWu9ml+vtyb 3dyhWPLlPuxr//7sYmqMGZrKC93anB91L4KpggV3aK4iX/xpUaimpOOwzCqEF8zK9q0u nVzDy/Rgs7Rnj5N6tY4cIfRAQDxyFc3gF191jN6YU3b6nRc2fNci3u3wdT2m0idmSkCm QBlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427855; x=1729032655; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lgsYjjG8pv49XRGD29QmMYnNugWzZU1Sywa5rS3rW7E=; b=E40GsQJ8egG3YlbggStyYM9B4zyMQFvLQLkgy6Dn+ndcRfczQMZYLNhx0SlmseRce8 LOLkIW3Hxa6n6LLUQWgHvetwUzxkxCGyieX0XRWpgrsqFXXvTe6ZwcQ52CHh4Ev3mUcd aCZTNdXQ+nFsO2fHqPECzF3utCL2ALsOr/jeCjiqj9SjwTB+WyWlHQcnNPl6zOCBHhDD SQ2bJ53oSQhcyoXiyZ9JTL+BZtlCnhQWKe0q+m6JSJmZviyb7v8w76+bPeF74J3DaZ5l 1RIpDaV7U6aPvpCIRLt08c0ENI1sj68OW5PCPNA8LTSEa3vvRAjLQ7l8gLrdfMJMIqkd V1Zw== X-Gm-Message-State: AOJu0Yx55qzLsLhX0pTwthjrnHgJb4MkQlG/C5yha/qFMdiMCLv1O7tm x1kzciy383I1MJxvCddvU20B6Seh/GQQ8yUJW7lopScs2MHmBUufLbXjEQ== X-Received: by 2002:a17:902:cf01:b0:20b:7e0d:9b with SMTP id d9443c01a7336-20c6370ba0bmr7394885ad.18.1728427855399; Tue, 08 Oct 2024 15:50:55 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.53 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:54 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:19 -0300 Message-ID: <20241008225027.12209-14-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 14/21] avutil/hwcontext_videotoolbox: add support for AYUV pixel format 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: PWrSmUeXjnIc Signed-off-by: James Almer --- libavutil/hwcontext_videotoolbox.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavutil/hwcontext_videotoolbox.c b/libavutil/hwcontext_videotoolbox.c index 122a61d5e7..1d7dff4a7d 100644 --- a/libavutil/hwcontext_videotoolbox.c +++ b/libavutil/hwcontext_videotoolbox.c @@ -53,6 +53,7 @@ static const struct { #ifdef kCFCoreFoundationVersionNumber10_7 { kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange, false, AV_PIX_FMT_NV12 }, { kCVPixelFormatType_420YpCbCr8BiPlanarFullRange, true, AV_PIX_FMT_NV12 }, + { kCVPixelFormatType_4444AYpCbCr8, false, AV_PIX_FMT_AYUV }, { kCVPixelFormatType_4444AYpCbCr16, false, AV_PIX_FMT_AYUV64 }, #endif #if HAVE_KCVPIXELFORMATTYPE_420YPCBCR10BIPLANARVIDEORANGE @@ -86,6 +87,7 @@ static const struct { static const enum AVPixelFormat supported_formats[] = { #ifdef kCFCoreFoundationVersionNumber10_7 AV_PIX_FMT_NV12, + AV_PIX_FMT_AYUV, AV_PIX_FMT_AYUV64, #endif AV_PIX_FMT_YUV420P, From patchwork Tue Oct 8 22:50:20 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52151 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp652328vql; Tue, 8 Oct 2024 18:56:13 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCV/Er4KpPMjV26Q0zpyT0DQW7YD6UrLn8nEsVAmD9nEUdWfQY96X45mWGtg7vBN5i45fTnbiPdEAEe5MHgKKUeR@gmail.com X-Google-Smtp-Source: AGHT+IG08d6nXCQbRk5nd7QL4ir41cNtsnXXh023EuR0o8eE9A4ZjOjXZeYANhYtMko3x6gcnQpZ X-Received: by 2002:a05:6402:548c:b0:5c4:a62:e1f1 with SMTP id 4fb4d7f45d1cf-5c91d697460mr536804a12.29.1728438973187; Tue, 08 Oct 2024 18:56:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728438973; cv=none; d=google.com; s=arc-20240605; b=VRF7ZTzShqPsjjpKW27EQPGwuMWyZWkgbOH5OOwwgAFtzNZ+ivUwzYh8KZgNOMODcm 4TJ/N6tSj40Op11FnL26egpsFYyTCW2srYdz3YiUZ9kvqXq6/jDwTL5C5g/J3HviiQ/X mNUy2YC5KcAfz9loxiCB+WfdpOXKmcFKJypMWhZgZjvpBZOS7m4R0m8q4a7MmaY6sClY lI61EWXi+rRwfbh71SQ4y4WKH25f44KIDOdDnoXBL24hW8pbOGetGR4vteV1uVoAWiMH iVYNOrkKYbOdNk3hxIJds8nUuGUmcnjZGst7ZohMmifiuSRe2FypSnex5eKZfvDFKhuw BAIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=aLV3v5pnxuqIEs1qdbF0MRdCRpA7gYqGX3gg+K1+izw=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=Gd0VmMpPlMoI+l9fEGqSFubhpycp+zz3/McD52+YypzafTYOVQK5U+nW9P78lU3ylk 7wsGKUHbGMvlkvlY6IYruaReoa1ph3mVrjmGtiSqDDMw/CSGiBkkPiXrTsY+sd+1Lba8 THHB497ZhDAgAcJ75Fe/2f77+ctbWIUr+jesdQ4BHOtV65mPIUcDlySOJbw1di9D7wXN UqoRFs8RDvI94qGPwjdzL5Brp0LKrNABvhuX2vhlkeSgl3+ztjM0SuXwdwXcrx7Y+B32 jEEFGTcWhVDtAPTpLAgnyfggBYEFtwr9uleN7sxXKQsKV3EYOoErSplw/tLsn9cld80/ oU1w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=lkzxmVJ2; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c9163f49e8si1104251a12.418.2024.10.08.18.56.12; Tue, 08 Oct 2024 18:56:13 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=lkzxmVJ2; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D190968DE14; Wed, 9 Oct 2024 01:51:04 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 69B9968DDEC for ; Wed, 9 Oct 2024 01:50:59 +0300 (EEST) Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-20bb610be6aso68087985ad.1 for ; Tue, 08 Oct 2024 15:50:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427857; x=1729032657; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=kmxyJvO354q7BSu6yVGl75OVEh1HLaTP8q1ddPHltNw=; b=lkzxmVJ2Or0PHiavrOg2XgXhr/TlT9PLdxewFl+zkrGMkn8wS0JrALaXFIA9LwTlKu YNWJXxXNlJMrIO0xKVQ6pDzMuyVKgmP1qPdCojSe9m/ZJ181R2gcmBZ8Surnk5/LCj9u H62pwi/jV22kCcxopLQHzB+dSbn+8hCYmYNS7CB/C2am0fifEwvkiThzoOIFBGjMW0Un omJCVsqryhcvSi6YIGOTsUddscwNW3ijguvVcUAQ2j8hmcYDroSP8UZquCobio5yF8H0 Xe6frouNyyCNSK/Voj/osEl3nrku6oWa/ACjQF5KmV/OoudXi+i4AGugqlyX7kFpMpTE yq6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427857; x=1729032657; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=kmxyJvO354q7BSu6yVGl75OVEh1HLaTP8q1ddPHltNw=; b=cqATAr9LJENbz13/jdMJaxuuDXHtWCtKORGXZPh13OBOdGlZqme+ssPRLo4mKkpQEW 301A9v26d8tHBuwb+mqcpBYV9uEhkHEARo7+4uVkCqMdPL8hp0LnaMpUj+2KhPJviRTz 1LW9SFYUD5t+bF0+3TVGzELcyIEkqgzf5dY1jmvshoNHOd/SxSIcf2Q44iFMINA87AHU nIio7r73DCdJBHOBQqMuC64F40r09AANCqtNe1SNcZu/Yy/ElRIl7kajbBZwPNLnQnri AXhXa9PDJ/3DIQN/sKMQBe8IY8EP5G+RwteuV/GkvYJBkFld83lfZViVBprxbNL3nda+ FYGQ== X-Gm-Message-State: AOJu0YxTAjPlc9uldm+y2nZlCLG2pWOjjWcL4htSQqSoeuPi7nTHEoCG 89QOMtPMbZmOKkX7VmkuZ442/2Ipnj2HPV1gfpo8vU5GvzvIDX+oghEz0w== X-Received: by 2002:a17:902:d4d0:b0:206:adc8:2dcb with SMTP id d9443c01a7336-20c6373aa92mr7534175ad.25.1728427856859; Tue, 08 Oct 2024 15:50:56 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.55 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:56 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:20 -0300 Message-ID: <20241008225027.12209-15-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 15/21] avcodec/videotoolbox: choose AYUV pixel format when ideal 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: cL9uR4da2K3u Signed-off-by: James Almer --- libavcodec/videotoolbox.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index 90c1fbfb10..a606c29ded 100644 --- a/libavcodec/videotoolbox.c +++ b/libavcodec/videotoolbox.c @@ -1180,11 +1180,10 @@ static enum AVPixelFormat videotoolbox_best_pixel_format(AVCodecContext *avctx) if (!descriptor) return AV_PIX_FMT_NV12; // same as av_videotoolbox_alloc_context() + depth = descriptor->comp[0].depth; if (descriptor->flags & AV_PIX_FMT_FLAG_ALPHA) - return AV_PIX_FMT_AYUV64; - - depth = descriptor->comp[0].depth; + return (depth > 8) ? AV_PIX_FMT_AYUV64 : AV_PIX_FMT_AYUV; #if HAVE_KCVPIXELFORMATTYPE_444YPCBCR16BIPLANARVIDEORANGE if (depth > 10) From patchwork Tue Oct 8 22:50:21 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52149 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp652293vql; Tue, 8 Oct 2024 18:56:08 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVV5Y1ZY6TFOQD8JXg779xLntBlEtPyFP1vs7XmduaLF+qhIuqNy5O2CUuNx2ekI8tXy/seKTZk8vTJsX4uEmf2@gmail.com X-Google-Smtp-Source: AGHT+IF8+sfO/VXZoYnMjNow+gVxEmPth+47hmexrIhTqBvBhR5D0vPaOtI2LzGJq7mgFI4xWF9j X-Received: by 2002:a2e:5109:0:b0:2f7:4c9d:7a8c with SMTP id 38308e7fff4ca-2fb187ca5f7mr5410791fa.29.1728438968609; Tue, 08 Oct 2024 18:56:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728438968; cv=none; d=google.com; s=arc-20240605; b=QPUpBboHR4dNQJccCL8H8EiIq5MGhN+RCFoispGvG1iDXlp4Y72JOzsqeNml0Qr2OZ 3YzK/oSSJWeGP5KRMALOwRjPEFxp5Ze8RG7VjVg9UrFC7IK/cPNDlRGGq5UN8SH6QnvN PQ0gtw7PEvrL+eyi/7upXQdGd2G+3CyBUHTQYma33Zi8GvDVBy4cGBW1WiM+vT5vhMNQ 5ATUJK3YBZX3scn6iKT0uCiuRZonPI6fT/6HfUYyWGh77VqMVnJwW7drpdRRz2wdJZWu dH1RyRZcq7T1iAjw62sBpRgvWgBaRVLXiCBChyetgRgmKLqUpwzkgPF90hcauBz8vwun J6sA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=/vLl1Mq9KKzIjNNn18qiFt3WwZ7d5nchklzZcYvzhxU=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=X7INaozqKlWuswv+6PWzM+u5x2F8eRCH5aYBvDBXPtBAwMsYxq5EuZRezPnVw+fI5R HMLJNfy0DCPhQc3BEKqhBrD+EkdqQr+vKLqqn5MIvQGjzKMEFD5rsBnitagQRABuaY+b uI13TWRXYrmnPl04WRNKa6B4eZj8pw5JOh/+mpKDGpHHcP3YWhm1rLjd0/ksFsuSyUV/ 9OjGALiFMvmKiuyBLsOhS5Z/d8vw3zLL1hWYwNp37wEFTIo6wWhfrr13W5Jok5vHXRL8 mfk9794PAo0hr+d2tgBmJBqeVuzm7BvlP+7JLc2+xMCt7ZoD5O+/iQppxvu5VbXFrq4m /izA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=l1AeVQWF; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a640c23a62f3a-a9959fdf58esi371111766b.276.2024.10.08.18.56.08; Tue, 08 Oct 2024 18:56:08 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=l1AeVQWF; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7392C68D30B; Wed, 9 Oct 2024 01:51:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 898CE68DDEA for ; Wed, 9 Oct 2024 01:51:00 +0300 (EEST) Received: by mail-pl1-f177.google.com with SMTP id d9443c01a7336-20bb610be6aso68088065ad.1 for ; Tue, 08 Oct 2024 15:51:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427858; x=1729032658; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=TJ148TDi2mr9sJYZUookOoZraVNmTGyRXRFNih40Y/o=; b=l1AeVQWFTL/WPBC5M4HaxGi7yzw4X4tN2u+Pf1H/jwwMBwEx+jcNoo3pA7FCpzDFi5 RXh8zE4LbldAGHpbKiN+G5wFPzfRPNrgO50LuDJxUx2S+vQsyBGRP8F22qREo0B7z9hU Nwmj+Llg7Cr7gQDpvg43CZsW4N5SnclJzDCHWBuL5Fps3KdyllwcYAFja+33WnSqOXmS t+zazXlS8O89cWSYhVOLBHB1cCvv6LEVFoTb49nwzBzOrDvL5lA9lzqLy5XojfQPXJrY 6yf+xF9GzwBAcuKzfbTE/QgtKZVzaRdH7lgFCfs8Jf3GHZy0vcwuffU1Hn0Yo+xVsVhC gKZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427858; x=1729032658; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TJ148TDi2mr9sJYZUookOoZraVNmTGyRXRFNih40Y/o=; b=EHCqsZLzcC/rcEGwn7YyRb95xSkE6eeeIXEShjWZ/NG/OW18gShYdcPUyZBhO2F29O rnA9D/nh+rwVDwU7JZo3jNdVnmKyfZgJypoczxxtFlzjY5S6vJWk/r4QXynynsRDRysU fBUkQWJB8zo8Ws2FeWzW6fZ9qXE927QuUukJeRd3mB06xSzeSZCUEaViSXa+yF4B6pSv K1jxYmAX7uxEvj6FmPPeUAmuYTpqVBfy4whXJnWQyGkTKMv4nqEY5VFK5nHOtRpyoLe/ nf4slY3hIcbPK5EEN12E9SQZf+B9FNVbxbi3xKzV1Apchfoyc4IHmTgLus8oznI8kUJp k7aA== X-Gm-Message-State: AOJu0Yy9v2gNFvyRKkfNj38Mh3lB1q7kz49HhCJfiu6t1UQKOctQYG+1 FsZrYBWCWLmZ0mEX+yScjU7ja9A2rNlRJerll8E05gh+B/XXo4mFF2L3wg== X-Received: by 2002:a17:903:189:b0:20b:ba72:37c with SMTP id d9443c01a7336-20c637909e3mr9667605ad.48.1728427858325; Tue, 08 Oct 2024 15:50:58 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.57 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:57 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:21 -0300 Message-ID: <20241008225027.12209-16-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 16/21] avformat/movenc: add support for UYVA pixel format 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: NTaqMx9naju7 Signed-off-by: James Almer --- libavformat/isom_tags.c | 1 + libavformat/movenc.c | 1 + 2 files changed, 2 insertions(+) diff --git a/libavformat/isom_tags.c b/libavformat/isom_tags.c index 5dd72d570e..836bf14b80 100644 --- a/libavformat/isom_tags.c +++ b/libavformat/isom_tags.c @@ -33,6 +33,7 @@ const AVCodecTag ff_codec_movvideo_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('y', 'u', 'v', '2') }, /* uncompressed YUV422 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('2', 'v', 'u', 'y') }, /* uncompressed 8-bit 4:2:2 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('y', 'u', 'v', 's') }, /* same as 2VUY but byte-swapped */ + { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '0', '8') }, /* uncompressed 8-bit 4:4:4:4 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('L', '5', '5', '5') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('L', '5', '6', '5') }, diff --git a/libavformat/movenc.c b/libavformat/movenc.c index d20e45cf81..4d8dfe5783 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -2612,6 +2612,7 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex int uncompressed_ycbcr = ((track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_UYVY422) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_YUYV422) + || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_UYVA) || track->par->codec_id == AV_CODEC_ID_V308 || track->par->codec_id == AV_CODEC_ID_V408 || track->par->codec_id == AV_CODEC_ID_V410 From patchwork Tue Oct 8 22:50:22 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52152 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp652347vql; Tue, 8 Oct 2024 18:56:16 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVNsVogROpnFKKAHfThfrNKt1VyEB4s4MN1TLL7QYiZEb9hxlmRLysRPOkSAbs2VBXROFkSTqV+cI/mgnkmYMNQ@gmail.com X-Google-Smtp-Source: AGHT+IFWPt3uZiTdJ9wY665/WW6+GFah/bQ/FKscx0lvuBMcwF3wl0gJbVzLvu0zmjfa7TFVPzY6 X-Received: by 2002:a05:6402:42c2:b0:5c8:93fe:3f7e with SMTP id 4fb4d7f45d1cf-5c905d12b9bmr6273667a12.11.1728438976771; Tue, 08 Oct 2024 18:56:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728438976; cv=none; d=google.com; s=arc-20240605; b=G77Zk11KESUtXXa4t+rK0dTlxTtesXetO/TbYUrnB+Ie4XStEtM7WIrb9EyFweKxDv dyEMfmWG206LaYVD9ijL/23Ewv2bYaIyN3btpdhZD/QfZN909lRw6o5SQAC5TbJBXQvn feIl89uZ24ChpqxB1CZLC0qXvq+BmfswFAYV4Ewpf7k+0oJhzH75DyWuQDXFcWib+EWf dqPOdrbrLgAT4j/3VKKhpVnZ/2zDeyxunrdalJeHrCmiGNjhGIReLNx5pE8b+xxcRYaK cFjeabkdWOoFpuv7pTE767KD0Ne8yUGyy4HtNTy6Vce/R1hyoI9FK2L4jptcvLXRHrwv npKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=q+74VoUGI43t3zJqztRx1ByPjTAXRlAK/pFaWuqoeGs=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=al+7u1VYIRbf2L++5umSOEJh/BNfOht0J+R2UXW6ADlbNM6po7yuykuFnQWRX0WoDG nJa9DOxt5eNAFVCB6Ba28B1MR0GiLD7mVfKGkQbjbv7/rb0A2tPG4ibWDHaRcAr6z/F0 Bvo4mGH6deZhAS2wGSEyNKG3q7j5SgOpe8W64Nskzd76y7JQUHKDLtiHdtruC8abXXaX p4Ul5c54U+KOTJUtWlAPglr1lMZvQUoEIXro2S7wXwcZZyscpRDGvywHJMKrGGpHNdVJ x6NYDS3Z4q8FeanoSiIYblvlyOMW+TiO6CFYXbaa9w2DeifaYtXBCT8XbNNV+k3z++ix 5rHw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=EbyRMsgZ; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c8e05f0019si6606217a12.382.2024.10.08.18.56.16; Tue, 08 Oct 2024 18:56:16 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=EbyRMsgZ; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 081E668DD51; Wed, 9 Oct 2024 01:51:11 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E585B68DDF3 for ; Wed, 9 Oct 2024 01:51:01 +0300 (EEST) Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-20bb92346caso2104395ad.0 for ; Tue, 08 Oct 2024 15:51:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427860; x=1729032660; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=lzHujkAZp/xc4MJn+4DkVNOrSGdpqaz/AAYglQuhdbM=; b=EbyRMsgZunrS7pUKDmBJkDeWD7BYHjPHvJUccAmygZOjoXxjhY1FqrvKBIlV47LUxk sNBY5TfpNQFPwG9J+HukQimh3lQRDUN9wrOf6zjkh2Zx3lnxpi17bREaYJQyQNXP2vCI 01YH25AtK04YLPLZCTlna9j8nFWbz0SKIaDSJODa+YPg+4SDDZ/jAXXQYYFBGL1Y61QB 9nkWwzhIyIONBqqgBrUBj3cmjH59ZBerqW289lbF4uTdfqryy70zpdziGm+aOMAFkRjx ZJx7UFl/jk78ozx+O0Nxo1g9OotYipQzdKlNxstDNxMQLbeeyp6HB9GfHBSD0lv7Plps jRuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427860; x=1729032660; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lzHujkAZp/xc4MJn+4DkVNOrSGdpqaz/AAYglQuhdbM=; b=BpZSAEDUaJ/7LtunnY3wQxZz2VZng2axVNyAtb1pbwZnu8vaGIbwUTdG/FhWnVdJjn +3hTn0bT8yV8//cbt2a30yF8e0EPFBwDa31bsnacWMw2KWPjR+XEXR/VdeJaAppkVI3/ eFQiIvWf65iHjPb+UuD9sPK4x5L0RDuGxADs9CxMCJCPn9w+4g4PkTqI70urikl5i4Ew c4AKTWB9WDEE3HRCTyG3JHHWypVV7xnW2Suf1EQue9tBL5P7sc1Bofu+UOm9eqIDBMv3 clWT8r0Y4TF3St2Bs9rFoawiEdkSrDtwvI8xfICazNNeKph9xA5vV06kfeo/69MbdnQG hVzQ== X-Gm-Message-State: AOJu0YwLjn+pYKBaD8o6FGg3XRO3mk23PCVeHYLSSeHMbPWoB9gzqxOj o0chVpyZ+5A40PronsBf8gWDqa59z/SL5aUCGjMW7P2XPOS4glkUTbqOGA== X-Received: by 2002:a17:902:ce0e:b0:207:794c:ef24 with SMTP id d9443c01a7336-20c6316511dmr9517535ad.4.1728427859700; Tue, 08 Oct 2024 15:50:59 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.50.58 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:50:59 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:22 -0300 Message-ID: <20241008225027.12209-17-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 17/21] avformat/movenc: add support for VYU444 pixel format 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: nOihoQboF49M Signed-off-by: James Almer --- libavformat/isom_tags.c | 1 + libavformat/movenc.c | 1 + 2 files changed, 2 insertions(+) diff --git a/libavformat/isom_tags.c b/libavformat/isom_tags.c index 836bf14b80..1605a669d3 100644 --- a/libavformat/isom_tags.c +++ b/libavformat/isom_tags.c @@ -33,6 +33,7 @@ const AVCodecTag ff_codec_movvideo_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('y', 'u', 'v', '2') }, /* uncompressed YUV422 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('2', 'v', 'u', 'y') }, /* uncompressed 8-bit 4:2:2 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('y', 'u', 'v', 's') }, /* same as 2VUY but byte-swapped */ + { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '3', '0', '8') }, /* uncompressed 8-bit 4:4:4 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '0', '8') }, /* uncompressed 8-bit 4:4:4:4 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('L', '5', '5', '5') }, diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 4d8dfe5783..b1f6b29f8b 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -2612,6 +2612,7 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex int uncompressed_ycbcr = ((track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_UYVY422) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_YUYV422) + || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_VYU444) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_UYVA) || track->par->codec_id == AV_CODEC_ID_V308 || track->par->codec_id == AV_CODEC_ID_V408 From patchwork Tue Oct 8 22:50:23 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52143 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp594850vql; Tue, 8 Oct 2024 16:16:08 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXrb+sRDCYfSFocRgQN8wv+Nt2dS3lbjUp3gBe5fZfREo3uvbna/5y1V15BF7i2a5x4svded9gfk6a0E3sngnG+@gmail.com X-Google-Smtp-Source: AGHT+IEmhDS+ptnoG3t+D5QjgOA3PQpA290RAL6toBATD/8rEl62DejlUb2g6XNVV7Tzks0FH4Vi X-Received: by 2002:a05:6512:1384:b0:539:972a:2360 with SMTP id 2adb3069b0e04-539c4969471mr182706e87.55.1728429367797; Tue, 08 Oct 2024 16:16:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728429367; cv=none; d=google.com; s=arc-20240605; b=j3AcNAFqzPDJVExtjWrurxIxn3lgS3+4BEN/z+Ciu4Yp2SB8HLgWPvmfBwF84VqrLb +uus9hDEpEpy49AlXHW8vBEGoh3Utsi83ZnDPzciEsi21x581rlSjSS5uB29gGwZ5QmP lPzWHVIPc/G6cC69VfrhpC91wQTmGwg4kvNLo9EStmYHeeP7J4D2tgjCsRlUKVrhubtD Mqlb7chXBjSkFizDoyH/ZqznGlpvcVOFk6ozV/2oykOfN39jSKFjba/czh2EzCOs6KqA KhPyPR3i4Q9uYxhlpl5fjmTXN7+zexqrrJAEbwIenD1eM8Y7ytv75UyaYRmL/4To/yh5 AIVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=/ABqu/jS6nG2k+qVOTiskbFO9HhhIiZ55ooGiv5cUXA=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=TlI1OGuA5I+b1/rzyf3tC01zDCIPK1yCglBoSI6waHhsytlA5F93fsVzIB4ohuryDy kDVxzW5CISUi7PeuxmyeDn4UikUcKzcjM+Gaf1fj81WkTxuxU6zBGKkBjNRJVAjr4+ED 0+NH4bdJtDPMxebKJfFi4yEfqs9WsfX3cU3LXP1p5jJC9vPCz4ud3/bJrSkjd4oMn+U9 lamQmLslrTRFzrhfxyUAshKk7jS4BMQYwRqdfJfGt8VfDELz1o/Q0mduBFx2wtg7wGXl rmS0F3zOeCRbL5lO8iPdE4PqN5u6N8I7Eysq8RYKiV+1YchxXrsV4Y+Mi8Iypl6YaycB JeYA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=IeFGqj5x; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 2adb3069b0e04-539b0028ce9si2976038e87.639.2024.10.08.16.16.07; Tue, 08 Oct 2024 16:16:07 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=IeFGqj5x; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2187968DE22; Wed, 9 Oct 2024 01:51:13 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D5BE668DE0C for ; Wed, 9 Oct 2024 01:51:03 +0300 (EEST) Received: by mail-pl1-f177.google.com with SMTP id d9443c01a7336-20b90984971so63665405ad.3 for ; Tue, 08 Oct 2024 15:51:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427861; x=1729032661; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=xzSYlm9nko9TJtjfMQFQDt1VW0+7AP86gdUdDm4IcME=; b=IeFGqj5xWqLLw7Ff5ridKcITV8IMaae1Tk8Hn9ZSodS5VY0Vm8P3MEtGGcSot7GrCd U+BWJ65iibJ15nLB/BffX93tiCPu9p+ZEmdsiPVzEAz7du7ht92do3jPfd5AWwh5IRYp VV4DIIsYaUmuqyi3k93/Pib8/pgwc9mIuQCUEoJMC87WYpLSyqypMCXizdGZtkR/WRZ6 I7WnghiOXG3SWpkGcrJVcwmoz+GEmHqUWkRQ4vHEZZjtKcrbBYePqxiZXf7p/echfB9o AtEjD9X/il1klhDqpHEomONBJk4G1O+0xhdMEMd82/pLUc296404gJRUldrRXkJn5Ygd wpMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427861; x=1729032661; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xzSYlm9nko9TJtjfMQFQDt1VW0+7AP86gdUdDm4IcME=; b=p4HCWHInNaMQIqRepGvzIZZAZUeVtgpfWJjB0tspHSafrFtVOh6VW7Q3jKqyM32v48 R4zPe1OUJWcEv+I/9w9MnPAYgncRSlP5C/d49LxsXY3ul7RRglEmxgW7piMTFvIhVTTF 82umtPouPvndcuRAfczOWSko++G2AFakDL86fH6tTfzEnPcHoZA162D6d6nZX6eKeaS3 U4iqxZ6aCnRYTnnwcQKSR5oTHNGvtxTDaaFKhhtTe2QSwrZdCJ1ZnS4f03ZoGR+uNwTH MQMq1+S5wIdATBBbRkqFQMTID0QEpSINSn0utfX0CspKmAniKSJ4Wt3KMHscIhJpP92X a2Bw== X-Gm-Message-State: AOJu0Yxb4BIoOPQ4HSSYOcoT4wnMLPb8Ppg8bFZPNrH01L4zf6PL3rp5 ipjfi83uRJXJTWHwKlP2rmCB+o5FZRcW+j/BD5ovN3GMRxxXRiS2j5FsXQ== X-Received: by 2002:a17:902:d345:b0:20c:63bf:73ef with SMTP id d9443c01a7336-20c63bf7544mr5724335ad.6.1728427861116; Tue, 08 Oct 2024 15:51:01 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.51.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:51:00 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:23 -0300 Message-ID: <20241008225027.12209-18-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 18/21] avformat/movenc: add support for V30X pixel format 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: X5V7QblyLpzC Signed-off-by: James Almer --- libavformat/isom_tags.c | 1 + libavformat/movenc.c | 1 + 2 files changed, 2 insertions(+) diff --git a/libavformat/isom_tags.c b/libavformat/isom_tags.c index 1605a669d3..5b3b859d37 100644 --- a/libavformat/isom_tags.c +++ b/libavformat/isom_tags.c @@ -35,6 +35,7 @@ const AVCodecTag ff_codec_movvideo_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG('y', 'u', 'v', 's') }, /* same as 2VUY but byte-swapped */ { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '3', '0', '8') }, /* uncompressed 8-bit 4:4:4 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '0', '8') }, /* uncompressed 8-bit 4:4:4:4 */ + { AV_CODEC_ID_RAWVIDEO, MKTAG('v', '4', '1', '0') }, /* uncompressed 10-bit 4:4:4 */ { AV_CODEC_ID_RAWVIDEO, MKTAG('L', '5', '5', '5') }, { AV_CODEC_ID_RAWVIDEO, MKTAG('L', '5', '6', '5') }, diff --git a/libavformat/movenc.c b/libavformat/movenc.c index b1f6b29f8b..24b2385d94 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -2614,6 +2614,7 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_YUYV422) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_VYU444) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_UYVA) + || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_V30X) || track->par->codec_id == AV_CODEC_ID_V308 || track->par->codec_id == AV_CODEC_ID_V408 || track->par->codec_id == AV_CODEC_ID_V410 From patchwork Tue Oct 8 22:50:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52153 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp652351vql; Tue, 8 Oct 2024 18:56:17 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXgmPYA8YrT1YIP35gLtodCHGEbmkFTmbQff1MMdB/sELruaavP82LjGXkrKxBD88PrA2PFwXEaTz11DcK3syjT@gmail.com X-Google-Smtp-Source: AGHT+IEDWOphI1+e1o45KigqU/9WsyOFxGUMIc8mcCXBSQjubqR+aCW6LYZ+wsi3/Y/X2jgTyoxY X-Received: by 2002:a05:6512:a8e:b0:535:6cbf:51a3 with SMTP id 2adb3069b0e04-539c48e75eemr382657e87.25.1728438977198; Tue, 08 Oct 2024 18:56:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728438977; cv=none; d=google.com; s=arc-20240605; b=aYdJspu1iUy5vcC5oFTnU2JBiTl5qI+SvN4XhFOkyTOraq2lidFf5SYC3ADmolrk7J PBMUf9T0ZkVKP0MuR0XUCkaAR2gKoNm9PlE0kAt0GOE1Oha142SpQp0cBsW5pjbXbel9 +aUwJuHpE8Ox3QuYHrLKfPU7DZsfyFZaBN48rvJSGvgm0RbA8RqwsvtOikn7wVg40F2p is8CIrxrpo/mp58u3iSyd6SLoJ8JGd+jDcnJ5IIZLgTrjVhZhoSPRWoU/Ugk17Q1cdBx vTg99XMv8HKFYwIKix51xtS1xAdAXUvACQPLWb1/KUBhGZCE+iildwgqDVQM9qkhrwk+ haQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=f+RHDgDfcZ+iBKh2LqJ4bJlTKlFKKjfWBbhPXK7a8/A=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=AVnDExnv6c238l0ohbzPJfLZWjcuSaez17g7/xO3+XrQNOSZ3MVRADROk7wUSF6vQy hbK+dk4QfqayFWpzimXFxgaR7ye4CgVz9SFZgHP/uMPua+Na6D0g5PqiYs5WB8/c0ruA mnlwuuUJ79E2T7FeGDjeZOugwmBtaSuMHgjKEjdk+9qj/g6erZDbcdLd0Br9QtIDRFfI 6JhxXfwuvoNwUZ+VRSk//C7EDJLXZEjKrGLN37ihG7HEiKbcJ77AY8j8nNaIz4QCvgUC eTrXlGSPBimyTnkJsYndDkvHECpuWYw4bBOPsc3qOaNaL5aoCmdiREcQna3dflyzWTz4 kugw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=MxdmZ9UE; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 2adb3069b0e04-539b0028c21si3100368e87.598.2024.10.08.18.56.16; Tue, 08 Oct 2024 18:56:17 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=MxdmZ9UE; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0BF4E68DE35; Wed, 9 Oct 2024 01:51:15 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2189D68DE17 for ; Wed, 9 Oct 2024 01:51:05 +0300 (EEST) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-20b64584fd4so59970615ad.1 for ; Tue, 08 Oct 2024 15:51:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427863; x=1729032663; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=gwDdomCTloCkgZmgai0gxy2gxL05FLAg5wQGBEFKIV0=; b=MxdmZ9UEMmPT2JjrfIKQgS2b/+BcvQIj5qdGSD/sthFRpRZWrE9VHhQ4za3/1oglEI 8KbJV/MgRK4ix6segJj5KYEpKMDID8oPrEE1NrT9CZG7aHl3FuPcyOEgV4vhB8n9q5HY jKHCgxCEBOd6eJz7A61Q/7DJSbhfp5BLT5KZQjNA4oAz0tEmesa6BeYVH3f5ekJAJTdK PNnoXSxI+5jCrUWrC5UMfyz8R32PkVHgSFKQxP73UBqykbZhy6yaHB7Tcvnxa5rTEnUD 8q8+jo2D8hIa4TA3RMYg2i/c2PfA+Liqly33ppDlUjWJ+VR16EqdkANu+Dlv9ZoAYV5P +tAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427863; x=1729032663; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gwDdomCTloCkgZmgai0gxy2gxL05FLAg5wQGBEFKIV0=; b=hNhXeXVXw8Rx+IRohxei51WdLzdGZdUOyrWpvIQmC0gYYtO/+936O2FCds4Nkbm1fK zCQkncVdIV/SGIl639uNCfvnuw731wQlSIMHsA+V7e4lblCpC94GuURwsxOMZudt7bTc lGTzlTnvMkns5mxlu77eQHJxSy6oe7r2XNBgMIJN/wqNJFiGYS45DlUMjSsRioBqkLIy RbSrZiOzuyVSYOUaJFyC0fPb5YYzS7A2EU2xKLtrHS3ae+GKtuLoLMciFc4/Y5VHM/fV nx7WVEWEHdcH16RzvttlqbObCILO59q3j+JB2BDunQ6kENFRn4+8KHCqfgByblnpKGex SsSg== X-Gm-Message-State: AOJu0YwT1tFB8ZNXYrG2w7gADMksEJsej3++QYbj9OORHz+AUBLsKGoh gQY0Gk+icFjQqB7uK4bln//AaXIBPV4WKj8D0Qc93f/qaTSdEj7W3520Bg== X-Received: by 2002:a17:903:32cc:b0:20b:7e30:b2eb with SMTP id d9443c01a7336-20c638043e3mr8345835ad.58.1728427862800; Tue, 08 Oct 2024 15:51:02 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.51.01 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:51:02 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:24 -0300 Message-ID: <20241008225027.12209-19-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 19/21] avcodec: deprecate v408 de/encoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: TdAXYnHFj2Q2 The uyva pixel format was recently added, so this lavc workaround is no longer needed. Signed-off-by: James Almer --- libavcodec/allcodecs.c | 2 ++ libavcodec/codec_desc.c | 2 ++ libavcodec/codec_id.h | 2 ++ libavcodec/v408dec.c | 2 ++ libavcodec/v408enc.c | 2 ++ libavcodec/version_major.h | 1 + libavformat/isom_tags.c | 2 ++ libavformat/movenc.c | 2 ++ libavformat/riff.c | 2 ++ 9 files changed, 17 insertions(+) diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c index aa0fc47647..356a78f6e0 100644 --- a/libavcodec/allcodecs.c +++ b/libavcodec/allcodecs.c @@ -347,8 +347,10 @@ extern const FFCodec ff_v210_decoder; extern const FFCodec ff_v210x_decoder; extern const FFCodec ff_v308_encoder; extern const FFCodec ff_v308_decoder; +#if FF_API_V408_CODECID extern const FFCodec ff_v408_encoder; extern const FFCodec ff_v408_decoder; +#endif extern const FFCodec ff_v410_encoder; extern const FFCodec ff_v410_decoder; extern const FFCodec ff_vb_decoder; diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 03dea5751a..6018052215 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1484,6 +1484,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:4:4"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, +#if FF_API_V408_CODECID { .id = AV_CODEC_ID_V408, .type = AVMEDIA_TYPE_VIDEO, @@ -1491,6 +1492,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed QT 4:4:4:4"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, +#endif { .id = AV_CODEC_ID_YUV4, .type = AVMEDIA_TYPE_VIDEO, diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h index 0a8d3bed1e..0ab0f6761f 100644 --- a/libavcodec/codec_id.h +++ b/libavcodec/codec_id.h @@ -255,7 +255,9 @@ enum AVCodecID { AV_CODEC_ID_AVUI, AV_CODEC_ID_TARGA_Y216, AV_CODEC_ID_V308, +#if FF_API_V408_CODECID AV_CODEC_ID_V408, +#endif AV_CODEC_ID_YUV4, AV_CODEC_ID_AVRN, AV_CODEC_ID_CPIA, diff --git a/libavcodec/v408dec.c b/libavcodec/v408dec.c index 2433c6de14..4bce5c7b67 100644 --- a/libavcodec/v408dec.c +++ b/libavcodec/v408dec.c @@ -27,6 +27,8 @@ static av_cold int v408_decode_init(AVCodecContext *avctx) { avctx->pix_fmt = AV_PIX_FMT_YUVA444P; + av_log(avctx, AV_LOG_WARNING, "This decoder is deprecated and will be removed.\n"); + return 0; } diff --git a/libavcodec/v408enc.c b/libavcodec/v408enc.c index c173f650ef..bf264de463 100644 --- a/libavcodec/v408enc.c +++ b/libavcodec/v408enc.c @@ -30,6 +30,8 @@ static av_cold int v408_encode_init(AVCodecContext *avctx) avctx->bits_per_coded_sample = 32; avctx->bit_rate = ff_guess_coded_bitrate(avctx); + av_log(avctx, AV_LOG_WARNING, "This encoder is deprecated and will be removed.\n"); + return 0; } diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 63df40e9dd..37f243f868 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -48,5 +48,6 @@ #define FF_API_BUFFER_MIN_SIZE (LIBAVCODEC_VERSION_MAJOR < 62) #define FF_API_VDPAU_ALLOC_GET_SET (LIBAVCODEC_VERSION_MAJOR < 62) #define FF_API_QUALITY_FACTOR (LIBAVCODEC_VERSION_MAJOR < 62) +#define FF_API_V408_CODECID (LIBAVCODEC_VERSION_MAJOR < 62) #endif /* AVCODEC_VERSION_MAJOR_H */ diff --git a/libavformat/isom_tags.c b/libavformat/isom_tags.c index 5b3b859d37..d1b6b52db4 100644 --- a/libavformat/isom_tags.c +++ b/libavformat/isom_tags.c @@ -64,7 +64,9 @@ const AVCodecTag ff_codec_movvideo_tags[] = { { AV_CODEC_ID_V210, MKTAG('v', '2', '1', '0') }, /* uncompressed 10-bit 4:2:2 */ { AV_CODEC_ID_V210, MKTAG('b', 'x', 'y', '2') }, /* BOXX 10-bit 4:2:2 */ { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, /* uncompressed 8-bit 4:4:4 */ +#if FF_API_V408_CODECID { AV_CODEC_ID_V408, MKTAG('v', '4', '0', '8') }, /* uncompressed 8-bit 4:4:4:4 */ +#endif { AV_CODEC_ID_V410, MKTAG('v', '4', '1', '0') }, /* uncompressed 10-bit 4:4:4 */ { AV_CODEC_ID_Y41P, MKTAG('Y', '4', '1', 'P') }, /* uncompressed 12-bit 4:1:1 */ { AV_CODEC_ID_YUV4, MKTAG('y', 'u', 'v', '4') }, /* libquicktime packed yuv420p */ diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 24b2385d94..ea5221c87b 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -2616,7 +2616,9 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_UYVA) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_V30X) || track->par->codec_id == AV_CODEC_ID_V308 +#if FF_API_V408_CODECID || track->par->codec_id == AV_CODEC_ID_V408 +#endif || track->par->codec_id == AV_CODEC_ID_V410 || track->par->codec_id == AV_CODEC_ID_V210); diff --git a/libavformat/riff.c b/libavformat/riff.c index 7f3291a392..c1e48810b6 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -306,7 +306,9 @@ const AVCodecTag ff_codec_bmp_tags[] = { { AV_CODEC_ID_V210, MKTAG('v', '2', '1', '0') }, { AV_CODEC_ID_V210, MKTAG('C', '2', '1', '0') }, { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, +#if FF_API_V408_CODECID { AV_CODEC_ID_V408, MKTAG('v', '4', '0', '8') }, +#endif { AV_CODEC_ID_V410, MKTAG('v', '4', '1', '0') }, { AV_CODEC_ID_YUV4, MKTAG('y', 'u', 'v', '4') }, { AV_CODEC_ID_INDEO3, MKTAG('I', 'V', '3', '1') }, From patchwork Tue Oct 8 22:50:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52156 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp672394vql; Tue, 8 Oct 2024 20:06:13 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCW21zwVL1dG+GH7NkTV7D/UZ6CcbNQrwAJ2yoh1CouahHWoogmmsDff9HGKeaZyipXHl9dUf9cz+uBQUGxZUD8x@gmail.com X-Google-Smtp-Source: AGHT+IGXmtTtiFAfvZBI3jq79l8COp9B8kj7yY/OUdi5iVeO0rGF+CxY3ICZfScdsBk9i2VSKV9U X-Received: by 2002:a17:907:94cf:b0:a99:4789:6ad3 with SMTP id a640c23a62f3a-a998d342102mr64032566b.59.1728443173090; Tue, 08 Oct 2024 20:06:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728443173; cv=none; d=google.com; s=arc-20240605; b=K5uZoW+tomoU9LFyIA9Rhx7rFKau/EVCiALmb2fX69AV51KSLR6KEczlli8i1JAt6u vGVHdyHBSmsW6VeRmyFtOsi/j0TRnr0uN4aAGwQ3fC44ZEwSiKUQi5KyrawgPn/0YmwJ I9f8Dd7TR5LDLufyz2i1UraM9GFCTF8S+B2nfxDZanFwIRCN/uFdEzmc3dwEPXc9Ocpk I/LkSleFe2dsl+vakFimmcRBlVvx64sQXGno///hedzAS6odTUqZ1GxMCAmXOKBAXBh1 Xs82CsIBU7Hv7+F1mm62WSwokhPrDPArw2MD4fnVqfbIBRguddy4+rYUlWh80yWpW++A IDyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=IURCurgIX8x+ij8yN32EscMTi8omBEtJcLAq+HgLerE=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=gUYOb3NVn1tL2d/Eie92jCBket6B14bv6oPJyywfSYu2LaWbuITRvRmBLlNiCW1gb4 h06OEmnnCAmi0W4lle9Ih5IZz2c8rhdzFmAvGxwi2CRedz7kTn2VTYtN6HsSprlQpznj 407/p17Q2e+wCwuASd7GPxFy7a7WsmJ6cR4LEl2I92rLv9fegjvjQBH501U8x40g3Yor meMgwVA3jqeYpktTPqYsYsyPXMlEpOxbc2JC07EFbVCP7hEGHRt7/eg6h0X77YO53+x0 eCj0ghgNI3y6D25UpgsDA9viXBa7Mhe9ctCqhe4Sp3iXa+iID9Ypy0JEz3dEVBaiLRWh L+Qg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=DpW6wsF5; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a640c23a62f3a-a995eecee71si313639566b.819.2024.10.08.20.06.12; Tue, 08 Oct 2024 20:06:13 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=DpW6wsF5; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CAD1768DE3E; Wed, 9 Oct 2024 01:51:16 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8341768D56A for ; Wed, 9 Oct 2024 01:51:06 +0300 (EEST) Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-20b833f9b35so54052525ad.2 for ; Tue, 08 Oct 2024 15:51:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427864; x=1729032664; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=QKBudreAA+o4OPrXfsPLGtfykO63dxuOf71acFgr0BM=; b=DpW6wsF5emki74njpBnMV5Ow3NYE+wYdi1hVncYxrGlRlFN220Pcmy23ButTW5Z0Bt DRS/zr/aFllt+t4lvhCyTmmoHWCj09FJVsk/CSJZz1JrnXcYhCua+dqEeLlAuH+nuOyI fTbhlemvwFkiUy/CK/IyRC86sKchDKNwBqbGfLGMSYsesbxx0fbvYlJaf0OuZpsKV65j dzCHIviVS9Zp6r8f70xBD8JCp1RS4sf7Q0pVB4PhE44j55fmF/rD5IhCzw55PKAbAvKj r9zqbFf8uOfxRGY0xmNFvwhkqKgzYmiTpfUbKY8wK2UNHo91gsX23vye0XhBg0zZc2t7 NJYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427864; x=1729032664; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QKBudreAA+o4OPrXfsPLGtfykO63dxuOf71acFgr0BM=; b=n3GYoK6te+fiQmqB4SkQlS04ZXuAwdulB9rNyKNnsFz8/Wl/1cyxmjs0AKJhaVkeJC VPvgZorotnnY87YDm0ID1PlJEB2VrD+4zH2y2EdVigpwpkB05qsXPP3FJCopJqBtrmwO QDR0+WiyMYHxR/66GnKShKYxTu4LY3b8HdEU8M7PSPv41zuWCxT3oSioJOjscJF+YgSV FwZz9bVMqdbh+sMrC+cBN+uBlk6wbro7upxu8ROzS4D58vTA6WwmtNwsBwsKzu544tou e7CnF/wY/jhWvxY7AECpDAn9UpeKhzKirumGJ9DN2gkYOv+QFUvY9N6wLTC3BXG8JZiq j4Qw== X-Gm-Message-State: AOJu0Yx9TFAGUgPhEbakOUgLNo2nGRn6sa4Obg8GRAhUdgd+BtaHzu02 krxpj6eyDADKqJbm5Poy1SI/STDFXWiYkg2EfX57sTD2zBkS1JuuV7yqJA== X-Received: by 2002:a17:903:41cf:b0:20b:af36:ea5 with SMTP id d9443c01a7336-20c6376e592mr6545525ad.18.1728427864212; Tue, 08 Oct 2024 15:51:04 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.51.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:51:03 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:25 -0300 Message-ID: <20241008225027.12209-20-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 20/21] avcodec: deprecate v308 de/encoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: vgja1Mtk8dqp The vyu444 pixel format was recently added, so this lavc workaround is no longer needed. Signed-off-by: James Almer --- libavcodec/allcodecs.c | 2 +- libavcodec/codec_desc.c | 2 +- libavcodec/codec_id.h | 2 +- libavcodec/v308dec.c | 2 ++ libavcodec/v308enc.c | 2 ++ libavformat/isom_tags.c | 2 +- libavformat/movenc.c | 2 +- libavformat/riff.c | 2 +- 8 files changed, 10 insertions(+), 6 deletions(-) diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c index 356a78f6e0..19f7d63c16 100644 --- a/libavcodec/allcodecs.c +++ b/libavcodec/allcodecs.c @@ -345,9 +345,9 @@ extern const FFCodec ff_utvideo_decoder; extern const FFCodec ff_v210_encoder; extern const FFCodec ff_v210_decoder; extern const FFCodec ff_v210x_decoder; +#if FF_API_V408_CODECID extern const FFCodec ff_v308_encoder; extern const FFCodec ff_v308_decoder; -#if FF_API_V408_CODECID extern const FFCodec ff_v408_encoder; extern const FFCodec ff_v408_decoder; #endif diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 6018052215..0e9cd669d2 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1477,6 +1477,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Pinnacle TARGA CineWave YUV16"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, +#if FF_API_V408_CODECID { .id = AV_CODEC_ID_V308, .type = AVMEDIA_TYPE_VIDEO, @@ -1484,7 +1485,6 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed 4:4:4"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, -#if FF_API_V408_CODECID { .id = AV_CODEC_ID_V408, .type = AVMEDIA_TYPE_VIDEO, diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h index 0ab0f6761f..3608c4b856 100644 --- a/libavcodec/codec_id.h +++ b/libavcodec/codec_id.h @@ -254,8 +254,8 @@ enum AVCodecID { AV_CODEC_ID_012V, AV_CODEC_ID_AVUI, AV_CODEC_ID_TARGA_Y216, - AV_CODEC_ID_V308, #if FF_API_V408_CODECID + AV_CODEC_ID_V308, AV_CODEC_ID_V408, #endif AV_CODEC_ID_YUV4, diff --git a/libavcodec/v308dec.c b/libavcodec/v308dec.c index b591a79dd2..64876b7e5a 100644 --- a/libavcodec/v308dec.c +++ b/libavcodec/v308dec.c @@ -30,6 +30,8 @@ static av_cold int v308_decode_init(AVCodecContext *avctx) if (avctx->width & 1) av_log(avctx, AV_LOG_WARNING, "v308 requires width to be even.\n"); + av_log(avctx, AV_LOG_WARNING, "This decoder is deprecated and will be removed.\n"); + return 0; } diff --git a/libavcodec/v308enc.c b/libavcodec/v308enc.c index 68f9c3310b..2941ba3f03 100644 --- a/libavcodec/v308enc.c +++ b/libavcodec/v308enc.c @@ -33,6 +33,8 @@ static av_cold int v308_encode_init(AVCodecContext *avctx) return AVERROR_INVALIDDATA; } + av_log(avctx, AV_LOG_WARNING, "This encoder is deprecated and will be removed.\n"); + avctx->bits_per_coded_sample = 24; avctx->bit_rate = ff_guess_coded_bitrate(avctx); diff --git a/libavformat/isom_tags.c b/libavformat/isom_tags.c index d1b6b52db4..e999aa7fef 100644 --- a/libavformat/isom_tags.c +++ b/libavformat/isom_tags.c @@ -63,8 +63,8 @@ const AVCodecTag ff_codec_movvideo_tags[] = { { AV_CODEC_ID_AVRP, MKTAG('S', 'U', 'D', 'S') }, /* Avid DS Uncompressed */ { AV_CODEC_ID_V210, MKTAG('v', '2', '1', '0') }, /* uncompressed 10-bit 4:2:2 */ { AV_CODEC_ID_V210, MKTAG('b', 'x', 'y', '2') }, /* BOXX 10-bit 4:2:2 */ - { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, /* uncompressed 8-bit 4:4:4 */ #if FF_API_V408_CODECID + { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, /* uncompressed 8-bit 4:4:4 */ { AV_CODEC_ID_V408, MKTAG('v', '4', '0', '8') }, /* uncompressed 8-bit 4:4:4:4 */ #endif { AV_CODEC_ID_V410, MKTAG('v', '4', '1', '0') }, /* uncompressed 10-bit 4:4:4 */ diff --git a/libavformat/movenc.c b/libavformat/movenc.c index ea5221c87b..8f47e85490 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -2615,8 +2615,8 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_VYU444) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_UYVA) || (track->par->codec_id == AV_CODEC_ID_RAWVIDEO && track->par->format == AV_PIX_FMT_V30X) - || track->par->codec_id == AV_CODEC_ID_V308 #if FF_API_V408_CODECID + || track->par->codec_id == AV_CODEC_ID_V308 || track->par->codec_id == AV_CODEC_ID_V408 #endif || track->par->codec_id == AV_CODEC_ID_V410 diff --git a/libavformat/riff.c b/libavformat/riff.c index c1e48810b6..0f5682313e 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -305,8 +305,8 @@ const AVCodecTag ff_codec_bmp_tags[] = { { AV_CODEC_ID_R210, MKTAG('r', '2', '1', '0') }, { AV_CODEC_ID_V210, MKTAG('v', '2', '1', '0') }, { AV_CODEC_ID_V210, MKTAG('C', '2', '1', '0') }, - { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, #if FF_API_V408_CODECID + { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, { AV_CODEC_ID_V408, MKTAG('v', '4', '0', '8') }, #endif { AV_CODEC_ID_V410, MKTAG('v', '4', '1', '0') }, From patchwork Tue Oct 8 22:50:26 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 52158 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:8b47:0:b0:48e:c0f8:d0de with SMTP id x7csp712658vql; Tue, 8 Oct 2024 22:26:11 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUN7SGedneiueH38Ftqs9re+LAey3OSfDxegExFLHIdHmW/+5hsA2bE/HVzIhvbiRj2gJoh7RJdl4G7CGNEbCrt@gmail.com X-Google-Smtp-Source: AGHT+IEonDpzRoEqubcXdA91HtD5pMSwTcr5ZOW1IEHTnJLW6UU0wZ9BirZPGffWqYq9Zw/BGybq X-Received: by 2002:a2e:5152:0:b0:2fa:c0df:3d7b with SMTP id 38308e7fff4ca-2fb1873da33mr4830551fa.22.1728451571692; Tue, 08 Oct 2024 22:26:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728451571; cv=none; d=google.com; s=arc-20240605; b=YaBf2Ap5SXFyR/bHPyI4C7YtBfAQoqAlHjPLgBqfbVTqX+iwfwN1M7JgvyM9zYQSZK VbCtSfnrOs0R/LvVPD/0PJbo/Hm6d68qLw7lTbod+vVn0vP8vipONX4/k9eT7NxXwThm +ALOyq7rSodsTQfsxb/zps4uBv5JMBSzfmNYKtxW9+PaOHHWGFR1DRiaDhGuBJqiJnfD d/uJ4JTIipen079qYrozGB0M0xhTmyp04zLdMg05UfVnntYXx9ukWbCuH13ETDVHt7Fh Bg1o5sihM8DoAre2qSE49l0keFu4PXOQFm0sfLZ/ZVy4/CamEhE8uC3SDbKP+B1n0v6O Q9Lw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding: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:dkim-signature:delivered-to; bh=u2uztlkxKVYKTKJAkvTrIP0ZZG+MjkcmIeSkfa7QBV0=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=gGbbu+vloIrw7nTBgegjRW3nrMUW738UCgFi3fwl/1yWwdnDXlIMQVg+DyTgz8iVkh GlXjQslzbqZdTxGE/62jOkD6S9bbnZgkj/9PNfTFVUxLSxjW+YFaax/xCsrOOqIQRaWb GRwc+NLBWEABpNk+DetEkT/FjL5/eltwg6bj9H0oGQTI2K6xTWJUSA5N3qoSBSFOTbWG +fRaJhq92RM2KPqVNvwSbx7eakvFY48UVp/+gotEO1QFfKuRHILgOIz5FFBPq9z/R6F8 aWuK6umD8b+GK4IM/3rCfi9u/un34EZLWa8lzZjgHpuxrI9xME0KFmvTmHT3PIZ9rhre 4GuQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=dbWYPSMh; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 38308e7fff4ca-2faf9b228dbsi28270381fa.317.2024.10.08.22.26.10; Tue, 08 Oct 2024 22:26:11 -0700 (PDT) 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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=dbWYPSMh; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4A22968DE51; Wed, 9 Oct 2024 01:51:19 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E64E568DD6C for ; Wed, 9 Oct 2024 01:51:07 +0300 (EEST) Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-20bb39d97d1so53776115ad.2 for ; Tue, 08 Oct 2024 15:51:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728427866; x=1729032666; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=QJaeMw8YKttRjrHD2b5Z8k+4WIrf6//VTt0xYpyVyRU=; b=dbWYPSMhmZaw4kEs5HfupzCPXYn4HgE4QoEtt/bAn8UWnhg83zMzH2s7h38KHYPK0J fLtISVyleq7V581+yUpfI48SDzOOE3uNc94uICVRDc2Wcgy+uGQ7gNCiIyqlr6F6PQtj LlQ8PJIGOCQlmZ0+tyX9tBJEjrdNImmj/VdYekb/h6FwH5SC7pJmpNJCqVPsqnnOkwzR ZbSlsjgCvoN8U0CvTwT/+50rBuL+wMIobqSf/9DEN2G7iq0KfglQQV5xLV/A94fbktTr g/YoNOPYh2Zv/iQ3N84qoQ3iVUIR5lT/4N4N4tLI6omjF/25WePMjqiUg06exEiwuwWO ceCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728427866; x=1729032666; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QJaeMw8YKttRjrHD2b5Z8k+4WIrf6//VTt0xYpyVyRU=; b=ZK0cFIEi9/PYb0vQkj8wffN9Cb+BQrQaEXCEgNwZ7y6oSfqjeqrncfr47PZq9MzaLy vDq22b5B6tcH2WJ5kugzArVPuIL9K2UHOmHgyffhlqXxyXoAGxDFk8HmtTGuHIsvCmM8 UZ5MTaK9Q6LhxO6WT5HEb3OqjOYpKl4CURHXvJGwH76WlFXsMnXo31Tdhvu+plP5NYA/ slZmRxC/AMhlgR0TjZe2H7Rr8/iltDWKjkwI6J1cyz0YKTCHxW5E7kke+oX6EZFeuJ89 wnWuF34Ijc9rpJGOQCbkgiaoeZLZTBqAe16zaK92mTtUyYBGcKVHK8QRiRhpEv366B+i nfuA== X-Gm-Message-State: AOJu0Yxg4dL6m8NsDQf9x3u0iKI8mTGoelmUrTv7iFHY4nZ/FxIyqZ5q NpPLkArUMMQIaYc6clah0bf5fn7HVFuVBd8VzRHdcsbYD6yzDGRwbNtTww== X-Received: by 2002:a17:903:2344:b0:20b:6f04:486f with SMTP id d9443c01a7336-20c6375f64emr6621165ad.18.1728427865685; Tue, 08 Oct 2024 15:51:05 -0700 (PDT) Received: from localhost.localdomain ([181.92.233.116]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-20c138afaa0sm60373855ad.4.2024.10.08.15.51.04 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Oct 2024 15:51:05 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Oct 2024 19:50:26 -0300 Message-ID: <20241008225027.12209-21-jamrial@gmail.com> X-Mailer: git-send-email 2.46.2 In-Reply-To: <20241008225027.12209-1-jamrial@gmail.com> References: <20241008225027.12209-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 21/21] avcodec: deprecate v410 de/encoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: RTlAa4A5IuR6 The V30X pixel format was recently added, so this lavc workaround is no longer needed. Signed-off-by: James Almer --- libavcodec/allcodecs.c | 2 +- libavcodec/codec_desc.c | 2 ++ libavcodec/codec_id.h | 2 ++ libavcodec/v410dec.c | 2 ++ libavcodec/v410enc.c | 2 ++ libavformat/isom_tags.c | 2 +- libavformat/movenc.c | 2 +- libavformat/riff.c | 2 +- 8 files changed, 12 insertions(+), 4 deletions(-) diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c index 19f7d63c16..d69e70a29b 100644 --- a/libavcodec/allcodecs.c +++ b/libavcodec/allcodecs.c @@ -350,9 +350,9 @@ extern const FFCodec ff_v308_encoder; extern const FFCodec ff_v308_decoder; extern const FFCodec ff_v408_encoder; extern const FFCodec ff_v408_decoder; -#endif extern const FFCodec ff_v410_encoder; extern const FFCodec ff_v410_decoder; +#endif extern const FFCodec ff_vb_decoder; extern const FFCodec ff_vbn_encoder; extern const FFCodec ff_vbn_decoder; diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 0e9cd669d2..2c03a466d6 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1146,6 +1146,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Dxtory"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, +#if FF_API_V408_CODECID { .id = AV_CODEC_ID_V410, .type = AVMEDIA_TYPE_VIDEO, @@ -1153,6 +1154,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:4:4 10-bit"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, +#endif { .id = AV_CODEC_ID_XWD, .type = AVMEDIA_TYPE_VIDEO, diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h index 3608c4b856..787313ffaf 100644 --- a/libavcodec/codec_id.h +++ b/libavcodec/codec_id.h @@ -206,7 +206,9 @@ enum AVCodecID { AV_CODEC_ID_BMV_VIDEO, AV_CODEC_ID_VBLE, AV_CODEC_ID_DXTORY, +#if FF_API_V408_CODECID AV_CODEC_ID_V410, +#endif AV_CODEC_ID_XWD, AV_CODEC_ID_CDXL, AV_CODEC_ID_XBM, diff --git a/libavcodec/v410dec.c b/libavcodec/v410dec.c index 04be830ad2..d3747c18e0 100644 --- a/libavcodec/v410dec.c +++ b/libavcodec/v410dec.c @@ -46,6 +46,8 @@ static av_cold int v410_decode_init(AVCodecContext *avctx) } } + av_log(avctx, AV_LOG_WARNING, "This decoder is deprecated and will be removed.\n"); + return 0; } diff --git a/libavcodec/v410enc.c b/libavcodec/v410enc.c index 89ee3a7278..78362ce453 100644 --- a/libavcodec/v410enc.c +++ b/libavcodec/v410enc.c @@ -37,6 +37,8 @@ static av_cold int v410_encode_init(AVCodecContext *avctx) avctx->bits_per_coded_sample = 32; avctx->bit_rate = ff_guess_coded_bitrate(avctx); + av_log(avctx, AV_LOG_WARNING, "This encoder is deprecated and will be removed.\n"); + return 0; } diff --git a/libavformat/isom_tags.c b/libavformat/isom_tags.c index e999aa7fef..a476efb8f1 100644 --- a/libavformat/isom_tags.c +++ b/libavformat/isom_tags.c @@ -66,8 +66,8 @@ const AVCodecTag ff_codec_movvideo_tags[] = { #if FF_API_V408_CODECID { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, /* uncompressed 8-bit 4:4:4 */ { AV_CODEC_ID_V408, MKTAG('v', '4', '0', '8') }, /* uncompressed 8-bit 4:4:4:4 */ -#endif { AV_CODEC_ID_V410, MKTAG('v', '4', '1', '0') }, /* uncompressed 10-bit 4:4:4 */ +#endif { AV_CODEC_ID_Y41P, MKTAG('Y', '4', '1', 'P') }, /* uncompressed 12-bit 4:1:1 */ { AV_CODEC_ID_YUV4, MKTAG('y', 'u', 'v', '4') }, /* libquicktime packed yuv420p */ { AV_CODEC_ID_TARGA_Y216, MKTAG('Y', '2', '1', '6') }, diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 8f47e85490..0291710762 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -2618,8 +2618,8 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex #if FF_API_V408_CODECID || track->par->codec_id == AV_CODEC_ID_V308 || track->par->codec_id == AV_CODEC_ID_V408 -#endif || track->par->codec_id == AV_CODEC_ID_V410 +#endif || track->par->codec_id == AV_CODEC_ID_V210); avio_wb32(pb, 0); /* size */ diff --git a/libavformat/riff.c b/libavformat/riff.c index 0f5682313e..88c4d6cbe9 100644 --- a/libavformat/riff.c +++ b/libavformat/riff.c @@ -308,8 +308,8 @@ const AVCodecTag ff_codec_bmp_tags[] = { #if FF_API_V408_CODECID { AV_CODEC_ID_V308, MKTAG('v', '3', '0', '8') }, { AV_CODEC_ID_V408, MKTAG('v', '4', '0', '8') }, -#endif { AV_CODEC_ID_V410, MKTAG('v', '4', '1', '0') }, +#endif { AV_CODEC_ID_YUV4, MKTAG('y', 'u', 'v', '4') }, { AV_CODEC_ID_INDEO3, MKTAG('I', 'V', '3', '1') }, { AV_CODEC_ID_INDEO3, MKTAG('I', 'V', '3', '2') },