ISpVoice::SetPriority (SAPI 5.3)
ISpVoice::SetPriority sets the priority for the voice. The default priority is SPVPRI_NORMAL.
HRESULT SetPriority( SPVPRIORITY ePriority );
- [in] Priority of type SPVPRIORITY associated with the current voice.
|S_OK||Function completed successfully.|
|E_INVALIDARG||ePriority is not an acceptable priority value.|
Assuming an output object which implements ISpAudio, speak requests of similar priority voices are queued, and are spoken one at a time in the order they are issued. That is, speak requests from normal priority voices are put in one queue, while speak requests from alert priority voices (with priority SPVPRI_ALERT) are put in another queue.
Alert priority voices take priority over normal voices. If one or more speak requests from alert priority voices are pending, a normal voice that is speaking will be interrupted on the next alert boundary (see ISpVoice::SetAlertBoundary). When all the queued alert priority voice speak requests have been processed, the normal voice will continue.
Voices with the SPVPRI_OVER priority speak over (mix with) all other audio in the system with no synchronization. SPVPRI_OVER priority voices only mix on Windows 2000.
If the output object does not implement ISpAudio, no serialization will occur, and all voices will be treated as if their priority is SPVPRI_OVER.