diff options
author | Paul Gevers <elbrus@debian.org> | 2013-04-26 21:50:18 +0200 |
---|---|---|
committer | Paul Gevers <elbrus@debian.org> | 2013-04-26 21:50:18 +0200 |
commit | 73cc5ebf6fd9c26a19242959575ae29f5bdd1847 (patch) | |
tree | b800ce561a5aea24d14997d0dff9b5d06511d8b2 /src/audiocd.c | |
parent | 1ed2c140879a11bd25c960775eb9cbf4218ffc2c (diff) |
Imported Upstream version 8.2.0
Diffstat (limited to 'src/audiocd.c')
-rw-r--r-- | src/audiocd.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/src/audiocd.c b/src/audiocd.c index 0ea0b77..537c405 100644 --- a/src/audiocd.c +++ b/src/audiocd.c @@ -23,12 +23,12 @@ char tag[MAX_TAG], label[max_phrase_len]; extern char cd_dev[]; extern char daisy_title[], bookmark_title[], sound_dev[]; int current, displaying, total_items, max_y, cddb_flag; -extern daisy_t daisy[]; +extern daisy_t daisy[]; pid_t player_pid, daisy_player_pid; float speed, total_time; +extern sox_effects_chain_t *effects_chain; int get_tag_or_label (xmlTextReaderPtr); -extern FILE *jos; float calc_track_time (char *file) { @@ -79,6 +79,12 @@ void get_cddb_info () } // if if (strcasestr (str, "TTITLE")) { + char l[MAX_STR + 1]; + + snprintf (l, MAX_STR, "TTITLE%d=", i); +// some titles are spanned over more lines + if (strstr (str, l) == NULL) + continue; strncpy (daisy[i].label, strchr (str, '=') + 1, max_phrase_len - 1); if (strchr (daisy[i].label, '\n')) *strchr (daisy[i].label, '\n') = 0; @@ -105,7 +111,7 @@ void get_toc_audiocd (char *dev) { snprintf (daisy[current].label, 15, "Track %2d", current + 1); snprintf (daisy[current].filename, MAX_STR - 1, - "%s/Track %d.wav", dir, current + 1); // jos + "%s/Track %d.wav", dir, current + 1); daisy[current].first_lsn = cdio_get_track_lsn (cd, first_track + current); if (displaying == max_y) @@ -129,3 +135,12 @@ void get_toc_audiocd (char *dev) if (cddb_flag != 'n') get_cddb_info (); } // get_toc_audiocd + +void set_drive_speed (char *dev, int drive_speed) +{ + CdIo_t *cd; + + cd = cdio_open (dev, DRIVER_UNKNOWN); + cdio_set_speed (cd, drive_speed); + cdio_destroy (cd); +} // set_drive_speed |