Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] Enhancement layers in FFmpeg
@ 2022-08-01 11:24 Niklas Haas
  2022-08-01 13:17 ` Soft Works
  2022-08-01 13:45 ` Hendrik Leppkes
  0 siblings, 2 replies; 5+ messages in thread
From: Niklas Haas @ 2022-08-01 11:24 UTC (permalink / raw)
  To: ffmpeg-devel

Hey,

We need to think about possible ways to implement reasonably-transparent
support for enhancement layers in FFmpeg. (SVC, Dolby Vision, ...).
There are more open questions than answers here.

From what I can tell, these are basically separate bitstreams that carry
some amount of auxiliary information needed to reconstruct the
high-quality bitstream. That is, they are not independent, but need to
be merged with the original bitstream somehow.

How do we architecturally fit this into FFmpeg? Do we define a new codec
ID for each (common/relevant) combination of base codec and enhancement
layer, e.g. HEVC+DoVi, H.264+SVC, ..., or do we transparently handle it
for the base codec ID and control it via a flag? Do the enhancement
layer packets already make their way to the codec, and if not, how do we
ensure that this is the case?

Can the decoder itself recursively initialize a sub-decoder for the
second bitstream? And if so, does the decoder apply the actual
transformation, or does it merely attach the EL data to the AVFrame
somehow in a way that can be used by further filters or end users?

(What about the case of Dolby Vision, which iirc requires handling the
DoVi RPU metadata before the EL can be applied? What about instances
where the user wants the DoVi/EL application to happen on GPU, e.g. via
libplacebo in mpv/vlc?)

How does this metadata need to be attached? A second AVFrame reference
inside the AVFrame? Raw data in a big side data struct?
_______________________________________________
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] 5+ messages in thread

end of thread, other threads:[~2022-08-01 14:26 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-01 11:24 [FFmpeg-devel] Enhancement layers in FFmpeg Niklas Haas
2022-08-01 13:17 ` Soft Works
2022-08-01 13:58   ` Niklas Haas
2022-08-01 14:26     ` Soft Works
2022-08-01 13:45 ` Hendrik Leppkes

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