ACMDRVOPENDESC

See also ACMDM_STREAM_CLOSE, ACMDM_STREAM_CONVERT, ACMDM_STREAM_OPEN, ACMDM_STREAM_PREPARE, ACMDM_STREAM_RESET, ACMDM_STREAM_SIZE, ACMDM_STREAM_UNPREPARE, ACMDRVSTREAMHEADER, ACMDRVSTREAMINSTANCE, ACMDRVSTREAMSIZE


typedef struct {
    DWORD cbStruct;   
    FOURCC fccType;   
    FOURCC fccComp;   
    DWORD dwVersion;  
    DWORD dwFlags;    
    DWORD dwError;    
    LPCWSTR pszSectionName;
    LPCWSTR pszAliasName;
    DWORD   dnDevNode;
} ACMDRVOPENDESC;

Contains information needed by an Audio Compression Manager (ACM) driver when opened with a DRV_OPEN message. The lParam2 parameter of the acmDriverProc function will contain a pointer to this structure during the DRV_OPEN message.

cbStruct

Size, in bytes, of the ACMDRVOPENDESC structure. This member will be initialized by the ACM before calling the driver. This member can be greater than the size, in bytes, of the base ACMDRVOPENDESC structure. An ACM driver should ignore any members that are not contained in the base ACMDRVOPENDESC structure. This member should not be modified by the driver.

fccType

Four-character code identifying the type of driver that is attempting to be opened. This member will be ACMDRIVERDETAILS_FCCTYPE_AUDIOCODEC (audc) for ACM drivers. An ACM driver should examine this member first and fail the DRV_OPEN message by returning zero if it is not equal to ACMDRIVERDETAILS_FCCTYPE_AUDIOCODEC. In case of failure, all remaining members should be ignored and remain unmodified.

fccComp

Four-character code identifying the sub-type of the driver that is attempting to be opened. This member will currently be ACMDRIVERDETAILS_FCCCOMP_UNDEFINED (zero) for ACM drivers. An ACM driver should ignore this member. This member should not be modified by the driver.

dwVersion

Version of the ACM that is opening the driver. This member will be equivalent to the value returned by acmGetVersion. An ACM driver can modify its behavior based on this value, but should not fail unless absolutely necessary. Future versions of the ACM will be backward-compatible with drivers written for previous versions of the ACM. This member should not be modified by the driver.

dwFlags

This member defines flags used for opening an ACM driver. This member is identical to the fdwOpen parameter passed to acmDriverOpen. Currently, no flags are defined and this member should be ignored. This member should not be modified by the driver.

dwError

If an ACM driver needs to fail the DRV_OPEN message for other reasons than an incompatible fccType (that is, the DRV_OPEN is for an ACM driver), this member must be set to the desired nonzero error code. This error code will be the return value from acmDriverOpen. This member is ignored if the driver succeeds the DRV_OPEN message (returns nonzero).

pszSectionName

Address of a null-terminated string that specifies the name of the section in the SYSTEM.INI file where driver information is recorded.

pszAliasName

Address of a null-terminated string that specifies the driver name or an alias under which the driver was loaded.

dnDevNode

For plug-and-play drivers, this member identifies the device node for which the driver is being opened.