Added vorbis-tools.
[vorbis-lancer-gcc.git] / vorbis-tools-1.2.0 / vcut / vcut.h
blobbfd864aa0a249eeae475d9b6bc7ce2640321cabd
1 #ifndef __VCUT_H
2 #define __VCUT_H
4 #include <stdio.h>
5 #include <ogg/ogg.h>
6 #include <vorbis/codec.h>
8 typedef struct {
9 int length;
10 unsigned char *packet;
11 } vcut_packet;
13 typedef struct {
14 ogg_sync_state *sync_in;
15 ogg_stream_state *stream_in;
16 vorbis_dsp_state *vd;
17 vorbis_block *vb;
18 vorbis_info *vi;
19 int prevW;
20 ogg_int64_t initialgranpos;
21 ogg_int64_t pagegranpos;
22 int e_o_s;
23 int time;
24 ogg_int64_t cutpoint;
25 unsigned int serial;
26 vcut_packet **headers; /* 3 */
27 vcut_packet **packets; /* 2 */
29 FILE *in,*out1,*out2;
30 } vcut_state;
32 int vcut_process(vcut_state *state);
33 void vcut_set_files(vcut_state *s, FILE *in, FILE *out1, FILE *out2);
34 void vcut_set_cutpoint(vcut_state *s, ogg_int64_t cutpoint, int time);
35 vcut_state *vcut_new(void);
36 void vcut_free(vcut_state *state);
38 #endif /* __VCUT_H */