2011-03-11 13:57:03 +03:00
|
|
|
/*
|
|
|
|
id3: ID3v2.3 and ID3v2.4 parsing (a relevant subset)
|
|
|
|
|
|
|
|
copyright 2006-2007 by the mpg123 project - free software under the terms of the LGPL 2.1
|
|
|
|
see COPYING and AUTHORS files in distribution or http://mpg123.org
|
|
|
|
initially written by Thomas Orgis
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef MPG123_ID3_H
|
|
|
|
#define MPG123_ID3_H
|
|
|
|
|
|
|
|
/* really need it _here_! */
|
|
|
|
#include "frame.h"
|
|
|
|
|
|
|
|
#ifdef NO_ID3V2
|
2013-10-02 20:44:03 +04:00
|
|
|
# ifdef init_id3
|
|
|
|
# undef init_id3
|
|
|
|
# endif
|
2011-03-11 13:57:03 +03:00
|
|
|
# define init_id3(fr)
|
2013-10-02 20:44:03 +04:00
|
|
|
# ifdef exit_id3
|
|
|
|
# undef exit_id3
|
|
|
|
# endif
|
2011-03-11 13:57:03 +03:00
|
|
|
# define exit_id3(fr)
|
2013-10-02 20:44:03 +04:00
|
|
|
# ifdef reset_id3
|
|
|
|
# undef reset_id3
|
|
|
|
# endif
|
2011-03-11 13:57:03 +03:00
|
|
|
# define reset_id3(fr)
|
2013-10-02 20:44:03 +04:00
|
|
|
# ifdef id3_link
|
|
|
|
# undef id3_link
|
|
|
|
# endif
|
2011-03-11 13:57:03 +03:00
|
|
|
# define id3_link(fr)
|
|
|
|
#else
|
|
|
|
void init_id3(mpg123_handle *fr);
|
|
|
|
void exit_id3(mpg123_handle *fr);
|
|
|
|
void reset_id3(mpg123_handle *fr);
|
|
|
|
void id3_link(mpg123_handle *fr);
|
|
|
|
#endif
|
|
|
|
int parse_new_id3(mpg123_handle *fr, unsigned long first4bytes);
|
|
|
|
/* Convert text from some ID3 encoding to UTf-8.
|
|
|
|
On error, sb->fill is 0. The noquiet flag enables warning/error messages. */
|
|
|
|
void id3_to_utf8(mpg123_string *sb, unsigned char encoding, const unsigned char *source, size_t source_size, int noquiet);
|
|
|
|
|
|
|
|
#endif
|