From 4244ddb8c2ffb7fd7f91c42f596be493b77501be Mon Sep 17 00:00:00 2001 From: FoxxMD Date: Tue, 11 Nov 2025 19:54:34 +0000 Subject: [PATCH] fix(listenbrainz): Use duration_ms if duration not provided --- src/backend/common/vendor/ListenbrainzApiClient.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/backend/common/vendor/ListenbrainzApiClient.ts b/src/backend/common/vendor/ListenbrainzApiClient.ts index 791c4795..53d856e6 100644 --- a/src/backend/common/vendor/ListenbrainzApiClient.ts +++ b/src/backend/common/vendor/ListenbrainzApiClient.ts @@ -257,6 +257,7 @@ export class ListenbrainzApiClient extends AbstractApiClient { release_name, additional_info: { duration, + duration_ms, track_mbid, artist_mbids, artist_names = [], @@ -276,6 +277,11 @@ export class ListenbrainzApiClient extends AbstractApiClient { albumArtists = unique([...(albumArtists ?? []), ...release_artist_names]) } + let dur: number = duration; + if(dur === undefined && duration_ms !== undefined) { + dur = duration_ms/1000; + } + return { data: { playDate: typeof listened_at === 'number' ? dayjs.unix(listened_at) : dayjs(listened_at), @@ -283,7 +289,7 @@ export class ListenbrainzApiClient extends AbstractApiClient { artists: unique([artist_name, ...artist_names]), albumArtists, album: release_name, - duration, + duration: dur, meta: { brainz: { artist: artist_mbids !== undefined ? artist_mbids : undefined, -- 2.51.2