cue_tag: added song duration support

Get duration from track_get_length().
This commit is contained in:
Max Kellermann 2009-12-16 22:04:24 +01:00
parent 5649f22322
commit 50ea6a4b5c
1 changed files with 10 additions and 2 deletions

View File

@ -174,7 +174,7 @@ cue_tag_merge(struct tag *a, struct tag *b)
struct tag *
cue_tag(struct Cd *cd, unsigned tnum)
{
struct tag *cd_tag, *track_tag;
struct tag *cd_tag, *track_tag, *tag;
struct Track *track;
assert(cd != NULL);
@ -190,7 +190,15 @@ cue_tag(struct Cd *cd, unsigned tnum)
track_tag = cue_tag_track(track_get_cdtext(track),
track_get_rem(track));
return cue_tag_merge(cd_tag, track_tag);
tag = cue_tag_merge(cd_tag, track_tag);
if (tag == NULL)
return NULL;
/* libcue returns the track duration in frames, and there are
75 frames per second; this formula rounds up */
tag->time = (track_get_length(track) + 74) / 75;
return tag;
}
struct tag *