Mercurial > pidgin
annotate sounds/au2h.c @ 3470:2f8f4f1dac98
[gaim-migrate @ 3521]
Thanks Faceprint.
committer: Tailor Script <tailor@pidgin.im>
author | Sean Egan <seanegan@gmail.com> |
---|---|
date | Thu, 29 Aug 2002 18:18:41 +0000 |
parents | 5ed382006539 |
children |
rev | line source |
---|---|
1 | 1 #include <stdio.h> |
2 #if !(__GLIBC__ < 2) | |
3 #include <error.h> | |
4 #endif | |
5 #include <fcntl.h> | |
200
bc117fbcf527
[gaim-migrate @ 210]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
10
diff
changeset
|
6 #include <unistd.h> |
469 | 7 #include <stdlib.h> |
8 #include <string.h> | |
1 | 9 |
10 #define BUF_SIZE 10 | |
11 | |
12 int main(int argc, char *argv[]) | |
13 { | |
14 int fd; | |
15 FILE *f; | |
16 int res,x; | |
17 char buf[BUF_SIZE]; | |
1094
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
18 char file[256]; |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
19 int offset = 0, cnt; |
1 | 20 |
1797
6fa4f028d226
[gaim-migrate @ 1807]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1094
diff
changeset
|
21 if (argc != 3) { |
1798 | 22 fprintf(stderr, "Too few arguments! Are you using gmake? If you're not, then you really should. :-) \n"); |
1797
6fa4f028d226
[gaim-migrate @ 1807]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1094
diff
changeset
|
23 exit(1); |
6fa4f028d226
[gaim-migrate @ 1807]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1094
diff
changeset
|
24 } |
6fa4f028d226
[gaim-migrate @ 1807]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1094
diff
changeset
|
25 |
1 | 26 fd = open(argv[1], O_RDONLY); |
27 if (fd < 0) { | |
28 perror("open"); | |
29 exit(1); | |
30 } | |
31 f = fopen(argv[2], "w+"); | |
32 if (!f) { | |
33 perror("fopen"); | |
34 exit(1); | |
35 } | |
36 argv[1][strlen(argv[1])-3]='\0'; | |
1094
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
37 cnt = strlen(argv[1]); |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
38 while (offset != cnt) { |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
39 if (argv[1][cnt - offset] == '/') { |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
40 offset--; |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
41 break; |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
42 } |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
43 offset++; |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
44 } |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
45 sprintf(file, "%s", &argv[1][cnt - offset]); |
3deadbe50737
[gaim-migrate @ 1104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
469
diff
changeset
|
46 fprintf(f, "static unsigned char %s[] = {\n", file); |
1 | 47 read(fd, buf, 8); /* id & offset */ |
48 read(fd, buf, 8); /* len & encoding */ | |
49 read(fd, buf, 8); /* rate & count */ | |
50 /* no more click :) */ | |
51 | |
52 while((res = read(fd, buf, BUF_SIZE)) > 0) { | |
53 for (x=0;x<res;x++) | |
54 fprintf(f, "%#x, ", buf[x] & 0xff); | |
55 fprintf(f, "\n"); | |
56 } | |
57 fprintf(f,"};\n"); | |
10 | 58 fclose(f); |
1 | 59 return 0; |
60 } |