DMO HELP!!! My DMO IMediaObject::ProcessOutput function is never called.

Discussion in 'Windows Media Player' started by grinbee, Apr 12, 2007.

  1. grinbee

    grinbee Guest

    I'm writing a DMO Decoder to be used in windows media player.
    Things are almost done...
    Media negotiation is fine and the player calls the ProcessInput()
    function well..
    but the WMP does not call the ProcessOutput() function at all.

    The function call sequence in my DMO that I see is called as you look
    like this:


    InternalAcceptingInput
    InternalFlush
    InternalAcceptingInput
    InternalProcessInput
    InternalGetOutputSizeInfo


    InternalAcceptingInput
    InternalFlush
    InternalAcceptingInput
    InternalProcessInput
    InternalGetOutputSizeInfo


    InternalAcceptingInput
    InternalFlush
    InternalAcceptingInput
    InternalProcessInput
    InternalGetOutputSizeInfo


    InternalAcceptingInput
    InternalFlush
    InternalAcceptingInput
    InternalProcessInput
    InternalGetOutputSizeInfo


    the media player calls ProcessInput() and Flush() repeatedly until
    the
    all video frames are exhausted.
    and then the player gets into deadlock.


    as i debugged,
    the player had retrieved all the frames in the loadded file and they
    had been passed into the ProcessInput() function.
    My DMO had been wrriten with the modified DMOSample source provided
    with DX9 SDK.


    I've tested also in Graph Editor and i found the DMO worked
    beautifully and fine.
    Why the ProcessOutput() function is not called...?


    Any ideas on what I need to do to get it to call the
    InternalProcessOutput function?


    Thanx in advance..


    Regards...
    MyeongJeong Park.
     
    grinbee, Apr 12, 2007
    #1
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.