Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This function determines the cause of the audio interrupt and returns the current device status.
AUDIO_STATE PDD_AudioGetInterruptType(void);
Return Values
An integer indicating the type of interrupt. The defined values are listed as follows.
Defined value | Description |
---|---|
AUDIO_STATE_OUT_PLAYING | Sound is currently playing. |
AUDIO_STATE_OUT_UNDERFLOW | Sound was playing, but not enough data has been supplied to continue. |
AUDIO_STATE_OUT_STOPPED | Playback is stopped. |
AUDIO_STATE_IN_RECORDING | Sound is currently recording. |
AUDIO_STATE_IN_OVERFLOW | Sound was recording, but the reserve buffer was not processed in time before the DMA needed to write to it again. |
AUDIO_STATE_IN_STOPPED | Recording is stopped. |
AUDIO_STATE_IGNORE | The interrupt does not represent a state change or update and should be ignored by the MDD. This state can be used to report a PDD private interrupt. For example, initializing a CODEC may generate an interrupt that need not be reported. |
AUDIO_STATE_OUT_MASK | Bitmask for the output state (0xF0). |
AUDIO_STATE_IN_MASK | Bitmask for the input state (0x0F). |
Remarks
This function supports the implementation of the audio PDD.
The PDD reports the status of the playback or record circuitry. The interrupt occurs when the audio DMA passes a buffer boundary. See the AUDIO_STATE return values for the possible states that an interrupt can represent.
AUDIO_STATE is the state of the audio device. This value can represent a state change of either the input or the output circuit or both. The lower 4 bits represents the input status, and the upper 4 bits represents the output status; so if the current interrupt is for both input and output, the values can be combined using the OR operator. However, if the interrupt represents only one circuit, the other 4 bits should remain 0; otherwise, the MDD interprets this as a change or update in the circuit's status.
Requirements
OS Versions: Windows CE 1.0 and later.
Header: Waveddsi.h.
See Also
Send Feedback on this topic to the authors