From: "Dong, Ruijing via ffmpeg-devel" <ffmpeg-devel@ffmpeg.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Cc: "Dong, Ruijing" <Ruijing.Dong@amd.com>
Subject: Re: [FFmpeg-devel] [PATCH v2 00/15] YUV colorspace filter negotiation
Date: Thu, 4 Jan 2024 19:32:35 +0000
Message-ID: <SJ1PR12MB61948E3EEE15C1A71DD6ADD995672@SJ1PR12MB6194.namprd12.prod.outlook.com> (raw)
In-Reply-To: <20231231135042.GB19892@haasn.xyz>
[AMD Official Use Only - General]
I found out this change caused page fault as well.
--------
8c7934f73ab6c568acaa47c821a6833f9145fdbb is the first bad commit
commit 8c7934f73ab6c568acaa47c821a6833f9145fdbb
Author: Niklas Haas <git@haasn.dev>
Date: Sun Dec 31 13:35:03 2023 -0800
avfilter: add negotiation API for color space/range
Motivated by YUVJ removal. This change will allow full negotiation
between color ranges and matrices as needed. By default, all ranges and
matrices are marked as supported.
Because grayscale formats are currently handled very inconsistently (and
in particular, assumed as forced full-range by swscale), we exclude them
from negotiation altogether for the time being, to get this API merged.
After filter negotiation is available, we can relax the
grayscale-is-forced-jpeg restriction again, when it will be more
feasible to do so without breaking a million test cases.
Note that this commit updates one FATE test as a consequence of the
sanity fallback for non-YUV formats. In particular, the test case now
writes rgb24(pc, gbr/unspecified/unspecified) to the matroska file,
instead of rgb24(unspecified/unspecified/unspecified) as before.
doc/APIchanges | 3 +
libavfilter/avfilter.c | 17 ++++-
libavfilter/avfilter.h | 28 +++++++
libavfilter/avfiltergraph.c | 173 +++++++++++++++++++++++++++++++++++++++++++-
libavfilter/formats.c | 121 +++++++++++++++++++++++++++++++
libavfilter/formats.h | 54 ++++++++++++++
libavfilter/internal.h | 6 ++
libavfilter/vaapi_vpp.c | 4 +
libavfilter/version.h | 4 +-
libavfilter/video.c | 2 +
tests/ref/fate/shortest-sub | 4 +-
11 files changed, 406 insertions(+), 10 deletions(-)
ffmpeg -v trace -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -i ./example_720p30.y4m -vf 'format=nv12|vaapi, hwupload' -c:v h264_vaapi ./out_720p30.264 -y
Successfully opened the file.
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (h264_vaapi))
[vost#0:0/h264_vaapi @ 0x55a86a145c70] Starting thread...
[vf#0:0 @ 0x55a86a104290] Starting thread...
[vist#0:0/rawvideo @ 0x55a86a105cc0] Starting thread...
[in#0/yuv4mpegpipe @ 0x55a86a11d250] Starting thread...
Press [q] to stop, [?] for help
[rawvideo @ 0x55a86a144d40] PACKET SIZE: 1382400, STRIDE: 1920
[AVFilterGraph @ 0x7fa5e0000ff0] Setting 'pix_fmts' to value 'nv12|vaapi'
detected 24 logical cores
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] Setting 'video_size' to value '1280x720'
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] Setting 'time_base' to value '1/30'
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] Setting 'colorspace' to value 'unknown'
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] Setting 'range' to value 'unknown'
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] Setting 'frame_rate' to value '30/1'
[rawvideo @ 0x55a86a144d40] PACKET SIZE: 1382400, STRIDE: 1920
[graph 0 input from stream 0:0 @ 0x7fa5e0003ab0] w:1280 h:720 pixfmt:yuv420p tb:1/30 fr:30/1 sar:0/1 csp:unknown range:unknown
[format @ 0x7fa5e0004390] Setting 'pix_fmts' to value 'vaapi'
[auto_scale_0 @ 0x7fa5e00055d0] w:iw h:ih flags:'' interl:0
[Parsed_format_0 @ 0x7fa5e0003450] auto-inserting filter 'auto_scale_0' between the filter 'graph 0 input from stream 0:0' and the filter 'Parsed_format_0'
[AVFilterGraph @ 0x7fa5e0000ff0] query_formats: 5 queried, 9 merged, 3 already done, 0 delayed
Segmentation fault (core dumped)
--------
-----Original Message-----
From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of Niklas Haas
Sent: Sunday, December 31, 2023 4:51 PM
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH v2 00/15] YUV colorspace filter negotiation
On Sun, 24 Dec 2023 10:35:22 -0800 Niklas Haas <ffmpeg@haasn.xyz> wrote:
> On Wed, 13 Dec 2023 14:11:57 +0100 Niklas Haas <ffmpeg@haasn.xyz> wrote:
> > Split off from my YUVJ removal series. This implements all of the
> > libavfilter changes needed to fully deprecate YUVJ, but does not yet
> > remove YUVJ, nor add an AVCodec API for advertising colorspace support.
> >
> > Update includes all of the feedback that was brought up by Anton.
> > the major change from v1 is that YUV metadata configured on a link
> > is no longer strictly required to be consistent with the frames,
> > simply to avoid breaking users that don't set this link metadata.
> > Effectively, this allows us to have a grace period where the field
> > functions more like a hint than an authoritative field.
>
> Ping, any further feedback? If not, I will merge this sometime after Christmas.
Merged as 1b0ca477..44a33fccd
_______________________________________________
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".
_______________________________________________
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".
prev parent reply other threads:[~2024-01-04 19:32 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-13 13:11 Niklas Haas
2023-12-13 13:11 ` [FFmpeg-devel] [PATCH v2 01/15] avfilter/formats: document ff_default_query_formats Niklas Haas
2023-12-13 13:11 ` [FFmpeg-devel] [PATCH v2 02/15] avfilter: always call ff_default_query_formats Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 03/15] avfilter: add negotiation API for color space/range Niklas Haas
2023-12-14 3:09 ` Michael Niedermayer
2023-12-14 14:09 ` Niklas Haas
2023-12-14 14:39 ` [FFmpeg-devel] [PATCH] avfilter/formats: set audio fmt lists for vaf filters Niklas Haas
2023-12-14 14:40 ` Niklas Haas
2023-12-14 19:18 ` Michael Niedermayer
2023-12-19 15:03 ` Nicolas George
2024-01-03 3:04 ` [FFmpeg-devel] [PATCH v2 03/15] avfilter: add negotiation API for color space/range Xiang, Haihao
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 04/15] fftools/ffmpeg_filter: don't clear buffersrc params Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 05/15] avfilter/buffersrc: add color_space/range parameters Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 06/15] fftools/ffmpeg_filter: configure buffersrc with csp/range Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 07/15] vf_scale: use colorspace negotiation API Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 08/15] avfilter/vf_zscale: remove unused variables Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 09/15] avfilter/vf_zscale: switch to colorspace negotiation API Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 10/15] avfilter/vf_libplacebo: don't force dovi frames to bt.2020-ncl Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 11/15] avfilter/vf_libplacebo: switch to colorspace negotiation API Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 12/15] avfilter/buffersink: add color space/range accessors Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 13/15] avfilter/vf_format: re-use AVFilterFormats for pix_fmt parsing Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 14/15] avfilter/vf_format: add color_ranges/spaces Niklas Haas
2023-12-13 13:12 ` [FFmpeg-devel] [PATCH v2 15/15] avfilter/vf_format: allow empty pix_fmts list Niklas Haas
2023-12-24 18:35 ` [FFmpeg-devel] [PATCH v2 00/15] YUV colorspace filter negotiation Niklas Haas
2023-12-31 21:50 ` Niklas Haas
2024-01-04 19:32 ` Dong, Ruijing via ffmpeg-devel [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=SJ1PR12MB61948E3EEE15C1A71DD6ADD995672@SJ1PR12MB6194.namprd12.prod.outlook.com \
--to=ffmpeg-devel@ffmpeg.org \
--cc=Ruijing.Dong@amd.com \
/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