Skip to content

Commit c64e39e

Browse files
lyrics: Remove ChartLyrics support. Closes: #1728
http://chartlyrics.com and its API is no longer accessible. It looks like it has been shut down in early 2026.
1 parent 61db0cf commit c64e39e

11 files changed

Lines changed: 24 additions & 268 deletions

File tree

meson.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ if meson.version().version_compare('>= 0.53')
305305
'Delete Files': conf.has('USE_GTK_OR_QT'),
306306
'Libnotify OSD': get_variable('have_notify', false),
307307
'Linux Infrared Remote Control (LIRC)': get_variable('have_lirc', false),
308-
'Lyrics Viewer': get_variable('have_lyrics', false),
308+
'Lyrics Viewer': true,
309309
'MPRIS 2 Server': get_variable('have_mpris2', false),
310310
'Scrobbler 2.0': get_variable('have_scrobbler2', false),
311311
'Song Change': get_option('songchange'),

src/lyrics-common/chart_lyrics_provider.cc

Lines changed: 0 additions & 195 deletions
This file was deleted.

src/lyrics-common/lyrics.h

Lines changed: 1 addition & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@
2222
#ifndef AUDACIOUS_LYRICS_H
2323
#define AUDACIOUS_LYRICS_H
2424

25-
#include <libxml/parser.h>
26-
2725
#define AUD_GLIB_INTEGRATION
2826
#include <libaudcore/audstrings.h>
2927
#include <libaudcore/drct.h>
@@ -42,7 +40,6 @@ struct LyricsState {
4240
Embedded,
4341
Local,
4442
LyricsOVH,
45-
ChartLyrics,
4643
LrcLib
4744
} source = None;
4845

@@ -51,7 +48,7 @@ struct LyricsState {
5148

5249

5350
// LyricProvider encapsulates an entire strategy for fetching lyrics,
54-
// for example from chartlyrics.com, lyrics.ovh or local storage.
51+
// for example from lrclib.net, lyrics.ovh or local storage.
5552
class LyricProvider
5653
{
5754
public:
@@ -82,33 +79,6 @@ class FileProvider : public LyricProvider
8279
};
8380

8481

85-
// ChartLyricsProvider provides a strategy for fetching lyrics using the API
86-
// from chartlyrics.com. It uses the two-step approach since the endpoint
87-
// "SearchLyricDirect" may sometimes return incorrect data. One example is
88-
// "Metallica - Unforgiven II" which leads to the lyrics of "Unforgiven".
89-
class ChartLyricsProvider : public LyricProvider
90-
{
91-
public:
92-
ChartLyricsProvider () {};
93-
94-
bool match (LyricsState state) override;
95-
void fetch (LyricsState state) override;
96-
String edit_uri (LyricsState state) override { return m_lyric_url; }
97-
98-
private:
99-
String match_uri (LyricsState state);
100-
String fetch_uri (LyricsState state);
101-
102-
void reset_lyric_metadata ();
103-
bool has_match (LyricsState state, xmlNodePtr node);
104-
105-
int m_lyric_id = -1;
106-
String m_lyric_checksum, m_lyric_url, m_lyrics;
107-
108-
const char * m_base_url = "http://api.chartlyrics.com/apiv1.asmx";
109-
};
110-
111-
11282
// LrcLibProvider provides a strategy for fetching lyrics using the LRCLIB API.
11383
class LrcLibProvider : public LyricProvider
11484
{
@@ -141,7 +111,6 @@ class LyricsOVHProvider : public LyricProvider
141111

142112

143113
extern FileProvider file_provider;
144-
extern ChartLyricsProvider chart_lyrics_provider;
145114
extern LrcLibProvider lrclib_provider;
146115
extern LyricsOVHProvider lyrics_ovh_provider;
147116
LyricProvider * remote_source ();

src/lyrics-common/preferences.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ static const char * const defaults[] = {
4141

4242
static const ComboItem remote_sources[] = {
4343
ComboItem (N_("Nowhere"), "nowhere"),
44-
ComboItem ("chartlyrics.com", "chartlyrics.com"),
4544
ComboItem ("lrclib.net", "lrclib.net"),
4645
ComboItem ("lyrics.ovh", "lyrics.ovh")
4746
};

src/lyrics-common/utils.cc

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,6 @@ LyricProvider * remote_source ()
2828
{
2929
String source = aud_get_str (CFG_SECTION, "remote-source");
3030

31-
if (! strcmp (source, "chartlyrics.com"))
32-
return & chart_lyrics_provider;
33-
3431
if (! strcmp (source, "lrclib.net"))
3532
return & lrclib_provider;
3633

src/lyrics-gtk/Makefile

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
PLUGIN = lyrics-gtk${PLUGIN_SUFFIX}
22

3-
SRCS = ../lyrics-common/chart_lyrics_provider.cc \
4-
../lyrics-common/file_provider.cc \
3+
SRCS = ../lyrics-common/file_provider.cc \
54
../lyrics-common/lrclib_provider.cc \
65
../lyrics-common/lyrics_ovh_provider.cc \
76
../lyrics-common/utils.cc \
@@ -15,5 +14,5 @@ plugindir := ${plugindir}/${GENERAL_PLUGIN_DIR}
1514
LD = ${CXX}
1615

1716
CFLAGS += ${PLUGIN_CFLAGS}
18-
CPPFLAGS += ${PLUGIN_CPPFLAGS} ${GTK_CFLAGS} ${GLIB_CFLAGS} ${JSON_GLIB_CFLAGS} ${XML_CFLAGS} -I../..
19-
LIBS += ${GTK_LIBS} ${GLIB_LIBS} ${JSON_GLIB_LIBS} ${XML_LIBS} -laudgui
17+
CPPFLAGS += ${PLUGIN_CPPFLAGS} ${GTK_CFLAGS} ${GLIB_CFLAGS} ${JSON_GLIB_CFLAGS} -I../..
18+
LIBS += ${GTK_LIBS} ${GLIB_LIBS} ${JSON_GLIB_LIBS} -laudgui

src/lyrics-gtk/lyrics-gtk.cc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ EXPORT LyricsGtk aud_plugin_instance;
5252
const PluginPreferences LyricsGtk::prefs = {{widgets}};
5353

5454
FileProvider file_provider;
55-
ChartLyricsProvider chart_lyrics_provider;
5655
LrcLibProvider lrclib_provider;
5756
LyricsOVHProvider lyrics_ovh_provider;
5857

src/lyrics-gtk/meson.build

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,18 @@
1-
have_lyrics = xml_dep.found()
2-
31
json_glib_dep = dependency('json-glib-1.0', version: '>= 1.0', required: true)
42

5-
lyrics_deps = [audacious_dep, audgui_dep, gtk_dep, glib_dep, json_glib_dep, xml_dep]
3+
lyrics_deps = [audacious_dep, audgui_dep, gtk_dep, glib_dep, json_glib_dep]
64
lyrics_src = [
7-
'../lyrics-common/chart_lyrics_provider.cc',
85
'../lyrics-common/file_provider.cc',
96
'../lyrics-common/lrclib_provider.cc',
107
'../lyrics-common/lyrics_ovh_provider.cc',
118
'../lyrics-common/utils.cc',
129
'lyrics-gtk.cc'
1310
]
1411

15-
if have_lyrics
16-
shared_module('lyrics-gtk',
17-
lyrics_src,
18-
dependencies: lyrics_deps,
19-
name_prefix: '',
20-
install: true,
21-
install_dir: general_plugin_dir
22-
)
23-
endif
12+
shared_module('lyrics-gtk',
13+
lyrics_src,
14+
dependencies: lyrics_deps,
15+
name_prefix: '',
16+
install: true,
17+
install_dir: general_plugin_dir
18+
)

src/lyrics-qt/Makefile

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
PLUGIN = lyrics-qt${PLUGIN_SUFFIX}
22

3-
SRCS = ../lyrics-common/chart_lyrics_provider.cc \
4-
../lyrics-common/file_provider.cc \
3+
SRCS = ../lyrics-common/file_provider.cc \
54
../lyrics-common/lrclib_provider.cc \
65
../lyrics-common/lyrics_ovh_provider.cc \
76
../lyrics-common/utils.cc \
@@ -15,5 +14,5 @@ plugindir := ${plugindir}/${GENERAL_PLUGIN_DIR}
1514
LD = ${CXX}
1615

1716
CFLAGS += ${PLUGIN_CFLAGS}
18-
CPPFLAGS += ${PLUGIN_CPPFLAGS} ${QT_CFLAGS} ${GLIB_CFLAGS} ${XML_CFLAGS} -I../..
19-
LIBS += ${QT_LIBS} ${GLIB_LIBS} ${XML_LIBS}
17+
CPPFLAGS += ${PLUGIN_CPPFLAGS} ${QT_CFLAGS} ${GLIB_CFLAGS} -I../..
18+
LIBS += ${QT_LIBS} ${GLIB_LIBS}

src/lyrics-qt/lyrics-qt.cc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ EXPORT LyricsQt aud_plugin_instance;
6565
const PluginPreferences LyricsQt::prefs = {{widgets}};
6666

6767
FileProvider file_provider;
68-
ChartLyricsProvider chart_lyrics_provider;
6968
LrcLibProvider lrclib_provider;
7069
LyricsOVHProvider lyrics_ovh_provider;
7170

0 commit comments

Comments
 (0)