Mercurial > mxe-octave
annotate src/sdl_sound-test.c @ 3865:4e204ea06bc8
qt.mk: only depend on fontconfig if $(USE_SYSTEM_FONTCONFIG) is set to "no"
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 26 Mar 2015 09:05:37 -0400 |
parents | 99516e73b368 |
children |
rev | line source |
---|---|
2352
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
1 /* |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
2 * This file is part of MXE. |
2353
99516e73b368
Move doc/index.html -> index.html
Volker Grabsch <vog@notjusthosting.com>
parents:
2352
diff
changeset
|
3 * See index.html for further information. |
2352
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
4 * |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
5 * This is a simple test program for SDL_sound that tries to |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
6 * decode the file specified as the only command-line argument. |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
7 * |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
8 * This file is in the Public Domain. |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
9 */ |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
10 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
11 #include <stdio.h> |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
12 #include <SDL_sound.h> |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
13 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
14 int main(int argc, char *argv[]) |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
15 { |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
16 if (argc != 2) { |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
17 fprintf(stderr, "usage: %s <filename>\n", argv[0]); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
18 return 1; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
19 } |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
20 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
21 if (SDL_Init(SDL_INIT_AUDIO) != 0) { |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
22 fprintf(stderr, "Error: %s\n", SDL_GetError()); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
23 return 1; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
24 } |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
25 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
26 if (Sound_Init() == 0) { |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
27 fprintf(stderr, "Error: %s\n", Sound_GetError()); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
28 return 1; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
29 } |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
30 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
31 SDL_RWops* rw = SDL_RWFromFile(argv[1], "r"); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
32 if (rw == NULL) { |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
33 fprintf(stderr, "Error: %s\n", SDL_GetError()); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
34 return 1; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
35 } |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
36 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
37 Sound_AudioInfo wantedFormat; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
38 wantedFormat.channels = 2; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
39 wantedFormat.rate = 44100; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
40 wantedFormat.format = AUDIO_S16LSB; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
41 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
42 Sound_Sample* sample = Sound_NewSample(rw, 0, &wantedFormat, 8192); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
43 if (sample == 0) { |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
44 fprintf(stderr, "Error: %s\n", Sound_GetError()); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
45 return 1; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
46 } |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
47 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
48 Sound_DecodeAll(sample); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
49 printf("Format: %s\n", sample->decoder->description); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
50 printf("Decoded %d bytes of data.\n", sample->buffer_size); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
51 Sound_FreeSample(sample); |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
52 |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
53 return 0; |
8474fcb3e1b5
Fix line ending style (DOS -> Unix) for some test programs
Volker Grabsch <vog@notjusthosting.com>
parents:
2351
diff
changeset
|
54 } |