Skip to content

Commit e397374

Browse files
committed
Use the old code to get the tracks count. This tries to fix bug #1220
1 parent 2963bd6 commit e397374

3 files changed

Lines changed: 23 additions & 0 deletions

File tree

src/mpvoptions.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,9 @@ void MPVProcess::setMedia(const QString & media, bool is_playlist) {
111111
arg << "--term-playing-msg="
112112
"MPV_VERSION=${=mpv-version:}\n"
113113
"INFO_LENGTH=${=duration:${=length}}\n"
114+
#ifdef USE_OLD_TRACKS_COUNT
115+
"INFO_TRACKS_COUNT=${=track-list/count}\n"
116+
#endif
114117
"METADATA_TITLE=${metadata/by-key/title:}\n"
115118
"METADATA_ARTIST=${metadata/by-key/artist:}\n"
116119
"METADATA_ALBUM=${metadata/by-key/album:}\n"

src/mpvprocess.cpp

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,9 @@ void MPVProcess::parseLine(QByteArray ba) {
208208
<< "audio-codec-name" << "audio-params/samplerate" << "audio-params/channel-count"
209209
<< "current-demuxer"
210210
<< "seekable" << "chapters"
211+
#ifndef USE_OLD_TRACKS_COUNT
211212
<< "track-list/count"
213+
#endif
212214
<< "metadata/by-key/title" << "metadata/by-key/artist"
213215
<< "metadata/by-key/album" << "metadata/by-key/genre"
214216
<< "metadata/by-key/date" << "metadata/by-key/track"
@@ -313,6 +315,20 @@ void MPVProcess::parseLine(QByteArray ba) {
313315
if (tag == "INFO_LENGTH") {
314316
md.duration = value.toDouble();
315317
}
318+
#ifdef USE_OLD_TRACKS_COUNT
319+
else
320+
if (tag == "INFO_TRACKS_COUNT") {
321+
int tracks = value.toInt();
322+
for (int n = 0; n < tracks; n++) {
323+
sendCommand(QString("print_text \"INFO_TRACK_%1: "
324+
"${track-list/%1/type} "
325+
"${track-list/%1/id} "
326+
"'${track-list/%1/lang:}' "
327+
"'${track-list/%1/title:}' "
328+
"${track-list/%1/selected}\"").arg(n));
329+
}
330+
}
331+
#endif
316332
}
317333
}
318334

@@ -526,6 +542,7 @@ void MPVProcess::socketReadyRead() {
526542
md.stream_path = data;
527543
}
528544
}
545+
#ifndef USE_OLD_TRACKS_COUNT
529546
else
530547
if (name == "track-list/count") {
531548
int tracks = data.toInt();
@@ -538,6 +555,7 @@ void MPVProcess::socketReadyRead() {
538555
"${track-list/%1/selected}\"").arg(n));
539556
}
540557
}
558+
#endif
541559
else
542560
if (name == "mpv-version") {
543561
QString mpv_version = data;

src/mpvprocess.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@
3232

3333
#define USE_IPC
3434

35+
#define USE_OLD_TRACKS_COUNT
36+
3537
#ifndef USE_OLD_VIDEO_EQ
3638
class SoftVideoEq
3739
{

0 commit comments

Comments
 (0)