From 49867bd432352d19172ab26cf873bd5651e69e25 Mon Sep 17 00:00:00 2001 From: ben Date: Mon, 31 Jul 2006 17:39:17 +0000 Subject: introduce new 'stream' directory for all stream layer related components and split them from libmpdemux git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19277 b3059339-0415-0410-9bf9-f77b7e298cf2 --- stream/cdd.h | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 stream/cdd.h (limited to 'stream/cdd.h') diff --git a/stream/cdd.h b/stream/cdd.h new file mode 100644 index 0000000000..ad8a7c150c --- /dev/null +++ b/stream/cdd.h @@ -0,0 +1,77 @@ +#ifndef __CDD_H__ +#define __CDD_H__ + +#include "config.h" +#ifndef HAVE_LIBCDIO +#include +#include +#else +#include +#include +#endif + +typedef struct { + char cddb_hello[1024]; + unsigned long disc_id; + unsigned int tracks; + char *cache_dir; + char *freedb_server; + int freedb_proto_level; + int anonymous; + char category[100]; + char *xmcd_file; + size_t xmcd_file_size; + void *user_data; +} cddb_data_t; + +typedef struct { + unsigned int min, sec, frame; +} cd_toc_t; + +typedef struct cd_track { + char *name; + unsigned int track_nb; + unsigned int min; + unsigned int sec; + unsigned int msec; + unsigned long frame_begin; + unsigned long frame_length; + struct cd_track *prev; + struct cd_track *next; +} cd_track_t; + +typedef struct { + char *artist; + char *album; + char *genre; + unsigned int nb_tracks; + unsigned int min; + unsigned int sec; + unsigned msec; + cd_track_t *first; + cd_track_t *last; + cd_track_t *current; +} cd_info_t; + +typedef struct { +#ifndef HAVE_LIBCDIO + cdrom_drive* cd; + cdrom_paranoia* cdp; +#else + cdrom_drive_t* cd; + cdrom_paranoia_t* cdp; +#endif + int sector; + int start_sector; + int end_sector; + cd_info_t *cd_info; +} cdda_priv; + +cd_info_t* cd_info_new(); +void cd_info_free(cd_info_t *cd_info); +cd_track_t* cd_info_add_track(cd_info_t *cd_info, char *track_name, unsigned int track_nb, unsigned int min, unsigned int sec, unsigned int msec, unsigned long frame_begin, unsigned long frame_length); +cd_track_t* cd_info_get_track(cd_info_t *cd_info, unsigned int track_nb); + +void cd_info_debug(cd_info_t *cd_info); + +#endif // __CDD_H__ -- cgit v1.2.3