libcdio-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Libcdio-devel] cd-text not working for bin/cue driver?


From: Leon Merten Lohse
Subject: Re: [Libcdio-devel] cd-text not working for bin/cue driver?
Date: Thu, 18 Oct 2012 20:50:16 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Great!
Should have known the +1 comes from i_first_track already.

Just pushed the patch. See ff3eb9f22

On Thu, Oct 18, 2012 at 02:15:38PM -0400, Robert Fuller wrote:
> I think you don't need the + 1 here in bincue.c:
> 
>           cdtext_set (cd->gen.cdtext, cdtext_key, (uint8_t*)
> strtok(NULL, "\"\t\n\r"),
>                       (-1 == i ? 0 : cd->gen.i_first_track + i + 1),
>                       "ISO-8859-1");
> 
> On Thu, Oct 18, 2012 at 1:58 PM, Robert Fuller
> <address@hidden> wrote:
> > Well, I solved part of the problem.  Apparently, make install does not
> > update /etc/ld.so.cache.  I had to run ldconfig manually.  In other
> > words, my application was using the older libcdio rather than the
> > newer libcdio.
> >
> > So, now I am getting cd-text, but it seems to be off by one track.
> > For example, for the cue file I sent "cd-info" gives me back this:
> >
> > Language 0 'English':
> > CD-TEXT for Disc:
> >         TITLE: Music From Big Pink
> >         PERFORMER: The Band
> > CD-TEXT for Track  1:
> > CD-TEXT for Track  2:
> >         TITLE: Tears Of Rage
> >         PERFORMER: The Band
> > CD-TEXT for Track  3:
> >         TITLE: To Kingdome Come
> >         PERFORMER: The Band
> >
> > Note that the CD-TEXT for Track 2 is really the CD-TEXT for Track 1.
> > The CD-TEXT for Track 3 is really the CD-TEXT for Track 2.  etc.  What
> > does it do for you?
> >
> > Rob
> >
> > On Thu, Oct 18, 2012 at 7:04 AM, Leon Merten Lohse <address@hidden> wrote:
> >> Second try...
> >>
> >> What exactly is not working for you? I tried to feed your .cue to
> >> cd-info and it behaved as expected.
> >> There is a little quirk, though as there has to be a .bin sharing the
> >> cue's basename.
> >>
> >> On Wed, Oct 17, 2012 at 07:16:22PM -0400, Robert William Fuller wrote:
> >>> Also, there does not seem to be a unit test for getting cd-text from
> >>> bin/cue which is perhaps why this was missed?
> >>
> >> There are some cue parsing tests, although they do not target the
> >> cue/bin cdtext parsing algorithm alone. See test/check_cue.sh.
> >>
> >>> There IS a unit test for getting cd-text from nrg (Nero) files.  I had
> >>> to look at old emails to refresh my memory but apparently I wrote that
> >>> code as well as the original support for cd-text from Nero (as an aid to
> >>> my memory, this should be added to my spot in the THANKS file: "various
> >>> fixes to Nero driver and cd-text for Nero?")
> >>>
> >>> Rob
> >>>
> >>> On 10/17/2012 06:53 PM, Robert William Fuller wrote:
> >>> > As promised, I have started testing with libcdio from git. I am seeing
> >>> > what might be some problems with the new cd-text support. Specifically,
> >>> > I am reading a bin/cue image and it does not seem to be getting the
> >>> > cd-text fields from the cue file. It works with 0.83, but not with git.
> >>> >
> >>> > I will include my code and the cue file. The code is part of my
> >>> > cd-ripper. It prints out the cd-text fields as part of creating a new
> >>> > cue sheet. Maybe I am doing something wrong with the new interface.
> >>> > Here's my code:
> >>> >
> >>> > void cdio2_fprint_cd_text(FILE *cueFile, CdIo_t *cdObj, track_t track,
> >>> > const char *prefix)
> >>> > {
> >>> > int i, quoted;
> >>> > cdtext_t *cdtext;
> >>> > const char *field;
> >>> >
> >>> > #ifdef CUED_HAVE_CDTEXT_V2
> >>> > cdtext = cdio_get_cdtext(cdObj);
> >>> > #else
> >>> > cdtext = cdio_get_cdtext(cdObj, track);
> >>> > #endif
> >>> >
> >>> > if (cdtext) {
> >>> > for (i = MIN_CDTEXT_FIELD; i < MAX_CDTEXT_FIELDS; ++i) {
> >>> > #ifdef CUED_HAVE_CDTEXT_V2
> >>> > field = cdtext_get_const(cdtext, (cdtext_field_t) i, track);
> >>> > #else
> >>> > field = cdtext_get_const((cdtext_field_t) i, cdtext);
> >>> > #endif
> >>> > // checking for field[0] is for Nero, which sometime has zero length
> >>> > if (field && field[0]) {
> >>> > quoted = strchr(field, ' ') ? 1 : 0;
> >>> > fprintf(cueFile, "%s%s %s%s%s\n", prefix,
> >>> > cdtext_field2str((cdtext_field_t) i),
> >>> > quoted ? "\"" : "", field, quoted ? "\"" : "");
> >>> > }
> >>> > }
> >>> > }
> >>> > }
> >>> >
> >>> > Here is the cue file that was read by the libcdio bin/cue driver:
> >>> >
> >>> > REM DISCID 8E09C30B
> >>> > REM COMMENT "ExactAudioCopy v0.95b4"
> >>> > PERFORMER "The Band"
> >>> > TITLE "Music From Big Pink"
> >>> > FILE "The Band - Music From Big Pink.wav" WAVE
> >>> > TRACK 01 AUDIO
> >>> > TITLE "Tears Of Rage"
> >>> > PERFORMER "The Band"
> >>> > INDEX 01 00:00:00
> >>> > TRACK 02 AUDIO
> >>> > TITLE "To Kingdome Come"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 05:17:18
> >>> > INDEX 01 05:21:19
> >>> > TRACK 03 AUDIO
> >>> > TITLE "In A Station"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 08:37:34
> >>> > INDEX 01 08:42:16
> >>> > TRACK 04 AUDIO
> >>> > TITLE "Caledonia Mission"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 12:09:39
> >>> > INDEX 01 12:14:59
> >>> > TRACK 05 AUDIO
> >>> > TITLE "The Weight"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 15:07:33
> >>> > INDEX 01 15:12:40
> >>> > TRACK 06 AUDIO
> >>> > TITLE "We Can Talk"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 19:43:60
> >>> > INDEX 01 19:48:38
> >>> > TRACK 07 AUDIO
> >>> > TITLE "Long Black Veil"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 22:49:12
> >>> > INDEX 01 22:53:34
> >>> > TRACK 08 AUDIO
> >>> > TITLE "Chest Fever"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 25:52:20
> >>> > INDEX 01 25:57:08
> >>> > TRACK 09 AUDIO
> >>> > TITLE "Lonesome Suzie"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 31:07:51
> >>> > INDEX 01 31:12:37
> >>> > TRACK 10 AUDIO
> >>> > TITLE "This Wheel's On Fire"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 35:10:43
> >>> > INDEX 01 35:14:40
> >>> > TRACK 11 AUDIO
> >>> > TITLE "I Shall Be Released"
> >>> > PERFORMER "The Band"
> >>> > INDEX 00 38:24:66
> >>> > INDEX 01 38:27:22
> >>>
> >>>
> >>
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]