[MPlayer-dev-eng] DirectShow question

Georgi Petrov gogothebee at gmail.com
Wed Feb 16 10:37:23 CET 2011


On Wed, Feb 16, 2011 at 10:36 AM, Georgi Petrov <gogothebee at gmail.com> wrote:
> Hello,
>
> I see that MPlayer provides some kind of Win32 DS loader interface,
> but I'm not sure how to use it. My purpose is to build a DS graph (I'm
> learning how right now, but I'm lost), which contains only one
> "element" - the EVR renderer with available input pin, where I can
> feed it with raw frames. I see that MPlayer has the needed
> infrastructure, but I'm not sure how it works. The documentation is
> incomplete.
>
> I hope that the provided code can act as I want it to, because I
> believe that until now it is used only to load a DS filter in the form
> of video/audio stream decoder. My purpose is to use the decoders from
> ffmpeg, but output to a DS renderer (EVR).
>
> Once EVR works as a general renderer with any codec (and I'm really
> close), I will connect a DXVA compatible ffmpeg decoder at its input
> pin.
>
> Any help will be appreciated.
>

I think I understand the situation a little bit more now. MPlayer's DS
capabilities are limited towards supporting DS filters (decoders) when
an external binary DS filter library (DLL) is loaded. It emulates most
COM calls, which the DLL may try calling.

This is not what I'm looking for.

When I want to use EVR as a DS renderer, I guess I will have to get
CoInitialize address with LoadLibrary from the Windows DLL, call it,
then get all functions addresses I need with LoadLibrary and use them
to initialize EVR as shown in the Windows SDK example. Once this is
working, I will have the input pin ready for raw data and I will be
able to connect it to libvo's output.

Is this correct?


More information about the MPlayer-dev-eng mailing list