[FFmpeg-devel] XVMC Deathmatch

Diego Biurrun diego
Sat Feb 14 23:40:35 CET 2009


On Sat, Feb 14, 2009 at 11:30:02PM +0100, Michael Niedermayer wrote:
> On Sat, Feb 14, 2009 at 10:38:39PM +0100, Diego Biurrun wrote:
> > On Sat, Feb 14, 2009 at 04:53:01PM +0100, Michael Niedermayer wrote:
> > > 
> > > >    //these are not changed by the decoder!
> > > >    int  magic;
> > > 
> > > 3 points
> > > find and get rid of or rename fields to "ununsed123" all unused fields in this
> > > struct, dont break ABI!
> > 
> > All fields are used either in FFmpeg or MPlayer.
> > 
> > The following are unused in FFmpeg:
> > 
> >   int             mc_type;
> >   int             chroma_format;
> >   unsigned int    display_flags;
> >   int             state;
> >   void*           p_osd_target_surface_render;
> > 
> > But they are all used in libvo/vo_xvmc.c in MPlayer as can be seen by
> > trying to compile against an xvmc.h without those fields:
> > 
> > libvo/vo_xvmc.c: In function 'xvmc_draw_image':
> > libvo/vo_xvmc.c:378: error: 'struct xvmc_render_state' has no member named 'state'
> > libvo/vo_xvmc.c: In function 'config':
> > libvo/vo_xvmc.c:536: error: 'struct xvmc_render_state' has no member named 'mc_type'
> > libvo/vo_xvmc.c:538: error: 'struct xvmc_render_state' has no member named 'chroma_format'
> > libvo/vo_xvmc.c: In function 'draw_osd':
> > libvo/vo_xvmc.c:899: error: 'struct xvmc_render_state' has no member named 'display_flags'
> > libvo/vo_xvmc.c:899: error: 'struct xvmc_render_state' has no member named 'display_flags'
> > libvo/vo_xvmc.c:902: error: 'struct xvmc_render_state' has no member named 'state'
> > libvo/vo_xvmc.c:903: error: 'struct xvmc_render_state' has no member named 'state'
> > libvo/vo_xvmc.c:904: error: 'struct xvmc_render_state' has no member named 'p_osd_target_surface_render'
> > [...]
> > 
> > Does research give points? :)
> 
> no, you have to remove or rename these fields to unused* to get the points.

Well, I did do 

   int             mc_type;

-->

   int             unused1;

and FFmpeg compiles fine afterwards, but when I put that xvmc.h in my
MPlayer tree, I get the above compilation failure.

Thus my conclusion is that the field is not, as you claim, unused.
Am I missing something?

> am i allowed to give tips on how to solve such things?

This will likely result in more fixes :)

Diego




More information about the ffmpeg-devel mailing list