Lines 26-36
Link Here
|
26 |
#include <cdio/cdio.h> |
26 |
#include <cdio/cdio.h> |
27 |
#include <cdio/cdtext.h> |
27 |
#include <cdio/cdtext.h> |
28 |
#include <cdio/track.h> |
28 |
#include <cdio/track.h> |
29 |
#include <cdio/cdda.h> |
|
|
30 |
#include <cdio/audio.h> |
29 |
#include <cdio/audio.h> |
31 |
#include <cdio/sector.h> |
30 |
#include <cdio/sector.h> |
32 |
#include <cdio/cd_types.h> |
31 |
#include <cdio/cd_types.h> |
33 |
|
32 |
|
|
|
33 |
#if LIBCDIO_VERSION_NUM >= 90 |
34 |
#include <cdio/paranoia/cdda.h> |
35 |
#else |
36 |
#include <cdio/cdda.h> |
37 |
#endif |
38 |
|
34 |
/* libcdio's header files #define these */ |
39 |
/* libcdio's header files #define these */ |
35 |
#undef PACKAGE |
40 |
#undef PACKAGE |
36 |
#undef PACKAGE_BUGREPORT |
41 |
#undef PACKAGE_BUGREPORT |
Lines 274-282
static void cdaudio_set_strinfo (trackin
Link Here
|
274 |
const gchar * performer, const gchar * name, |
279 |
const gchar * performer, const gchar * name, |
275 |
const gchar * genre) |
280 |
const gchar * genre) |
276 |
{ |
281 |
{ |
277 |
g_strlcpy (t->performer, performer, DEF_STRING_LEN); |
282 |
g_strlcpy (t->performer, performer ? performer : "", DEF_STRING_LEN); |
278 |
g_strlcpy (t->name, name, DEF_STRING_LEN); |
283 |
g_strlcpy (t->name, name ? name : "", DEF_STRING_LEN); |
279 |
g_strlcpy (t->genre, genre, DEF_STRING_LEN); |
284 |
g_strlcpy (t->genre, genre ? genre : "", DEF_STRING_LEN); |
280 |
} |
285 |
} |
281 |
|
286 |
|
282 |
/* thread safe (mutex may be locked) */ |
287 |
/* thread safe (mutex may be locked) */ |
Lines 702-724
static void scan_cd (void)
Link Here
|
702 |
} |
707 |
} |
703 |
|
708 |
|
704 |
/* get trackinfo[0] cdtext information (the disc) */ |
709 |
/* get trackinfo[0] cdtext information (the disc) */ |
|
|
710 |
cdtext_t *pcdtext = NULL; |
705 |
if (cdng_cfg.use_cdtext) |
711 |
if (cdng_cfg.use_cdtext) |
706 |
{ |
712 |
{ |
707 |
AUDDBG ("getting cd-text information for disc\n"); |
713 |
AUDDBG ("getting cd-text information for disc\n"); |
708 |
cdtext_t *pcdtext = cdio_get_cdtext (pcdrom_drive->p_cdio, 0); |
714 |
#if LIBCDIO_VERSION_NUM >= 90 |
|
|
715 |
*pcdtext = cdio_get_cdtext (pcdrom_drive->p_cdio); |
716 |
if (pcdtext == NULL) |
717 |
#else |
718 |
pcdtext = cdio_get_cdtext (pcdrom_drive->p_cdio, 0); |
709 |
if (pcdtext == NULL || pcdtext->field[CDTEXT_TITLE] == NULL) |
719 |
if (pcdtext == NULL || pcdtext->field[CDTEXT_TITLE] == NULL) |
|
|
720 |
#endif |
710 |
{ |
721 |
{ |
711 |
AUDDBG ("no cd-text available for disc\n"); |
722 |
AUDDBG ("no cd-text available for disc\n"); |
712 |
} |
723 |
} |
713 |
else |
724 |
else |
714 |
{ |
725 |
{ |
715 |
cdaudio_set_strinfo (&trackinfo[0], |
726 |
cdaudio_set_strinfo (&trackinfo[0], |
716 |
pcdtext->field[CDTEXT_PERFORMER] ? pcdtext-> |
727 |
#if LIBCDIO_VERSION_NUM >= 90 |
717 |
field[CDTEXT_PERFORMER] : "", |
728 |
cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, 0), |
718 |
pcdtext->field[CDTEXT_TITLE] ? pcdtext-> |
729 |
cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, 0), |
719 |
field[CDTEXT_TITLE] : "", |
730 |
cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, 0)); |
720 |
pcdtext->field[CDTEXT_GENRE] ? pcdtext-> |
731 |
#else |
721 |
field[CDTEXT_GENRE] : ""); |
732 |
pcdtext->field[CDTEXT_PERFORMER], |
|
|
733 |
pcdtext->field[CDTEXT_TITLE], |
734 |
pcdtext->field[CDTEXT_GENRE]); |
735 |
#endif |
722 |
} |
736 |
} |
723 |
} |
737 |
} |
724 |
|
738 |
|
Lines 726-732
static void scan_cd (void)
Link Here
|
726 |
gboolean cdtext_was_available = FALSE; |
740 |
gboolean cdtext_was_available = FALSE; |
727 |
for (trackno = firsttrackno; trackno <= lasttrackno; trackno++) |
741 |
for (trackno = firsttrackno; trackno <= lasttrackno; trackno++) |
728 |
{ |
742 |
{ |
729 |
cdtext_t *pcdtext = NULL; |
743 |
#if LIBCDIO_VERSION_NUM < 90 |
730 |
if (cdng_cfg.use_cdtext) |
744 |
if (cdng_cfg.use_cdtext) |
731 |
{ |
745 |
{ |
732 |
AUDDBG ("getting cd-text information for track %d\n", trackno); |
746 |
AUDDBG ("getting cd-text information for track %d\n", trackno); |
Lines 737-752
static void scan_cd (void)
Link Here
|
737 |
pcdtext = NULL; |
751 |
pcdtext = NULL; |
738 |
} |
752 |
} |
739 |
} |
753 |
} |
|
|
754 |
#endif |
740 |
|
755 |
|
741 |
if (pcdtext != NULL) |
756 |
if (pcdtext != NULL) |
742 |
{ |
757 |
{ |
743 |
cdaudio_set_strinfo (&trackinfo[trackno], |
758 |
cdaudio_set_strinfo (&trackinfo[trackno], |
744 |
pcdtext->field[CDTEXT_PERFORMER] ? pcdtext-> |
759 |
#if LIBCDIO_VERSION_NUM >= 90 |
745 |
field[CDTEXT_PERFORMER] : "", |
760 |
cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, trackno), |
746 |
pcdtext->field[CDTEXT_TITLE] ? pcdtext-> |
761 |
cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, trackno), |
747 |
field[CDTEXT_TITLE] : "", |
762 |
cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, trackno)); |
748 |
pcdtext->field[CDTEXT_GENRE] ? pcdtext-> |
763 |
#else |
749 |
field[CDTEXT_GENRE] : ""); |
764 |
pcdtext->field[CDTEXT_PERFORMER], |
|
|
765 |
pcdtext->field[CDTEXT_TITLE], |
766 |
pcdtext->field[CDTEXT_GENRE]); |
767 |
#endif |
750 |
cdtext_was_available = TRUE; |
768 |
cdtext_was_available = TRUE; |
751 |
} |
769 |
} |
752 |
else |
770 |
else |