Commit 60ba8552d88499da850ffb844dadc4bae42c5ac9

Sam Lantinga 2017-03-16T16:45:12

Backed out changeset e3fcdad257fc - testaudiocapture.c already does what we want

diff --git a/test/Makefile.in b/test/Makefile.in
index f92c936..68f0d3d 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -9,7 +9,6 @@ LIBS	= @LIBS@
 
 TARGETS = \
 	checkkeys$(EXE) \
-	loopbackaudio$(EXE) \
 	loopwave$(EXE) \
 	loopwavequeue$(EXE) \
 	testatomic$(EXE) \
@@ -76,9 +75,6 @@ Makefile: $(srcdir)/Makefile.in
 checkkeys$(EXE): $(srcdir)/checkkeys.c
 	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
 
-loopbackaudio$(EXE): $(srcdir)/loopbackaudio.c
-	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
-
 loopwave$(EXE): $(srcdir)/loopwave.c
 	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
 
diff --git a/test/README b/test/README
index 8464219..f6282be 100644
--- a/test/README
+++ b/test/README
@@ -2,7 +2,6 @@
 These are test programs for the SDL library:
 
 	checkkeys	Watch the key events to check the keyboard
-	loopbackaudio	Audio test -- record from the microphone and play it back immediately
 	loopwave	Audio test -- loop playing a WAV file
 	loopwavequeue	Audio test -- loop playing a WAV file with SDL_QueueAudio
 	testaudioinfo	Lists audio device capabilities
diff --git a/test/loopbackaudio.c b/test/loopbackaudio.c
deleted file mode 100644
index 11ba1a3..0000000
--- a/test/loopbackaudio.c
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
-  Copyright (C) 1997-2017 Sam Lantinga <slouken@libsdl.org>
-
-  This software is provided 'as-is', without any express or implied
-  warranty.  In no event will the authors be held liable for any damages
-  arising from the use of this software.
-
-  Permission is granted to anyone to use this software for any purpose,
-  including commercial applications, and to alter it and redistribute it
-  freely.
-*/
-
-/* Program to record audio from the microphone and play it back immediately */
-
-#include "SDL_config.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#if HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-#ifdef __EMSCRIPTEN__
-#include <emscripten/emscripten.h>
-#endif
-
-#include "SDL.h"
-
-static SDL_AudioDeviceID device;
-static SDL_AudioDeviceID capture;
-
-static void SDLCALL
-fillerup(void *unused, Uint8 * stream, int len)
-{
-	SDL_QueueAudio(device, stream, len);
-}
-
-/* Call this instead of exit(), so we can clean up SDL: atexit() is evil. */
-static void
-quit(int rc)
-{
-    SDL_Quit();
-    exit(rc);
-}
-
-static void
-close_audio()
-{
-    if (capture != 0) {
-        SDL_CloseAudioDevice(capture);
-        capture = 0;
-    }
-    if (device != 0) {
-        SDL_CloseAudioDevice(device);
-        device = 0;
-    }
-}
-
-static void
-open_audio()
-{
-    SDL_AudioSpec spec;
-
-    SDL_zero(spec);
-    spec.freq = 44100;
-    spec.format = AUDIO_S16;
-    spec.channels = 1;
-    spec.samples = 1024;
-    spec.callback = fillerup;
-
-	capture = SDL_OpenAudioDevice(NULL, SDL_TRUE, &spec, &spec, SDL_AUDIO_ALLOW_ANY_CHANGE);
-	if (!capture) {
-		SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't open microphone: %s\n", SDL_GetError());
-		quit(2);
-	}
-
-	spec.callback = NULL;
-
-	device = SDL_OpenAudioDevice(NULL, SDL_FALSE, &spec, NULL, 0);
-    if (!device) {
-        SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't open audio: %s\n", SDL_GetError());
-        quit(2);
-    }
-
-	/* Let the audio run */
-	SDL_PauseAudioDevice(capture, SDL_FALSE);
-    SDL_PauseAudioDevice(device, SDL_FALSE);
-}
-
-static void reopen_audio()
-{
-    close_audio();
-    open_audio();
-}
-
-
-static int done = 0;
-void
-poked(int sig)
-{
-    done = 1;
-}
-
-#ifdef __EMSCRIPTEN__
-void
-loop()
-{
-    if(done || (SDL_GetAudioDeviceStatus(capture) != SDL_AUDIO_PLAYING) || (SDL_GetAudioDeviceStatus(device) != SDL_AUDIO_PLAYING))
-        emscripten_cancel_main_loop();
-}
-#endif
-
-int
-main(int argc, char *argv[])
-{
-    int i;
-
-    /* Enable standard application logging */
-    SDL_LogSetPriority(SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_PRIORITY_INFO);
-
-    /* Load the SDL library */
-    if (SDL_Init(SDL_INIT_AUDIO|SDL_INIT_EVENTS) < 0) {
-        SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't initialize SDL: %s\n", SDL_GetError());
-        return (1);
-    }
-
-    /* Show the list of available drivers */
-    SDL_Log("Available audio drivers:");
-    for (i = 0; i < SDL_GetNumAudioDrivers(); ++i) {
-        SDL_Log("%i: %s", i, SDL_GetAudioDriver(i));
-    }
-
-    SDL_Log("Using audio driver: %s\n", SDL_GetCurrentAudioDriver());
-
-    open_audio();
-
-    SDL_FlushEvents(SDL_AUDIODEVICEADDED, SDL_AUDIODEVICEREMOVED);
-
-#ifdef __EMSCRIPTEN__
-    emscripten_set_main_loop(loop, 0, 1);
-#else
-    while (!done) {
-        SDL_Event event;
-
-        while (SDL_PollEvent(&event) > 0) {
-            if (event.type == SDL_QUIT) {
-                done = 1;
-            }
-            if (event.type == SDL_AUDIODEVICEADDED ||
-                (event.type == SDL_AUDIODEVICEREMOVED && event.adevice.iscapture && event.adevice.which == capture) ||
-                (event.type == SDL_AUDIODEVICEREMOVED && !event.adevice.iscapture && event.adevice.which == device)) {
-                reopen_audio();
-            }
-        }
-        SDL_Delay(100);
-    }
-#endif
-
-    /* Clean up on signal */
-    close_audio();
-    SDL_Quit();
-    return (0);
-}
-
-/* vi: set ts=4 sw=4 expandtab: */