From: James Zern <jzern-at-google.com@ffmpeg.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH 1/2] avformat/mov: Rework the AVIF parser to handle multiple items
Date: Mon, 11 Jul 2022 15:25:05 -0700
Message-ID: <CABWgkX+tVg9QFifrcwUEY9SuiqKC96uKwTEbj7Aeh96AZ0P6FQ@mail.gmail.com> (raw)
In-Reply-To: <20220630210434.1551769-1-vigneshv@google.com>
On Thu, Jun 30, 2022 at 2:04 PM Vignesh Venkatasubramanian
<vigneshv-at-google.com@ffmpeg.org> wrote:
>
> Stores the item ids of all the items found in the file and
> processes the primary item at the end of the meta box. This patch
> does not change any behavior. It sets up the code for parsing
> alpha channel (and possibly images with 'grid') in follow up
> patches.
>
> Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
> ---
> libavformat/isom.h | 4 ++
> libavformat/mov.c | 148 ++++++++++++++++++++++++++++-----------------
> 2 files changed, 97 insertions(+), 55 deletions(-)
>
> [...]
@@ -4692,9 +4755,25 @@ static int mov_read_meta(MOVContext *c,
AVIOContext *pb, MOVAtom atom)
tag = avio_rl32(pb);
atom.size -= 4;
if (tag == MKTAG('h','d','l','r')) {
+ int ret;
avio_seek(pb, -8, SEEK_CUR);
atom.size += 8;
- return mov_read_default(c, pb, atom);
+ ret = mov_read_default(c, pb, atom);
+ if (ret < 0)
In some other cases these two lines are combined, if ((ret = ...
+ return ret;
+ if (c->is_still_picture_avif) {
+ int ret;
+ // Add a stream for the YUV planes (primary item).
+ ret = avif_add_stream(c, c->primary_item_id);
+ if (ret)
This could be updated too and use '< 0' to match other code.
+ return ret;
+ // For still AVIF images, the meta box contains all the
+ // necessary information that would generally be
provided by the
+ // moov box. So simply mark that we have found the moov box so
+ // that parsing can continue.
+ c->found_moov = 1;
+ }
+ return ret;
}
_______________________________________________
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".
next prev parent reply other threads:[~2022-07-11 22:25 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-30 21:04 Vignesh Venkatasubramanian
2022-06-30 21:04 ` [FFmpeg-devel] [PATCH 2/2] avformat/mov: Support parsing of still AVIF Alpha Channel Vignesh Venkatasubramanian
2022-07-02 9:34 ` Anton Khirnov
2022-07-02 16:32 ` Vignesh Venkatasubramanian
2022-07-02 19:34 ` Jan Ekström
2022-07-02 21:15 ` Vignesh Venkatasubramanian
2022-07-03 12:17 ` Jan Ekström
2022-07-03 16:52 ` Vignesh Venkatasubramanian
2022-07-05 16:53 ` Anton Khirnov
2022-07-12 15:17 ` Vignesh Venkatasubramanian
2022-07-11 22:25 ` James Zern [this message]
2022-07-13 16:11 ` [FFmpeg-devel] [PATCH 1/2] avformat/mov: Rework the AVIF parser to handle multiple items Vignesh Venkatasubramanian
2022-07-13 16:12 ` Vignesh Venkatasubramanian
2022-07-22 18:20 ` Vignesh Venkatasubramanian
2022-07-26 19:02 ` James Zern
2022-07-27 16:12 ` Vignesh Venkatasubramanian
2022-07-27 19:37 ` James Zern
2022-07-27 19:40 ` Andreas Rheinhardt
2022-07-28 18:25 ` Vignesh Venkatasubramanian
2022-07-28 18:25 ` Vignesh Venkatasubramanian
2022-08-02 16:54 ` James Zern
2022-08-09 20:20 ` James Zern
2022-07-27 16:12 ` Vignesh Venkatasubramanian
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CABWgkX+tVg9QFifrcwUEY9SuiqKC96uKwTEbj7Aeh96AZ0P6FQ@mail.gmail.com \
--to=jzern-at-google.com@ffmpeg.org \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git