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

Rich Felker dalias at aerifal.cx
Wed Jun 28 03:27:39 CEST 2006


On Tue, Jun 27, 2006 at 11:49:42PM +0200, Johannes Gajdosik wrote:
> Dear developers,
> 
> Please excuse my jumping in with what might is a primitive question for you.
> 
> Some people want to project fisheye movies onto the inside of their domes.
> This can eighter be done with a fisheye projector - which is quite expensive -
> or with an ordinary projector, that projects its image onto a
> spheric security mirror which in turn reflects the image onto the whole dome.
> Of course in this case the image must be pre-distorted,
> so that it looks correct when distorted by the spheric mirror.
> This can be easily done in realtime by means of OpenGl.
> 
> For the stellarium project (www.stellarium.org) I have already
> developed the so called spheric-mirror distorion, which is available
> since version 0.8.0, and which performs exactly this task
> for the stellarium fisheye image.
> 
> Now I would like to extend the mplayer gl output driver, so that it
> can also optionally distort a fisheye video for projection in spheric
> mirror planetariums.
> 
> I am not quite sure how to proceed.
> 
> 1) should I use gl output driver or gl2 output driver?
>    Is one of them obsolete? I would prefer ordinary gl,
>    because it is simpler.
> 
> 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?
> 
> 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?
> 
> Best of all would be for me send my patch(es) to Arpad Gereoffy
> - or whoever is responsible for the gl video output driver -
> who would have a look at it, and could finally commit it to the source tree.

As much as GL might be able to accelerate this, filtering features
really do not belong in the VO driver but rather as vf modules. Could
you write a vf module that would support this with any video out?
Performance may suffer somewhat but I assume that users with such
exotic equipment will have sufficiently powerful machines to handle
it, and it's certainly much cleaner to implement as a filter than as a
hack in the VO driver.

Rich




More information about the MPlayer-dev-eng mailing list