From ba15707b292d827bdce732e7713b26fae3f75c74 Mon Sep 17 00:00:00 2001 From: Alex Bennee Date: Wed, 14 Jul 2010 15:57:06 +0100 Subject: EasyTag 2.1.1 --- src/vcedit.h | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100755 src/vcedit.h (limited to 'src/vcedit.h') diff --git a/src/vcedit.h b/src/vcedit.h new file mode 100755 index 0000000..5bc39dc --- /dev/null +++ b/src/vcedit.h @@ -0,0 +1,75 @@ +/* This program is licensed under the GNU Library General Public License, version 2, + * a copy of which is included with this program (with filename LICENSE.LGPL). + * + * (c) 2000-2001 Michael Smith + * + * VCEdit header. + * + * last modified: $ID:$ + */ + +#ifndef __VCEDIT_H +#define __VCEDIT_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include + +#ifdef ENABLE_SPEEX +#include +#include +#endif + +#define VCEDIT_IS_UNKNOWN 0 +#define VCEDIT_IS_SPEEX 1 +#define VCEDIT_IS_OGGVORBIS 2 + +typedef size_t (*vcedit_read_func)(void *, size_t, size_t, void *); +typedef size_t (*vcedit_write_func)(const void *, size_t, size_t, void *); + +typedef struct { + ogg_sync_state *oy; + ogg_stream_state *os; + + int oggtype; // Stream is Vorbis or Speex? + vorbis_comment *vc; + vorbis_info *vi; +#ifdef ENABLE_SPEEX + SpeexHeader *si; +#endif + + vcedit_read_func read; + vcedit_write_func write; + + void *in; + long serial; + unsigned char *mainbuf; + unsigned char *bookbuf; + int mainlen; + int booklen; + char *lasterror; + char *vendor; + int prevW; + int extrapage; + int eosin; +} vcedit_state; + +extern vcedit_state *vcedit_new_state(void); +extern void vcedit_clear(vcedit_state *state); +extern vorbis_comment *vcedit_comments(vcedit_state *state); +extern int vcedit_open(vcedit_state *state, FILE *in); +extern int vcedit_open_callbacks(vcedit_state *state, void *in, + vcedit_read_func read_func, vcedit_write_func write_func); +extern int vcedit_write(vcedit_state *state, void *out); +extern char *vcedit_error(vcedit_state *state); + +#ifdef __cplusplus +} +#endif + +#endif /* __VCEDIT_H */ + -- cgit v1.2.3