Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Anton Khirnov <anton@khirnov.net>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH 0/7] Container level frame cropping parameters
Date: Tue, 10 Oct 2023 14:12:32 +0200
Message-ID: <169693995263.6638.15354508532639422601@lain.khirnov.net> (raw)
In-Reply-To: <ec640652-c5a7-418e-b42e-9969c4a5b753@gmail.com>

Quoting James Almer (2023-10-10 13:58:00)
> On 10/10/2023 8:54 AM, Anton Khirnov wrote:
> > Quoting James Almer (2023-10-10 13:44:19)
> >> On 10/10/2023 8:17 AM, Anton Khirnov wrote:
> >>> Quoting James Almer (2023-10-07 18:24:56)
> >>>> This is a simple set to add support to stream wide, container level cropping
> >>>> parameters, as featured in formats like Matroska and ISOBMFF. It's needed for
> >>>> things like AV1 streams generated by certain hardware encoders that produce
> >>>> dimension aligned output, and unlike H26x, can't export cropping info within
> >>>> the bitstream.
> >>>> In this set i add the packet side data type, mux and demux support to Matroska,
> >>>> and handling code to ffmpeg and ffplay. Missing is support for clap boxes in
> >>>> ISOBMFF, and exporting the relevant side data from encoders like AMF.
> >>>>
> >>>> It's a rebased and updated version to the set i sent a month ago.
> >>>
> >>> Why is there no lavc-decoder handling? I would expect cropping side data
> >>> submitted to lavc to be somehow propagated to decoded frames.
> >>> Though there is a question of how to combine side data with the
> >>> codec-level cropping.
> >>
> >> I thought about adding lavc support alongside the CLI handling, yeah.
> >> And it should be a matter of adding the values to the existing ones in
> >> frame->crop_* as exported by decoders, which av_frame_apply_cropping()
> >> will then handle.
> >>
> >> And the reason i add support to the CLI by including a filter instead of
> >> leaving it up to lavc is that av_frame_apply_cropping() may not do exact
> >> cropping if AV_CODEC_FLAG_UNALIGNED is not set.
> > 
> > I intend to have the CLI always set AVCodecContext.apply_cropping=0 and
> > have it handled by lavfi for this exact reason, just didn't get to
> > actually doing it yet. Feel free and welcome to do it yourself.
> 
> The cropping filter doesn't look at the frame cropping fields, though. 
> It in fact exports cropping into them if you pass it hw frames. It only 
> looks at input arguments. So it doesn't seem like that can be done 
> without changing the filter.

I mean ffmpeg CLI would look at the frame cropping fields and insert the
crop filter accordingly, as it does for other bits of metadata.

-- 
Anton Khirnov
_______________________________________________
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".

      reply	other threads:[~2023-10-10 12:12 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-07 16:24 James Almer
2023-10-07 16:24 ` [FFmpeg-devel] [PATCH 1/7] avcodec/packet: add a decoded frame cropping side data type James Almer
2023-10-10 11:30   ` Andreas Rheinhardt
2023-10-07 16:24 ` [FFmpeg-devel] [PATCH 2/7] avformat/dump: print Frame Cropping side data info James Almer
2023-10-10 11:03   ` Anton Khirnov
2023-10-07 16:24 ` [FFmpeg-devel] [PATCH 3/7] avformat/matroskadec: export cropping values James Almer
2023-10-07 16:25 ` [FFmpeg-devel] [PATCH 4/7] avformat/avformat: add a flag to signal muxers that support storing " James Almer
2023-10-10 11:09   ` Anton Khirnov
2023-10-10 11:13     ` James Almer
2023-10-10 11:16       ` Anton Khirnov
2023-10-10 11:21         ` James Almer
2023-10-10 11:28           ` Anton Khirnov
2023-10-07 16:25 ` [FFmpeg-devel] [PATCH 5/7] avformat/matroskaenc: support writing " James Almer
2023-10-07 16:25 ` [FFmpeg-devel] [PATCH 6/7] fftools/ffmpeg: support applying container level cropping James Almer
2023-10-10 11:13   ` Anton Khirnov
2023-10-07 16:25 ` [FFmpeg-devel] [PATCH 7/7] fftools/ffplay: " James Almer
2024-01-17 18:39   ` Dmitrii Ovchinnikov
2023-10-10 11:17 ` [FFmpeg-devel] [PATCH 0/7] Container level frame cropping parameters Anton Khirnov
2023-10-10 11:44   ` James Almer
2023-10-10 11:54     ` Anton Khirnov
2023-10-10 11:58       ` James Almer
2023-10-10 12:12         ` Anton Khirnov [this message]

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=169693995263.6638.15354508532639422601@lain.khirnov.net \
    --to=anton@khirnov.net \
    --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