[wdmaudiodev] Re: 1394 circular buffers

  • From: Mathieu Routhier <MRouthier@xxxxxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Mon, 31 Mar 2003 10:11:26 -0500

Oh yes, of course, I think that post was on the ntdev mailing list.  Sorry.

But these are some problems I have encountered:

- inverted callbacks.  The callbacks for my isoch descriptors are sometimes
being called in the wrong order.

- problems at high speed.  I can't really testify with that one but we've
had problems streaming isoch at around 100Mbps.  We've fixed that and the
only significant thing that was changed was the circular buffers.

Not only did I experience those problems but I was told that Microsoft has
admitted there was something broken in the circular buffers and simply
recommended not to use them.

Mathieu Routhier

-----Original Message-----
From: BlazeAudio Developer [mailto:developer@xxxxxxxxxxxxxx] 
Sent: Friday, March 28, 2003 8:11 PM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Why windows Me is different from Win98 & Wi ndows
2K/XP

 Mathieu,

I cannot locate that post from Bill McKenzie.

I have been using them quite successfully, for quite some time now.

What is the nature of the problem?

Thanks.
Devendra.

At 05:42 AM 3/27/2003, Mathieu Routhier wrote:


Watch out!!

The circular buffers in the 1394 drivers are broken, as Bill McKenzie
pointed out in a fairly recent post.  I can confirm that there is really a
problem with them, even in XP SP1.  Actually, you will notice that the flag
is not documented anymore in the DDK...

Mathieu Routhier

-----Original Message-----
From: BlazeAudio Developer [mailto:developer@xxxxxxxxxxxxxx[1]] 
Sent: Wednesday, March 26, 2003 6:12 PM
To: wdmaudiodev@xxxxxxxxxxxxx; wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Why windows Me is different from Win98 &Windows
2K/XP

 Perhaps DJ can provide more detailed information, but I'm suspecting that
the USB Audio Driver is writing the data in the buffers *after* it submits
the buffers to the USBD.

Or could it be possible that the USBD now supports "cyclic" isoch. buffers
(like the 1394.sys does) allowing a client to send a request once, and then
keep on refilling the same buffers?

Thanks.
Devendra.

At 05:32 PM 3/24/2003, Srinivasa Deevi wrote:


Hi all

 I have to modify the USB data that is coming from
 microsoft USB audio driver and convert to different
 format before sending to our device. The concept
works
 fine in Windows 98 and Windows 2K, XP with out any
 problem . In case of windows Me , when the Transfer
 buffer of URB request contains Zeros always . If I
 don't touch the data buffer in URB then I can see
some
 data coming out of Iso pipe . And I don't see any
problem when I am sending the data up through Iso IN
pipe. The problem occurs only on Iso OUT pipe .


Thinking that it could be related to "realtime "
mixing capabilities of WinMe, I checked for all the
IOCTLs that are coming for USB audio . But I could
never find any request that is related to "real time"
as shown below.

"
This indeed is happening because of the "realtime"
negotiation that happens
between kmixer and usbaudio. To circumvent this
behavior, you should fail
the property KSPROPERTY_RTAUDIO_GETPOSITIONFUNCTION in
the property set
KSPROPSETID_RtAudio.

#define STATIC_KSPROPSETID_RtAudio\
0xa855a48c, 0x2f78, 0x4729, 0x90, 0x51, 0x19, 0x68,
0x74, 0x6b, 0x9e,
0xef
DEFINE_GUIDSTRUCT("A855A48C-2F78-4729-9051-1968746B9EEF",
KSPROPSETID_RtAudio);
#define KSPROPSETID_RtAudio
DEFINE_GUIDNAMED(KSPROPSETID_RtAudio)

typedef enum {
KSPROPERTY_RTAUDIO_GETPOSITIONFUNCTION
} KSPROPERTY_RTAUDIO;

This is a private interface between kmixer and
usbaudio, there is no
guarantees that this won't change in the future.
Please only override this
functionality in extreme cases. Without this
interface, the performance of
usbaudio is severely impacted."


Am I missing something here or where should I check
exactly check or modify the real time settings for
Windows me .


thanks in advance
sri.


__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!
http://platinum.yahoo.com[1[2]]
******************

WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx[2[3]]
Subscribe:   
mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe[3[4]]
Unsubscribe:
mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe[4[5]]
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx[5[6]]

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.de/[6[7]] 

--- Links ---
   1 http://platinum.yahoo.com/[8]
   2 mailto:wdmaudiodev@xxxxxxxxxxxxx[9]
   3 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=subscribe[10]
   4 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=unsubscribe[11]
   5 mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx[12]
   6 http://www.wdmaudiodev.de/[13]
******************

WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx[14]
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe[15]
Unsubscribe:
mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe[16]
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx[17]

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.de/[18]
******************

WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx[19]
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe[20]
Unsubscribe:
mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe[21]
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx[22]

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.de/[23] 

--- Links ---
   1 mailto:developer@xxxxxxxxxxxxxx
   2 http://platinum.yahoo.com[1/
   3 mailto:wdmaudiodev@xxxxxxxxxxxxx%5B2
   4 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=subscribe%5B3
   5 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=unsubscribe%5B4
   6 mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx%5B5
   7 http://www.wdmaudiodev.de/%5B6
   8 http://platinum.yahoo.com/
   9 mailto:wdmaudiodev@xxxxxxxxxxxxx
  10 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=subscribe
  11 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=unsubscribe
  12 mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx
  13 http://www.wdmaudiodev.de/
  14 mailto:wdmaudiodev@xxxxxxxxxxxxx
  15 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=subscribe
  16 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=unsubscribe
  17 mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx
  18 http://www.wdmaudiodev.de/
  19 mailto:wdmaudiodev@xxxxxxxxxxxxx
  20 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=subscribe
  21 mailto:wdmaudiodev-request@xxxxxxxxxxxxx%3Fsubject=unsubscribe
  22 mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx
  23 http://www.wdmaudiodev.de/
******************

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.de/
******************

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.de/

Other related posts:

  • » [wdmaudiodev] Re: 1394 circular buffers