On Thu, Oct 3, 2013 at 9:42 AM, Vittorio Giovara <[email protected]> wrote: > On Thu, Oct 3, 2013 at 8:54 AM, Anton Khirnov <[email protected]> wrote: >> >> On Wed, 2 Oct 2013 16:16:58 +0200, Vittorio Giovara >> <[email protected]> wrote: >>> On Wed, Oct 2, 2013 at 4:00 PM, Anton Khirnov <[email protected]> wrote: >>> > >>> > On Wed, 2 Oct 2013 10:21:33 +0400, Kirill Gavrilov <[email protected]> >>> > wrote: >>> >> On Wed, Oct 2, 2013 at 9:35 AM, Anton Khirnov <[email protected]> wrote: >>> >> >>> >> > > + >>> >> > > +/* How views are packed within the frame or container*/ >>> >> > > +enum AVStereo3DType { >>> >> > > + /** >>> >> > > + * Video is not stereoscopic >>> >> > > + */ >>> >> > > + AV_STEREO3D_NONE, >>> >> > > + >>> >> > > + /** >>> >> > > + * Video is not stereoscopic but metadata has to be there >>> >> > > + */ >>> >> > > + AV_STEREO3D_NOT_REALLY, >>> >> > >>> >> > Can't say I like the name. Does this thing even have to exist? Can't >>> >> > we use >>> >> > AV_STEREO3D_NONE for this? >>> >> >>> >> If I understand context correctly, AV_STEREO3D_NONE should be something >>> >> like AV_STEREO3D_UNDEFINED/AV_STEREO3D_UNKNOWN (which means that >>> >> file/frame >>> >> doesn't contain stereoscopic information at all, but apparently might >>> >> contain stereoscopic content in unknown format), and >>> >> AV_STEREO3D_NOT_REALLY >>> >> should be just AV_STEREO3D_NONE (which means the file contains >>> >> stereoscopic >>> >> tags). >>> >>> I like the idea. >>> I'm tempted to move _ANAGLYPH in that category as well since there is >>> no sane way of carrying it over as metadata. >>> Actually i'm undecided about moving it in a separate category or not, >>> i'm biased towards the not. >>> >>> > >>> > I don't quite see why would we need to explicitly signal that the file >>> > does not >>> > contain 3d metadata. We can just not set the frame metadata to the same >>> > effect. >>> >>> Then it'd be quite difficult to understand when a frame is clean (eg >>> no stereo metadata at all), >> >> no side data present >> >>> is a 2d frame between 2 s3d frames (eg stereo metadata saying '2d') >> >> side data saying '2d' is present > > That's what AV_STEREO3D_NOT_REALLY is for :) > >> >>>or it has s3d data in it (normal metadata). >> >> side data saying '3d' is present > > Anything but AV_STEREO3D_NOT_REALLY and AV_STEREO3D_NONE means that. > > However I can see your point that could be somewhat confusing, I'll > re-think something to accommodate more flexibility and future > compatibility.
Since the introduction of the .flags field in avframe I've been thinking of further simplify this enum by setting a AV_FRAME_IS_STEREO value and keep the AV_STEREO3D_2D. Checking whether a frame contains stereo3d side data or not should be simpler by checking .flags instead of iterating through the (possibly many) other side data. Also I'm willing to slightly simplify the struct by removing unnecessary fields (like anaglyph) and add them in the future when needed. Any opinions? Vittorio _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
