Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH v2 00/12] encoder AVCodecContext configuration side data
@ 2023-04-11 21:20 Jan Ekström
  2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 01/12] avutil/frame: add AVFrameSideDataSet for passing sets of " Jan Ekström
                   ` (11 more replies)
  0 siblings, 12 replies; 19+ messages in thread
From: Jan Ekström @ 2023-04-11 21:20 UTC (permalink / raw)
  To: ffmpeg-devel

Differences to v1:
1. rebased on top of current master (ffmpeg_enc.c addition etc)
2. removal of a stray "private" word from commit message
   in the avctx side data set addition commit.

This patch set I've now been working for a while since I felt like it was weird
we couldn't pass through information such as static HDR metadata to encoders
from decoded input. This initial version adds the necessary framework, as well
as adds static HDR metadata support for libsvtav1, libx264 as well as libx265
wrappers.

An alternative to this would be to make encoders only properly initialize when
they receive the first AVFrame, but that seems to be a bigger, nastier change
than introducing an AVFrameSideDataSet in avctx as everything seems to
presume that extradata etc are available after opening the encoder.

Jan

Jan Ekström (12):
  avutil/frame: add AVFrameSideDataSet for passing sets of side data
  avutil/frame: split side data list wiping out to non-AVFrame function
  avutil/frame: add helper for clearing out side data sets
  avutil/frame: split side_data_from_buf to base and AVFrame func
  avutil/frame: add helper for adding side data to set
  avutil/frame: add helper for getting side data from set
  avutil/frame: add helper for extending a set of side data
  avcodec: add side data set to AVCodecContext
  ffmpeg: pass first video AVFrame's side data to encoder
  avcodec/libsvtav1: add support for writing out CLL and MDCV
  avcodec/libx264: add support for writing out CLL and MDCV
  avcodec/libx265: add support for writing out CLL and MDCV

 fftools/ffmpeg_enc.c   |  12 +++++
 libavcodec/avcodec.h   |   7 +++
 libavcodec/libsvtav1.c |  70 ++++++++++++++++++++++++++
 libavcodec/libx264.c   |  79 +++++++++++++++++++++++++++++
 libavcodec/libx265.c   |  82 ++++++++++++++++++++++++++++++
 libavcodec/options.c   |   1 +
 libavutil/frame.c      | 112 +++++++++++++++++++++++++++++++++--------
 libavutil/frame.h      |  49 ++++++++++++++++++
 8 files changed, 391 insertions(+), 21 deletions(-)

-- 
2.40.0

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

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2023-04-12  8:45 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-11 21:20 [FFmpeg-devel] [PATCH v2 00/12] encoder AVCodecContext configuration side data Jan Ekström
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 01/12] avutil/frame: add AVFrameSideDataSet for passing sets of " Jan Ekström
2023-04-12  8:29   ` Anton Khirnov
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 02/12] avutil/frame: split side data list wiping out to non-AVFrame function Jan Ekström
2023-04-12  8:21   ` Anton Khirnov
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 03/12] avutil/frame: add helper for clearing out side data sets Jan Ekström
2023-04-12  8:27   ` Anton Khirnov
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 04/12] avutil/frame: split side_data_from_buf to base and AVFrame func Jan Ekström
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 05/12] avutil/frame: add helper for adding side data to set Jan Ekström
2023-04-12  8:41   ` Anton Khirnov
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 06/12] avutil/frame: add helper for getting side data from set Jan Ekström
2023-04-12  8:43   ` Anton Khirnov
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 07/12] avutil/frame: add helper for extending a set of side data Jan Ekström
2023-04-12  8:45   ` Anton Khirnov
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 08/12] avcodec: add side data set to AVCodecContext Jan Ekström
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 09/12] ffmpeg: pass first video AVFrame's side data to encoder Jan Ekström
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 10/12] avcodec/libsvtav1: add support for writing out CLL and MDCV Jan Ekström
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 11/12] avcodec/libx264: " Jan Ekström
2023-04-11 21:20 ` [FFmpeg-devel] [PATCH v2 12/12] avcodec/libx265: " Jan Ekström

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