[wdmaudiodev] Re: SysFx DTM failure: - ValidateDefaultAPOFormat Documentation

  • From: Dibyendu Nandy <dnandy@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Mon, 6 Apr 2009 11:36:14 -0700 (PDT)

Hi Tim,

DebugView information is from our SysFx. However, the request for the input 
format is coming from the DTM test infrastructure.

Did not realize that I was getting invalid inFormat.dwValidBitsPerSample: 32 
relative to the FormatTag. This information is directly from DebugView and so 
yes this information is contradictory to the format tag. 


 
db
dnandy@xxxxxxxxx




________________________________
From: Tim Roberts <timr@xxxxxxxxx>
To: wdmaudiodev@xxxxxxxxxxxxx
Sent: Monday, April 6, 2009 12:53:19 PM
Subject: [wdmaudiodev] Re: SysFx DTM failure: - ValidateDefaultAPOFormat 
Documentation

Dibyendu Nandy wrote: 
Hello,

I am trying to debug a DTM failure for a capture SysFx. The
SysFx works as expected in normal operation and functionally
error-free. It is only failing in DTM testing.

The DTM log indicates the following, after stripping out the
SysFx algorithms and leaving just the SysFx APO framework in place.

Task
Result Status Process
Exit Status Start
Time End Time 
Failed -2147220479 4/6/2009
10:22:27 AM 4/6/2009
10:23:22 AM 
Pass Fail Not Run Not
Applicable 
0 1 0 0 
  
# Message
Time Source Machine
Name 
1
4/6/2009 11:22:43 AM Execution Agent TEST_VISTA32
-2147220479 is 0x80040401, but I don't see any reasonable definitions
that apply here.


 
My
question is why does ValidateDefaultAPOFormat fail on this requested
format and how should this case be handled. 
Any input or a pointer to documentation
about ValidateDefaultAPOFormat would be much appreciated.

Extract from DebugView log:
000002961.84247351[1644] LFX |
IsInputFormatSupported() Call
000002971.84253693[1644] LFX |
ValidateDefaultAPOFormat hrInput 1
00000298
1.84258723[1644] LFX | ----------------
REQUESTED FORMAT ----------------
000002991.84262025[1644] LFX |
        inFormat.dwSamplesPerFrame: 2
000003001.84267926[1644] LFX |
inFormat.dwBytesPerSampleContainer: 4
000003011.84272802[1644] LFX |
     inFormat.dwValidBitsPerSample: 32
000003021.84278846[1644] LFX |
         inFormat.fFramesPerSecond: 48000.000000
000003031.84283817[1644] LFX |
            inFormat.dwChannelMask: 0
000003041.84293592[1644] LFX |
                         FormatTag: 1
000003051.84300983[1644] LFX |
---------------- CaptureWI ----------------
000003061.84309876[1644] LFX |
          m_CaptureWI.WF.Format.wFormatTag: 1
000003071.84314847[1644] LFX |
           m_CaptureWI.WF.Format.nChannels: 2
00000308
1.84320951[1644] LFX |       m_CaptureWI.WF.Format.nSamplesPerSec: 48000
000003091.84325910[1644] LFX |
     m_CaptureWI.WF.Format.nAvgBytesPerSec: 192000
000003101.84331095[1644] LFX |
         m_CaptureWI.WF.Format.nBlockAlign: 4
000003111.84336054[1644] LFX |
      m_CaptureWI.WF.Format.wBitsPerSample: 16
000003121.84341133[1644] LFX |
              m_CaptureWI.WF.Format.cbSize: 0
000003131.84346080[1644] LFX | m_CaptureWI.WF.Samples.wValidBitsPerSample: 32
000003141.84354424[1644] LFX |
              m_CaptureWI.WF.dwChannelMask: 3
000003151.84359348[1644] LFX |
               m_CaptureWI.SamplesPerFrame: 480
This format information is a bit schizophrenic.  The WAVEFORMATEX
information seems to imply PCM 16-bit stereo at 48kHz, which would have
nBlockAlign==4, but in that case wValidBitsPerSample cannot be 32.  It
must be 16.  Is this information that your SYSFX is echoing?

-- 
Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.

Other related posts: