On Thu, Apr 6, 2017 at 11:38 AM, wm4 <nfx...@googlemail.com> wrote: > On Thu, 6 Apr 2017 11:08:24 +0200 > Hendrik Leppkes <h.lepp...@gmail.com> wrote: > >> On Thu, Apr 6, 2017 at 11:01 AM, Steve Lhomme <rob...@gmail.com> wrote: >> > Hi, >> > >> > As I am progressing in proper HDR10 support in VLC, I am facing an >> > issue. The mastering (and lighting pending patch) metadata are set on >> > the AVFrame but not available to the ff_get_format() receiver. >> > >> > That means when we configure our vout and decoder we don't know if >> > it's going to have HDR metadata or not. >> > >> > Could we move the mastering (and lighting) metadata on the >> > AVCodecContext ? Or provide the metadata on the ff_get_format() call ? >> > >> > I CC'ed libav as they have opinions on possible API changes, even >> > though there is no mastering metadata support in there yet. >> >> >> I'm against polluting AVCodecContext with more random fields, and >> get_format is fixed API/ABI, we can't change that very easily. >> >> In general, this is per-frame metadata, which can appear or change >> with any given frame, without get_format being invoked again. You >> should probably just be able to have your output react to that once it >> receives it. > > +1 > > Also, get_format is not for such things - it's to allocate frames > _only_, and thus needs only size and pixfmt.
Yes, but for example if you're going to have stereo pictures you may need to setup your allocated textures a certain way. Also AVColorPrimaries are found in the mastering metadata are found in AVCodecContext, should the metadata write there instead ? > You should configure your vout based on the _decoded_ frame, not > get_format. > _______________________________________________ > libav-devel mailing list > libav-devel@libav.org > https://lists.libav.org/mailman/listinfo/libav-devel _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel