[MPlayer-dev-eng] gl & distorted fisheye for dome projection

Johannes Gajdosik johannes.gajdosik at gmx.at
Wed Jun 28 22:31:13 CEST 2006


Hello Reimer,

thanks for the reply.

> > 2) there are a lot of parameters needed for parameterization
> >    of the projection geometry (dome radium,mirror radius, mirror position,
> >    projector position,...)
> >    Can I just extend the existing list of parameters with my own?
> 
> No, at least I won't accept such special purpose code in vo_gl. If you
> go with my suggestion below, you can add these as PARAMs in the vertex
> program code (which will be a seperate file).
> 
> > 3) I would like that my work becomes part of the official mplayer source,
> >    so that it is present in future releases. How should I proceed?
> 
> IMHO, implement support for vertex program in the vo, thus not
> introducing such special-purpose code into vo_gl. That means you will
> have to e.g. extend glDrawTex to use more than one quad.

I fully understand that glDrawTex must be extended when I need not just 1 quad
but perhaps 4000 quads for smooth texture mapping. In fact glDrawTex is the only
thing that must be changed.

The problem is how the information about the screen/texture coordinates
as well as the color(brightness) of the 4000 quads is stored and given
to glDrawTex. At least two approaches are possible:

1) store this information in a file that is read upon initialization.
   This is done by the mirrordome people (spaceworks at swineburne) who have done it
   to the apple quicktime player as well as to stellarium and perhaps other programs,
   and sell the derived products without giving the sources to the public.
2) reduce the necessary information to a couple of geometry parameters from which the
   large amount of information is generated at initialization time.
   This is what I have done for stellarium, and what I planned to do for mplayer, too.

Now you say that I cannot give the parameters as options to the gl vo module.
The unclean solution would be to check for the existance of a given file
which contains the vertex information, just like approach 1). If the file
is there, apply the spheric mirror distortion (which the swineborene people
call "warping"). But I would be ashamed of implementing such a shit.

Could you please explain more about what you call the "vertex program code"
and how this can help passing the parameters.

And something else: Shall I write directly to you for further
discussion and instructions, or shall I write to the list?

Yours,
Johannes



More information about the MPlayer-dev-eng mailing list