diff options
Diffstat (limited to 'pjmedia/src/test/vectors/swapendian.c')
-rw-r--r-- | pjmedia/src/test/vectors/swapendian.c | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/pjmedia/src/test/vectors/swapendian.c b/pjmedia/src/test/vectors/swapendian.c new file mode 100644 index 00000000..2865d8cd --- /dev/null +++ b/pjmedia/src/test/vectors/swapendian.c @@ -0,0 +1,54 @@ +#include <stdio.h> + +int main(int argc, char *argv[]) +{ + FILE *in, *out; + char frm[2]; + unsigned count; + + if (argc != 3) { + puts("Usage: swapendian input.pcm OUTPUT.PCM"); + return 1; + } + + in = fopen(argv[1], "rb"); + if (!in) { + puts("Open error"); + return 1; + } + + out = fopen(argv[2], "wb"); + if (!out) { + puts("Open error"); + fclose(in); + return 1; + } + + count = 0; + for (;;) { + char tmp; + + if (fread(frm, 2, 1, in) != 1) + break; + + tmp = frm[0]; + frm[0] = frm[1]; + frm[1] = tmp; + + if (fwrite(frm, 2, 1, out) != 1) { + puts("Write error"); + break; + } + + ++count; + } + + printf("%d samples converted\n", count); + + fclose(in); + fclose(out); + + return 0; +} + + |