00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef __OGGZ_COMMENT_H__
00034 #define __OGGZ_COMMENT_H__
00035
00086 #include <oggz/oggz.h>
00087
00091 typedef struct {
00093 char * name;
00094
00096 char * value;
00097 } OggzComment;
00098
00099 #ifdef __cplusplus
00100 extern "C" {
00101 #endif
00102
00112 const char *
00113 oggz_comment_get_vendor (OGGZ * oggz, long serialno);
00114
00127 int
00128 oggz_comment_set_vendor (OGGZ * oggz, long serialno,
00129 const char * vendor_string);
00130
00139 const OggzComment *
00140 oggz_comment_first (OGGZ * oggz, long serialno);
00141
00152 const OggzComment *
00153 oggz_comment_next (OGGZ * oggz, long serialno, const OggzComment * comment);
00154
00166 const OggzComment *
00167 oggz_comment_first_byname (OGGZ * oggz, long serialno, char * name);
00168
00181 const OggzComment *
00182 oggz_comment_next_byname (OGGZ * oggz, long serialno,
00183 const OggzComment * comment);
00184
00194 int
00195 oggz_comment_add (OGGZ * oggz, long serialno, OggzComment * comment);
00196
00207 int
00208 oggz_comment_add_byname (OGGZ * oggz, long serialno,
00209 const char * name, const char * value);
00210
00223 int
00224 oggz_comment_remove (OGGZ * oggz, long serialno, OggzComment * comment);
00225
00237 int
00238 oggz_comment_remove_byname (OGGZ * oggz, long serialno, char * name);
00239
00264 ogg_packet *
00265 oggz_comment_generate(OGGZ * oggz, long serialno,
00266 OggzStreamContent packet_type,
00267 int FLAC_final_metadata_block);
00268
00274 void oggz_packet_destroy (ogg_packet *packet);
00275
00276 #ifdef __cplusplus
00277 }
00278 #endif
00279
00280 #endif