From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 7342349042 for ; Wed, 31 Jan 2024 18:21:06 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5A73568D0A6; Wed, 31 Jan 2024 20:21:03 +0200 (EET) 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 D38A168CA75 for ; Wed, 31 Jan 2024 20:20:57 +0200 (EET) Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-1d7881b1843so328555ad.3 for ; Wed, 31 Jan 2024 10:20:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706725255; x=1707330055; darn=ffmpeg.org; h=content-transfer-encoding:in-reply-to:autocrypt:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Bzu+p7DuoSFhnzCZQPMZyIuYEGeZXXdquW/R/s1aRIw=; b=C4SG3c2odvBe5zSB/rRdf4UZqq/apNEWyZBZMfF2SqfofSH5ASPqGnpbWUvwyHM+xg h4qPVwYk0babG68njcKOXOc9VbodGU0j0ksP7JVimhvLelowKEAo3lcfc2C4sl/i+7Lh pOdy30FN2pgbe1ZH1JI0/9SUVEEoplzlVXLmUM3t07xuSkQTuAmrlLqJX8vn93WIh/pN B8Oig1OyK+8SbhB/0ljfSHGIYxqM4p8PGhH2w0At4u5cUvZqy4pmS3Y5HO5kvqfn6QY9 yl+PrMdGnKsCo7Btzar6nYCNQWRxPDhExiwYSdSHuD1WFTIFjuO4YYkZefM1yCCYHS7A ZVvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706725255; x=1707330055; h=content-transfer-encoding:in-reply-to:autocrypt:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Bzu+p7DuoSFhnzCZQPMZyIuYEGeZXXdquW/R/s1aRIw=; b=kIOJ4JSV0vN952hl/CX4BReiziybOioUdnLa0YF90J+s0TryT5LRusO0WQoxNVxzqz 7rc3ma/P1Zrb74zgJoKTseTebMdK62DHD2UE+FwivWhiBGhjFLuR9iJM5b0OVKg8RFM/ gcYbNqEaH1oB0XQfgr1lCsqBoR8Hu7rC/UnlwUrRNdX9kWp9A0JNILtkmyMTOXV1z0od Usl+wrNRAxKIg22zqdgbcYJI4gnCEnKQ9UgN1si+c2xvFG5fYdVg4jrPDcB6tajVdtWz mFBoPJBo23GL8CCGf9gjvz/KYn8z/qBMuHDypR91zvizZUZmAxnstlQhZ7l41g/i0zNg aoyw== X-Gm-Message-State: AOJu0Yx0FU87oD5AM8wSRdrJc3kZg7dr4msWtOazoxhsRTC7wBXz5gQi M886l+u5NTeCJEFB+mbwcECegMcVQpNFixHmC1hlrZzYjergNILpHARRTY5G X-Google-Smtp-Source: AGHT+IE6m4hOBzuSNeVJ6cR3mCUXtwXmNyT2ThUzCNvvjd6Vf6hnY9pFA5ZbZwkUArYZr7J48IL0pQ== X-Received: by 2002:a17:902:d544:b0:1d9:6c3:e24f with SMTP id z4-20020a170902d54400b001d906c3e24fmr3617808plf.38.1706725255486; Wed, 31 Jan 2024 10:20:55 -0800 (PST) Received: from [192.168.0.18] (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id i11-20020a17090320cb00b001d8d6cc0891sm6413232plb.81.2024.01.31.10.20.54 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 31 Jan 2024 10:20:55 -0800 (PST) Message-ID: <7f7d8c22-da5b-4647-8935-ddc6e37685e4@gmail.com> Date: Wed, 31 Jan 2024 15:21:20 -0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <20240131174718.17829-1-jamrial@gmail.com> <20240131174718.17829-2-jamrial@gmail.com> From: James Almer Autocrypt: addr=jamrial@gmail.com; keydata= xsBNBFjZtqABCADLW+vdEoZaJZDsIO6geYFTOcn1unsEHefj9zn+3oTHlDFFzO47mzHsSfbK 9JE2xpOJEVnC8FAF5Sayi/pVwV+mtQUV3n5dgVeVBYF9GUQwOGFCpK8X54RRqhkgknbunOEE 0CtgAJgmpFmmmHgq02GvEspx1h/rh4apqwQR6QX4Favb+x9+i9ytVpwVcBX94vo2toyP7h/K BWfadQmb8ltgE1kshfg+SQs/H5bTV5Z1DuEASf02ZL/1qYB/sdTgWPLv9XMUHHsRFmMY8TMx wJSkP+Af3AiYQPJYz1B1D4tt98T/NoiVdin10zATakPjV8hXaobuRmxgakkUASXudydDABEB AAHNH0phbWVzIEFsbWVyIDxqYW1yaWFsQGdtYWlsLmNvbT7CwJIEEwEIADwCGwMGCwkIBwMC BhUIAgkKCwQWAgMBAh4BAheAFiEEd1EujP2UoWlX5pp6FGMBrXN2WeAFAmJoLUUCGQEACgkQ FGMBrXN2WeAFVQf9GtGhniRs1PzNUOgJktCnv6j4BbLieaIPYPEFXKDHOgjqQE2zVMYXnoXl Jam928ii902a8OY06r9ywn/R8ApD1/3NY/v64O71CY9scz5XyH2au8wIZ6HwFy3/f7sqjdGD uctY8Qs7rjT7NkoC5lmgMu2v2k03dGtM9AAf5AK5gU+H0EUw7vmKKiXzUqt5kvBuf4CEwXvH AQT1SMJ52rIlDWB7FQFyZeUbOAK2IgY/KNedfK6nsgd/eQVnlofPd2XoddE7kP6iys7jJefw DD3g3rZyDTq7in5dyk5glaNpWZpbHGBs+9SCYLnfQ8XvWqPFOD+gj0plamKANgOvavKTxM7A TQRY2bagAQgA69YtILj8kYxmqPr/M8+MXT7wVoOWVW9lvSmPquCELaDy/NIS7D06VC5EuE/6 JlJXZMTn37NLlyWhzwOgXuXw5w2tyoQQBuvqGiXJijuXwXH7HKdzrc6rpYtAqt5w05hzNrFS KrS0izG64VpWrfproy3BsL+8TBm9brLhhNPynVRqVukbbGzlATTzNQGZ14TTi2/dL6DkMQnM qn4jX9UEe4GdGQBP50bUJSSmeiIkyNLWA+znuN2PZEz930ZwNrF9GtDVw7mzcmpCZ7spldE2 tutbpy9D1bIqxyqBrYDSezyzL2adR1qgHyOTMCHg2AYNkrIQHrSyJxKTpZ1/hqOp8wARAQAB wsBfBBgBAgAJBQJY2bagAhsMAAoJEBRjAa1zdlnghekH/0Yb0iYJ74oID2f/Fj+AJKS2ekQF P2xOr8lpGzgp/+yWUvPtqbX0A33anBJdYwxaAC0NataX3tfZ+oJkzXqfmqhIHMPYHdZesJA2 Bk9hU/33mDl5s5U66/z0uelWzwKVHoQ2O6or4+qF3HJFSJLCe9uvWJ3zXf9F342Ftj73sfx+ 3xkw/IXsN1RqbYqDlzpoEQ99SIEfY/8Jjwnd3sIPfqkuyeaYfe6GJDqKawdCEP1oRRlbXEAp TJgYz8r3nPhGv9cdHNDCk44ISbsqVuxIEnLqi4fTPZaGupiQhT+srl268TTAp2TQW7+6Ce/b NPQorMquzS/LZoyALpmsYi/miMc= In-Reply-To: Subject: Re: [FFmpeg-devel] [PATCH 2/4 v6] avformat: add a Tile Grid stream group type 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 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: On 1/31/2024 3:08 PM, Andreas Rheinhardt wrote: > James Almer: >> This will be used to support tiled image formats like HEIF. >> >> Signed-off-by: James Almer >> --- >> libavformat/avformat.c | 5 +++ >> libavformat/avformat.h | 100 +++++++++++++++++++++++++++++++++++++++++ >> libavformat/dump.c | 29 ++++++++++++ >> libavformat/options.c | 32 +++++++++++++ >> 4 files changed, 166 insertions(+) >> >> diff --git a/libavformat/avformat.c b/libavformat/avformat.c >> index 8e8c6fbe55..32ef440207 100644 >> --- a/libavformat/avformat.c >> +++ b/libavformat/avformat.c >> @@ -100,6 +100,11 @@ void ff_free_stream_group(AVStreamGroup **pstg) >> av_iamf_mix_presentation_free(&stg->params.iamf_mix_presentation); >> break; >> } >> + case AV_STREAM_GROUP_PARAMS_TILE_GRID: >> + av_opt_free(stg->params.tile_grid); >> + av_freep(&stg->params.tile_grid->offsets); >> + av_freep(&stg->params.tile_grid); >> + break; >> default: >> break; >> } >> diff --git a/libavformat/avformat.h b/libavformat/avformat.h >> index 5d0fe82250..6577f13ef1 100644 >> --- a/libavformat/avformat.h >> +++ b/libavformat/avformat.h >> @@ -1018,10 +1018,109 @@ typedef struct AVStream { >> int pts_wrap_bits; >> } AVStream; >> >> +/** >> + * AVStreamGroupTileGrid holds information on how to combine several >> + * independent images on a single grid for presentation. None of the tiles may >> + * overlap inside the grid. >> + * >> + * The following is an example of a simple grid with 3 rows and 4 columns: >> + * >> + * +---+---+---+---+ >> + * | 0 | 1 | 2 | 3 | >> + * +---+---+---+---+ >> + * | 4 | 5 | 6 | 7 | >> + * +---+---+---+---+ >> + * | 8 | 9 |10 |11 | >> + * +---+---+---+---+ >> + * >> + * Assuming all tiles have a dimension of 512x512, the >> + * @ref AVStreamGroupTileGrid.offsets "offset" of the topleft pixel of >> + * the first @ref AVStreamGroup.streams "stream" in the group is "0,0", the >> + * @ref AVStreamGroupTileGrid.offsets "offset" of the topleft pixel of >> + * the second @ref AVStreamGroup.streams "stream" in the group is "512,0", the >> + * @ref AVStreamGroupTileGrid.offsets "offset" of the topleft pixel of >> + * the fifth @ref AVStreamGroup.streams "stream" in the group is "0,512", the >> + * @ref AVStreamGroupTileGrid.offsets "offset", of the topleft pixel of >> + * the sixth @ref AVStreamGroup.streams "stream" in the group is "512,512", >> + * etc. >> + * >> + * sizeof(AVStreamGroupTileGrid) is not a part of the ABI. No new fields may be >> + * added to this struct without a major version bump. > This is inconsistent. I think you mean that sizeof is part of the ABI. No? It's not a part of the ABI because AVStreamGroupTileGrid must not be ever used on stack, or allocated by anything other than AVStreamGroup. That way we can add fields to it without waiting for a major bump. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".