On Mon, 24 Mar 2014 10:22:13 +0100, Rémi Denis-Courmont <[email protected]> wrote: > On Mon, 24 Mar 2014 10:09:45 +0100, Luca Barbato <[email protected]> > wrote: > > On 24/03/14 09:31, Rémi Denis-Courmont wrote: > >> On Mon, 24 Mar 2014 06:09:58 +0100, Luca Barbato <[email protected]> > >> wrote: > >>>> no .log2_chroma_w/h? > >>>> > >>> > >>> Monsieur de Lapalice states: > >>> "Opaque pixel formats are opaque" > >>> > >>> I'll add a note about it in the wiki soon. > >> > >> Then again, the current hardware surface pixel formats are all 4:2:0 > >> 8-bits YUV, aren't they? > > > > In case of VDA and VT it could be anything from UYVY422 > > Last I checked, libavcodec did not support hardware acceleration for > anything other than 4:2:0 - just looking at the pixel format lists... > Anyway, is there even *real* hardware slice-level decoder that supports > 4:2:2? As far as I know, hardware video acceleration frameworks support > 4:2:2 for post-processing and rendering, not (really yet) for decoding. >
Just because we do not currently support them does not strike me as a good reason to limit our API so we _cannot_ support them in the future. > > to YUV420Planar to ... > > There are several cases whereby the application needs to know the > underlying type of a surface: > 1) A function is the acceleration framework requests it as a parameter. > 2) The application wants to copy the surface content back to main memory. > 3) The application wants to show the chroma sampling as meta-data. > 4) The application exports the surface via interoperability (e.g. to > OpenGL). > In all the current cases other than new VDA with magic wrappers, the application explicitly chooses the underlying format it will use. In all the current cases the application can call some function to get the underlying format. So I really don't see what would be the advantage in restricting the API. -- Anton Khirnov _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
