[wdmaudiodev] Re: avstream pin allocator framing requirements

  • From: Nick Dowell <nick@xxxxxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Tue, 20 Jun 2006 18:31:09 +0100


On 20 Jun 2006, at 18:07, Tim Roberts wrote:

Nick Dowell wrote:


I'm in the middle of writing my first avstream-based minidriver, and have been experimenting with the behaviour of everything. I'm confused, though, when it comes to the concept of allocator framing.

I gather from the DDK documentation that I should be able to declare a
KSALLOCATOR_FRAMING_EX struct and point to it in my pin descriptor,
and through it specify what frame sizes my pin's process dispatch can
accept.


DECLARE_SIMPLE_FRAMING_EX(PinFraming,
   STATIC_KS_TYPE_DONT_CARE,
   KSALLOCATOR_REQUIREMENTF_SYSTEM_MEMORY,
   1024,                    // Frames
   FILE_BYTE_ALIGNMENT,
   6,                       // MinFrameSize
   6                        // MaxFrameSize
);

Now with these requirements specified by my pin, I'd expect to be
given up to 1024 frames, each of 6 bytes in size, in one call to my
process dispatch. What I actually get passed is one frame 8192 bytes
long, clearly beyond the range I specified.


What sample did you start from? Several of the samples modify the
framing requirements on the fly using KsEdit when the actual pin format
is established.


Is this a source filter, or is there someone upstream?  If there is a
filter upstream from you, then it may be that your allocator is
involved.  You can be handed the frames they supply.

At the moment I'm only using the default allocator.

The pin in question is a sink, and I'm testing it using KsEdit's Wave File Source filter.

I'm getting the impression that it's the source pin which decides upon the framing requirements... is that right?

If so, is there any upper limit on the size of frames my sink pin has to be able to handle?


Thanks, Nick ******************

WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
Unsubscribe:  mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.com/

Other related posts: