AVSTream: Connecting HW Encoder -> HW Decoder filters...

Discussion in 'Windows Vista Drivers' started by WDD, Jul 29, 2004.

  1. WDD

    WDD Guest

    HI,


    I'm connecting a HW Encoder filter which provides MPEG2-PS, to a HW
    Decoder which takes as input MPEG2-PS.

    Filters connect, no problem.

    When I attampt to connect a CTransInPlaceFilter (which accepts MPEG2-PS
    on both input and output) the connection fails with 0x80040217.

    Any ideas?
     
    WDD, Jul 29, 2004
    #1
    1. Advertisements

  2. WDD

    WDD Guest

    Another note:


    A CTarnsInPlaceFilter has 2 pins, 1 input(CTransInPlaceInputPin) & 1
    output(CTransInPlaceOutputPin). The Input pin(CTransInPlaceInputPin)
    provides IMemInputPin Methods which means that filters connecting to
    this pin wil negotiate a PUSH transport. No problem, HW encoder connects
    to this pin fine.

    The output pin(CTransInPlaceOutputPin) on the CTransInPlaceFilter does
    NOT provide IAsyncReader interface, hence I would assume it would
    negotiate a PUSH model similar to its input pin.

    This connection from the CTransInPlaceOutputPin to the HW Decoder fails.

    WDD
     
    WDD, Jul 29, 2004
    #2
    1. Advertisements

  3. WDD

    Max Paklin Guest

    It might have something to do with kernel memory allocator or allocator
    properties not being able to travel from ring 0 up to user land and then
    again down to kernel. Can you try using regular transform filter (not
    in-place flavor) and see what happens?

    -- Max.
     
    Max Paklin, Jul 30, 2004
    #3
  4. WDD

    WDD Guest

    Has to do woth the KSPIN_COMMUNICATION value setup for the Decoder
    Descriptor.

    Setting it to KSPIN_COMMUNICATION_BOTH fixes the problem.
     
    WDD, Jul 30, 2004
    #4
    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.