[wdmaudiodev] Re: What is different from w2k to XP in the WaveOut/In API?

  • From: "Jeff Claar" <jclaar@xxxxxxxxxxxxxx>
  • To: <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Fri, 1 Aug 2003 15:06:28 -0700

No...it's WAVEOUTCAPS2 and WAVEINCAPS2 (not to mention MIDIINCAPS2, AUXCAPS2, 
etc). Look in the MSDN docs for the article "Extended Capabilities from a WDM 
Audio Driver" at:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/stream/hh/stream/pcdesign_4js7.asp

Jeff


----- Original Message ----- 
From: Uwe Kirst 
To: wdmaudiodev@xxxxxxxxxxxxx 
Sent: Friday, August 01, 2003 6:02 PM
Subject: [wdmaudiodev] Re: What is different from w2k to XP in the WaveOut/In 
API?


Hi Jeff, 
doe you mean WAVEOUTCAPSW / WAVEINCAPSW? I think the length should be 84 / 80 
Bytes, at least this is what I know from w2k. That corresponses with use of 
wide-characters. Does XP use 8-Bit characters or is there another extension I 
don't know? 
Uwe 
Jeff Claar schrieb: 

  Hi Uwe, Could you be receiving a WAVEOUTCAPS2 or WAVEINCAPS2 structure? You 
don't say what the length of the buffer is, but it sounds like that might be 
it, especially since this only happens on XP, which is the only OS that 
supports those structures. Jeff  
  ----- Original Message ----- 
  From: Uwe Kirst
  To: wdmaudiodev@xxxxxxxxxxxxxxxxx: Friday, August 01, 2003 5:29 PMSubject: 
[wdmaudiodev] What is different from w2k to XP in the WaveOut/In API?
   Hi, 
  because there are so many known kmixer bugs and limitation I started to 
  write a wrapper dll that bypasses the the kmixer. It implements the good 
  old mme Wave API and is based on the direct KS sample. My dll has the 
  following advantages: 
  -no additional latency introduced, because audio data is not copied. 
  -no format and sample rate conversations, audio data provided as it is. 
  -no 10/32 device limit. 
  -full 32 and 24 bit support (32/24 bit support has been removed in XP 
  (e.g.:samplitude plays 32 bit data in w2x, does not play in 32 bit in 
  XP)) 
  The dll works quite well in w2k, but I'm still having some trouble with 
  XP. That's why I'm asking for help. I'm having some strange effects 
  while debugging the dll under XP: 
  I see a lot of WODM_GETNUMDEVS, WIDM_GETNUMDEVS, WODM_GETDEVCAPS, 
  WIDM_GETDEVCAPS messages, more than I expect from the number of devices 
  I support. It seems that the system calls these messages in an more or 
  less endless loop. The WOM_GETDEVCAPS and WIDM_GETDEVCAPS have two 
  parameters: dwparam1, dwparam2. The first parameter is a pointer to the 
  memory that should be filled with the devicecaps. The second parameter 
  is the length of the devicecaps which should be 80 or 84 depending on 
  the direction. From the debugprints I can see that the second parameter 
  most of the time is not 80 or 84 but a number >> 84. If I copy the 
  devicecaps in that case, the application that uses the waveapi crashes. 
  The windows explorer or the messenger also crashes during installation 
  in that case. If I do not copy the devicecaps in that case the 
  devicename in the application is left blank (depending on the 
  application I use) or shows some other error message. I see also much 
  more blank lines or error message than devices I have installed. The 
  windows control panel shoes the correct number of devices and 
  devicenames. To be sure that all these effects does not have anything to 
  do with DirectKS I skipped DirectKS device enumeration and used constant 
  values for the number of devices and devicecaps structures. 
  Does anyone have a clue? 
  Thanks 
  Uwe 
    
    
    
    

  ****************** 

  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: