acmMetrics(0,ACM_METRIC_MAX_SIZE_FORMAT,&size)

Markus Stockhausen markus.stockhausen at collogia.de
Mon Oct 19 02:14:55 CDT 2009


Hi,

maybe someone with deeper ACM knowledge can help me out. If I understand
the above call correctly it should give the size of the largest
WAVEFORMATEX structure of any driver. This should be more or less the
maximum number of each second DWORD in the registry in the key Software
\Microsoft\AudioCompressionManager\DriverCache\<driver
name>\aFormatTagCache. In my Wine environment this gives me 50 because
of driver msacm.msadpcm ( ... 0x32 0x00 0x00 0x00 ...). 

According to the bug I'm currently inspecting I have the feeling that
in a Windows installation (even without additional acm drivers) this
value could be larger than registry may tell.

For that reason I ask if someone could run the attached testcase in an
native environment and could tell me if he can see a difference between
the result and the registry.

Thanks in advance.

Markus


--- a/dlls/msacm32/tests/msacm.c
+++ b/dlls/msacm32/tests/msacm.c
@@ -485,6 +485,9 @@ static void msacm_tests(void)
     if (winetest_interactive)
         trace("enabled drivers:\n");
 
+    rc = acmMetrics(0, ACM_METRIC_MAX_SIZE_FORMAT, &dwCount);
+    ok(1==0, "ACM_METRIC_MAX_SIZE_FORMAT=%u\n",dwCount);
+
     rc = acmDriverEnum(DriverEnumProc, 0, 0);
     ok(rc == MMSYSERR_NOERROR,
       "acmDriverEnum() failed, rc=%08x, should be 0x%08x\n",





More information about the wine-devel mailing list