mirror of https://github.com/libsdl-org/SDL
We don't require the audio system to be initialized for audio format conversion
This is helpful for tools pipelines where audio devices are never used.
This commit is contained in:
parent
9a5f7b17c6
commit
c552cc6847
|
@ -602,9 +602,6 @@ int SDL_InitAudio(const char *driver_name)
|
|||
SDL_QuitAudio(); // shutdown driver if already running.
|
||||
}
|
||||
|
||||
SDL_ChooseAudioConverters();
|
||||
SDL_SetupAudioResampler();
|
||||
|
||||
SDL_RWLock *device_list_lock = SDL_CreateRWLock(); // create this early, so if it fails we don't have to tear down the whole audio subsystem.
|
||||
if (!device_list_lock) {
|
||||
return -1;
|
||||
|
|
|
@ -404,10 +404,8 @@ static int UpdateAudioStreamInputSpec(SDL_AudioStream *stream, const SDL_AudioSp
|
|||
|
||||
SDL_AudioStream *SDL_CreateAudioStream(const SDL_AudioSpec *src_spec, const SDL_AudioSpec *dst_spec)
|
||||
{
|
||||
if (!SDL_WasInit(SDL_INIT_AUDIO)) {
|
||||
SDL_SetError("Audio subsystem is not initialized");
|
||||
return NULL;
|
||||
}
|
||||
SDL_ChooseAudioConverters();
|
||||
SDL_SetupAudioResampler();
|
||||
|
||||
SDL_AudioStream *retval = (SDL_AudioStream *)SDL_calloc(1, sizeof(SDL_AudioStream));
|
||||
if (retval == NULL) {
|
||||
|
|
|
@ -481,6 +481,10 @@ static int audio_buildAudioStream(void *arg)
|
|||
SDL_AudioSpec spec2;
|
||||
int i, ii, j, jj, k, kk;
|
||||
|
||||
/* Call Quit */
|
||||
SDL_QuitSubSystem(SDL_INIT_AUDIO);
|
||||
SDLTest_AssertPass("Call to SDL_QuitSubSystem(SDL_INIT_AUDIO)");
|
||||
|
||||
/* No conversion needed */
|
||||
spec1.format = SDL_AUDIO_S16LE;
|
||||
spec1.channels = 2;
|
||||
|
@ -528,6 +532,9 @@ static int audio_buildAudioStream(void *arg)
|
|||
}
|
||||
}
|
||||
|
||||
/* Restart audio again */
|
||||
audioSetUp(NULL);
|
||||
|
||||
return TEST_COMPLETED;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue