BEAST/BSE - Better Audio System and Sound Engine
0.8.2
|
00001 // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html 00002 #ifndef __GSL_VORBIS_CUTTER_H__ 00003 #define __GSL_VORBIS_CUTTER_H__ 00004 00005 #include <bse/gslcommon.hh> 00006 00007 G_BEGIN_DECLS 00008 00009 /* --- typedefs & enums --- */ 00010 typedef struct _GslVorbisCutter GslVorbisCutter; 00011 typedef enum 00012 { 00013 GSL_VORBIS_CUTTER_NONE = 0, 00014 GSL_VORBIS_CUTTER_SAMPLE_BOUNDARY = 1, 00015 GSL_VORBIS_CUTTER_PACKET_BOUNDARY = 2, 00016 GSL_VORBIS_CUTTER_PAGE_BOUNDARY = 3 00017 } GslVorbisCutterMode; 00018 00019 /* --- cutter API --- */ 00020 GslVorbisCutter* gsl_vorbis_cutter_new (void); 00021 void gsl_vorbis_cutter_set_cutpoint (GslVorbisCutter *self, 00022 GslVorbisCutterMode cutmode, 00023 SfiNum cutpoint); 00024 void gsl_vorbis_cutter_filter_serialno (GslVorbisCutter *self, 00025 guint serialno); 00026 void gsl_vorbis_cutter_force_serialno (GslVorbisCutter *self, 00027 guint serialno); 00028 void gsl_vorbis_cutter_write_ogg (GslVorbisCutter *self, 00029 guint n_bytes, 00030 guint8 *bytes); 00031 guint gsl_vorbis_cutter_read_ogg (GslVorbisCutter *self, 00032 guint n_bytes, 00033 guint8 *bytes); 00034 gboolean gsl_vorbis_cutter_ogg_eos (GslVorbisCutter *self); 00035 void gsl_vorbis_cutter_destroy (GslVorbisCutter *self); 00036 00037 G_END_DECLS 00038 00039 #endif /* __GSL_VORBIS_CUTTER_H__ */