DirectX plugins

Xavier Marchesini xav at via.ecp.fr
Fri May 18 04:53:13 CEST 2001


On Fri, May 18, 2001, Gildas Bazin wrote:
> 
> Hi everybody,
> 
> You will find attached to this mail a patch to include DirectX video and
> audio support.
> When I started the Win32 port, I did not intend to program any directx
> plugins because SDL support was already in. Unfortunately I haven't been
> able to make the overlay work correctly with SDL under win32, so after long
> hours spent on this issue I decided that I would be better off programming
> a directx plugin (and this might also help me to solve the SDL problem).

Thank you very much for the patch. At the moment, a whole new video
output is being coded by Samuel Hocevar (<sam at via.ecp.fr>), which will
have a lot a new features. I'm currently working on a DirectX (in fact,
DirectDraw with DDOverlay Surface) plugin that will adapt to that new
video output. Be sure your code will be very appreciated and used.

> Basically the video plugin is a DirectDraw plugin and for now it is only
> working if you have a video card with YUV hardware overlay (which I beleive
> most people have). 

As DirectX doesn't emulate overlay, I think we will check the hardware
capabilities of the video card, and, depending on the answer, we will
choose to use DirectDraw or SDL. 

The main problem is, as you said it, the fact that SDL under Win32 is
quite buggy, and I haven't the time now to try to fix those bugs.

> And it's not yet optimized (no double buffering, and
> we'll also have to had Shane Harper's optimizations for YUV overlay).

Why should we ? I think DirectX's handling of the YUV overlay is quite
good, and the performances would be sufficient under Windows.

> The audio plugin is also functionnal but sometime the sound doesn't start
> at the same time as the video.

The DirectX Audio Output is at this moment under the responsability of
Boris Dorès <babal at via.ecp.fr> ; I think he'll be really keen on your
plug-in.

> Another thing: if you want these plugins to work you also have to include
> my former patch (hack) for the video_output initialisation. ( on Windows
> you have to create the video window in the same thread you will poll the
> event otherwise you won't receive any of them ).
> 
> PS: I also included another patch which correct Win32 compilation problems
> and which also includes the video_output initialisation patch.
> PPS: I will also put a binary version of the VLC compiled with these
> patches on the ftp site. (Because I know it's not an easy task to compile
> it for Win32 (well it is but you need to have mingw32 install whith the
> DirectX and SDL stuff)
> PPPS: all the files (except the patch) where in directory named "windx"
> under "plugins" on my machine.

We are at the moment trying to make a version of the VLC compiling under
windows, with the Bcc compiler ; we'll have then to modify your patches.

I don't think the changes you submitted will be integrated in the CVS
right now, because of the new video output ; but your code will really
help me in the task of writing that new plug-in.

Thank you again for your patches.

For the VideoLAN Team, 

-- 
Xavier MARCHESINI





More information about the vlc-devel mailing list