Since the audio driver may modify the requested size of the audio buffer, you should allocate any local mixing buffers after you open the audio device. The device name is a UTF-8 string reported by SDL_GetAudioDeviceName(), but some drivers allow arbitrary and driver-specific strings, such as a hostname/IP address for a remote audio server, or a filename in the diskaudio driver.Īn opened audio device starts out paused, and should be enabled for playing by calling SDL_PauseAudioDevice(devid, 0) when you are ready for your audio callback function to be called. Passing in a device name of NULL requests the most reasonable default (and is equivalent to what SDL_OpenAudio() does to choose a device). Starting with SDL 2.0.5, recording is implemented and this value can be non-zero. Please note that SDL 2.0 before 2.0.5 did not support recording as such, this function would fail if iscapture was not zero. As such, this function will never return a 1 so as not to conflict with the legacy function. SDL_OpenAudio(), unlike this function, always acts on device ID 1. Returns a valid device ID that is > 0 on success or 0 on failure call SDL_GetError() for more information.įor compatibility with SDL 1.2, this will never return 1, since SDL reserves that ID for the legacy SDL_OpenAudio() function. Non-zero to specify a device should be opened for recording, not playbackĪn SDL_AudioSpec structure representing the desired output format see SDL_OpenAudio() for more informationĪn SDL_AudioSpec structure filled in with the actual output format see SDL_OpenAudio() for more information NULL requests the most reasonable default device. SDL_AudioDeviceID SDL_OpenAudioDevice( const char *device, int iscapture, const SDL_AudioSpec *desired, SDL_AudioSpec *obtained, int allowed_changes) Function Parameters deviceĪ UTF-8 string reported by SDL_GetAudioDeviceName() or a driver-specific name as appropriate.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |