forgot to init on write
[libopusenc.git] / examples / opusenc_example.c
1 #include <stdio.h>
2 #include "opusenc.h"
3
4 #define READ_SIZE 256
5
6 int main(int argc, char **argv) {
7   FILE *fin;
8   OggOpusEnc *enc;
9   int error;
10   if (argc != 3) {
11     fprintf(stderr, "usage: %s <raw pcm input> <Ogg Opus output>\n", argv[0]);
12     return 1;
13   }
14   fin = fopen(argv[1], "r");
15   if (!fin) {
16     printf("cannout open input file: %s\n", argv[1]);
17     return 1;
18   }
19   enc = ope_create_file(argv[2], 48000, 2, 0, &error);
20   if (!enc) {
21     printf("cannout open output file: %s\n", argv[2]);
22     return 1;
23   }
24   ope_add_comment(enc, "ARTIST", "Someone");
25   ope_add_comment(enc, "TITLE", "Some track");
26   while (1) {
27     short buf[2*READ_SIZE];
28     int ret = fread(buf, 2*sizeof(short), READ_SIZE, fin);
29     if (ret > 0) {
30       ope_write(enc, buf, ret);
31     } else break;
32   }
33   ope_close_and_free(enc);
34   return 0;
35 }