diff options
author | bertrand <bertrand@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-09-17 19:51:12 +0000 |
---|---|---|
committer | bertrand <bertrand@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-09-17 19:51:12 +0000 |
commit | 38f81cf1481eee1122b75f5c78d73dbaadac91b2 (patch) | |
tree | b7e9a7aee46791162effe3042b40de75bba25339 /libmpdemux | |
parent | 12ec7ec1b2e5435271cac977edcf0291454f8da4 (diff) | |
download | mpv-38f81cf1481eee1122b75f5c78d73dbaadac91b2.tar.bz2 mpv-38f81cf1481eee1122b75f5c78d73dbaadac91b2.tar.xz |
Moved all the cdinfo specific from cddb to a standalone file(cdinfo.c), so
if no network, cdda can still be compiled.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7432 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux')
-rw-r--r-- | libmpdemux/cddb.c | 117 |
1 files changed, 1 insertions, 116 deletions
diff --git a/libmpdemux/cddb.c b/libmpdemux/cddb.c index 7c0f8764a1..05ddc427d2 100644 --- a/libmpdemux/cddb.c +++ b/libmpdemux/cddb.c @@ -630,124 +630,9 @@ cddb_resolve(char **xmcd_file) { /******************************************************************************************************************* * - * xmcd parser, cd info list + * xmcd parser * *******************************************************************************************************************/ - -cd_info_t* -cd_info_new() { - cd_info_t *cd_info = NULL; - - cd_info = (cd_info_t*)malloc(sizeof(cd_info_t)); - if( cd_info==NULL ) { - printf("Memory allocation failed\n"); - return NULL; - } - - memset(cd_info, 0, sizeof(cd_info_t)); - - return cd_info; -} - -void -cd_info_free(cd_info_t *cd_info) { - cd_track_t *cd_track, *cd_track_next; - int i; - if( cd_info==NULL ) return; - if( cd_info->artist!=NULL ) free(cd_info->artist); - if( cd_info->album!=NULL ) free(cd_info->album); - if( cd_info->genre!=NULL ) free(cd_info->genre); - - cd_track_next = cd_info->first; - while( cd_track_next!=NULL ) { - cd_track = cd_track_next; - cd_track_next = cd_track->next; - if( cd_track->name!=NULL ) free(cd_track->name); - free(cd_track); - } -} - -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_track, current_track; - - if( cd_info==NULL || track_name==NULL ) return NULL; - - cd_track = (cd_track_t*)malloc(sizeof(cd_track_t)); - if( cd_track==NULL ) { - printf("Memory allocation failed\n"); - return NULL; - } - memset(cd_track, 0, sizeof(cd_track_t)); - - cd_track->name = (char*)malloc(strlen(track_name)+1); - if( cd_track->name==NULL ) { - printf("Memory allocation failed\n"); - free(cd_track); - return NULL; - } - strcpy(cd_track->name, track_name); - cd_track->track_nb = track_nb; - cd_track->min = min; - cd_track->sec = sec; - cd_track->msec = msec; - cd_track->frame_begin = frame_begin; - cd_track->frame_length = frame_length; - - if( cd_info->first==NULL ) { - cd_info->first = cd_track; - } - if( cd_info->last!=NULL ) { - cd_info->last->next = cd_track; - } - - cd_track->prev = cd_info->last; - - cd_info->last = cd_track; - cd_info->current = cd_track; - - cd_info->nb_tracks++; - - return cd_track; -} - -cd_track_t* -cd_info_get_track(cd_info_t *cd_info, unsigned int track_nb) { - cd_track_t *cd_track=NULL; - - if( cd_info==NULL ) return NULL; - - cd_track = cd_info->first; - while( cd_track!=NULL ) { - if( cd_track->track_nb==track_nb ) { - return cd_track; - } - cd_track = cd_track->next; - } - return NULL; -} - -void -cd_info_debug(cd_info_t *cd_info) { - cd_track_t *current_track; - printf("================ CD INFO === start =========\n"); - if( cd_info==NULL ) { - printf("cd_info is NULL\n"); - return; - } - printf(" artist=[%s]\n", cd_info->artist); - printf(" album=[%s]\n", cd_info->album); - printf(" genre=[%s]\n", cd_info->genre); - printf(" nb_tracks=%d\n", cd_info->nb_tracks); - printf(" length= %2d:%02d.%02d\n", cd_info->min, cd_info->sec, cd_info->msec); - current_track = cd_info->first; - while( current_track!=NULL ) { - printf(" #%2d %2d:%02d.%02d @ %7ld\t[%s] \n", current_track->track_nb, current_track->min, current_track->sec, current_track->msec, current_track->frame_begin, current_track->name); - current_track = current_track->next; - } - printf("================ CD INFO === end =========\n"); -} - char* xmcd_parse_dtitle(cd_info_t *cd_info, char *line) { char *ptr, *album; |