ISpRecoContext::GetAudioOptions (Windows Embedded CE 6.0)
1/6/2010
This method gets audio options for a given stream. The default audio options are none (such as SPAO_NONE). The default retained audio format is the recognition format of the speech recognition (SR) engine. see ISpRecognizer::GetFormat with SPWF_SRENGINE. See also ISpRecoContext::SetAudioOptions.
Syntax
HRESULT GetAudioOptions(
SPAUDIOOPTIONS* Options,
GUID* pAudioFormatId,
WAVEFORMATEX** ppCoMemWFE
);
Parameters
- Options
[out] Pointer to a value indicating the audio option set for the provided format identifier, or NULL if a value is not retrieved. Possible values are defined for SPAUDIOOPTIONS enumeration.
- pAudioFormatId
[in] Pointer to an audio stream format identifier (such as a GUID), or to NULL if the application is not interested in the retained audio format. If the application is not interested in the format, it ignores both pAudioFormatId and pWaveFormatEx parameters when calling ISpRecoContext::SetAudioOptions.
- ppCoMemWFE
[in] Address of a pointer to a WAVEFORMATEX containing the retained audio format, or to NULL if the application is not interested in the retained audio format. If WAVEFORMATEX data is retrieved, then the application must free it using CoTaskMemFree.
Return Value
The following table shows the possible return values.
Value | Description |
---|---|
S_OK |
Function completed successfully. |
E_POINTER |
One of the pointers is invalid or bad. |
FAILED(hr) |
Appropriate error message. |
Remarks
A related enumeration is SPSTREAMFORMAT, which defines SAPI-supported stream formats. A related class is CspStreamFormat, which manages SAPI-supported stream formats and WAVEFORMATEX structures.
Example
The following code snippet illustrates the use of this method and querying the different retained audio settings.
HRESULT hr = S_OK;
// check if audio is being retained (default is NO)
hr = cpRecoContext->GetAudioOptions(&pAudioOptions, NULL, NULL);
// Check hr
// check what audio format would be retained
hr = cpRecoContext->GetAudioOptions(NULL, &guidFormat, &pWaveFormatEx);
// Check hr
// ... do other operations
// free the wave format memory
::CoTaskMemFree(pWaveFormatEx);
// check if audio is being retained, and if so what the format is
hr = cpRecoContext->GetAudioOptions(&guid, &guidFormat, &pWaveFormatEx);
// Check hr
// ... do other operations
// free the wave format memory
::CoTaskMemFree(pWaveFormatEx);
Requirements
Header | sapi.h, sapi.idl |
Library | sapilib.lib |
Windows Embedded CE | Windows CE .NET 4.1 and later |