ALC_SOFT_pause_device
openalext edited this page Dec 19, 2015
·
1 revision
ALC_SOFT_pause_device
Chris Robinson
Chris Robinson (chris.kcat 'at' gmail.com)
Complete
This extension is written against the OpenAL 1.1 specification. This extension trivially interacts with ALC_SOFT_loopback.
This extension allows applications to pause a playback device. The main purpose of this is to silence output, stop processing, and allow the audio hardware to go into a low-power mode. On a mobile device, for instance, apps may want to silence output and not waste battery life with unneeded processing when in the background.
None.
void alcDevicePauseSOFT(ALCdevice *device); void alcDeviceResumeSOFT(ALCdevice *device);
None.
Pausing Playback A playback device may be paused with the function void alcDevicePauseSOFT(ALCdevice *device); When paused, no contexts associated with the device will be processed or updated. Playing sources will not produce sound, have their offsets incremented, or process any more buffers, until the device is resumed. Pausing a device that is already paused is a legal no-op. To resume playback of a paused device, use the function void alcDeviceResumeSOFT(ALCdevice *device); This will restart processing on the device -- sources will resume playing sound as normal. Resuming playback on a device that is not paused is a legal no-op. These functions are not reference counted. alcDeviceResumeSOFT only needs to be called once to resume playback, regardless of how many times alcDevicePauseSOFT was called.
An ALC_INVALID_DEVICE error is generated if NULL or an invalid device handle is passed to alcDevicePauseSOFT or alcDeviceResumeSOFT. An ALC_INVALID_DEVICE error is generated if the device handle passed to alcDevicePauseSOFT or alcDeviceResumeSOFT is not a playback device handle (i.e. capture or loopback).