view test/testaudioinfo.c @ 2701:91b0e95f443a

Date: Wed, 7 May 2008 21:48:10 +0200 From: Christian Walther Subject: SDL 1.3 Xcode projects Here are my promised updates to the Xcode projects. They work as far as I'm using them, but I have not tested them thoroughly, and there may still be some cruft left. In particular, I haven't checked whether the frameworks still work on older versions of Mac OS X (are we still targeting 10.2?), and whether Altivec/SSE optimizations are properly done. Of note: I incremented the framework version to B to enable SDL 1.2 and 1.3 to coexist in a single framework. Let me know if you see any problems. Greetings Christian
author Sam Lantinga <slouken@libsdl.org>
date Thu, 08 May 2008 05:06:24 +0000
parents 866052b01ee5
children 9de326b3099c
line wrap: on
line source

#include "SDL.h"

static void
print_devices(int iscapture)
{
    const char *typestr = ((iscapture) ? "capture" : "output");
    int n = SDL_GetNumAudioDevices(iscapture);

    printf("%s devices:\n", typestr);

    if (n == -1)
        printf("  Driver can't detect specific devices.\n\n", typestr);
    else if (n == 0)
        printf("  No %s devices found.\n\n", typestr);
    else {
        int i;
        for (i = 0; i < n; i++) {
            printf("  %s\n", SDL_GetAudioDeviceName(i, iscapture));
        }
        printf("\n");
    }
}

int
main(int argc, char **argv)
{
    /* Print available audio drivers */
    int n = SDL_GetNumAudioDrivers();
    if (n == 0) {
        printf("No built-in audio drivers\n\n");
    } else {
        int i;
        printf("Built-in audio drivers:\n");
        for (i = 0; i < n; ++i) {
            printf("  %s\n", SDL_GetAudioDriver(i));
        }
        printf("\n");
    }

    /* Load the SDL library */
    if (SDL_Init(SDL_INIT_AUDIO) < 0) {
        fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
        return (1);
    }

    printf("Using audio driver: %s\n\n", SDL_GetCurrentAudioDriver());

    print_devices(0);
    print_devices(1);

    SDL_Quit();
    return 0;
}