Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ waveOutFormatDetails(3mms) — Multimedia Services 2.4B

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

waveOutGetFormatInfo(3mms)

waveOutGetNumDevs(3mms)

waveOutFormatDetails(3mms)  —  Subroutines

 

Name

 
waveOutFormatDetails --- Query the specified waveform audio output device to determine detailed information relating to a specific supported format
 

Syntax

 

 #include <mme/mme_api.h>
 MMRESULT waveOutFormatDetails (UINT uClassDeviceID,
                               LPACMFORMATDETAILS pafd,
                               DWORD fdwDetails);
 

 
 

Arguments

 
UINT uClassDeviceID
Identifies the waveform audio output device.

 
LPACMFORMATDETAILS pafd
Specifies a pointer to a ACMFORMATDETAILS data structure. Certain fields in the data structure may be used to pass selection information to the function; most fields are then entered by the function and returned to the caller. See Chapter 3 of the Programmer’s Guide for information about the ACMFORMATDETAILS data structure. 

 
The ACMFORMATDETAILS and WAVEFORMATEX data structures must be allocated with the mmeAllocMem function before being passed to the waveInFormatDetails function. See the mmeAllocMem(3mms) reference page for more information about allocating memory for data structures. 

 
DWORD fdwDetails
Flags for querying the audio input device for detailed format information. The following flags are defined:

 
ACM_FORMATDETAILSF_FORMAT

 
Specifies that a format is selected by index.

 
ACM_FORMATDETAILSF_WAVEINDEX

 
Specifies that a format is selected by the information in the WAVEFORMATEX data structure. 
 
 

Description

 
The waveOutFormatDetails function queries the specified waveform audio output device to determine specific information relating to a format specified by the caller. 

 
The application must set the cbStruct, pwfx, and cbwfx fields in the ACMFORMATDETAILS structure before calling this function. The fdwDetails argument is used to specify how the format is specified. If querying by index, the dwFormatIndex field must be set to the desired format, and the dwFormatTag field must be set to zero. If querying by wave format, the WAVEFORMATEX data structure pointed to by the pwfx field must be initialized with information about the desired format. 

 
On successful return from the function, pafd is returned as follows:
 

 
dwFormatIndex@T{ Index from 0 to one less than the number of formats supported by this device.  T} dwFormatTag@T{ Format tag value for the format as defined in the mmsystem.h file.  T} ∗pwfx@T{ A WAVEFORMATEX data structure containing the format.  T} szFormat@T{ An ascii null-terminated description of the format.  T} fdwSupport@T{ See Chapter 3 of the Programmer’s Guide for the flag descriptions.  T}

 

Extensions

 
The waveOutFormatDetails function is a Digital extension to the Microsoft multimedia API specification. 
 
 

Return Values

 
Returns MMSYSERR_NOERROR if the function is successful; otherwise, it returns one of the following error codes:
 
 

 
MMSYSERR_BADDEVICEID@T{ The specified device is invalid. T} MMSYSERR_INVALPARAM@T{ The parameter pafd is NULL. The value of the pafd->cbStruct, pafd->pwfx->cbSize, or pafd->cbwfx field is invalid. The value of fdwDetails is invalid. The parameter pafd or pafd->pwfx is not allocated from shared memory.  T} MMSYSERR_NODRIVER@T{ A waveIn driver is not installed.  T}

 

See Also

 
waveOutGetFormatInfo(3mms), waveOutGetNumDevs(3mms)
 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026