Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bug: Artworks are not displayed in the Playbar/Queue #43

Open
onl1ner opened this issue Feb 24, 2024 · 4 comments
Open

bug: Artworks are not displayed in the Playbar/Queue #43

onl1ner opened this issue Feb 24, 2024 · 4 comments
Labels
bug Something isn't working
Milestone

Comments

@onl1ner
Copy link
Member

onl1ner commented Feb 24, 2024

Artworks are not displayed for some songs. This is likely a framework issue

@onl1ner onl1ner added the bug Something isn't working label Feb 24, 2024
@onl1ner onl1ner added this to macOS Feb 24, 2024
@onl1ner
Copy link
Member Author

onl1ner commented Feb 25, 2024

This is also a problem for entries in the queue. Every item has nil in the artwork property

@onl1ner onl1ner changed the title bug: Artworks are not displayed in the Playbar bug: Artworks are not displayed in the Playbar/Queue Feb 25, 2024
@onl1ner onl1ner moved this to Backlog in macOS Feb 25, 2024
@onl1ner onl1ner added this to the 0.2.0 milestone Mar 29, 2024
@CursiveHello
Copy link

CursiveHello commented Dec 30, 2024

Hey Tamerlan, Linus here. Thanks for keeping a small, simple codebase!

I’ve found a worse bug and I think it has the same root cause.

Whenever I play an Apple Music song, the audio starts, but the app freezes and CPU and memory usage start climbing. The console repeatedly shows -[ITLibraryArtworkDataSource visualIdenticalityIdentifierForCatalog:]: Missing Catalyst implementation!. It doesn’t happen when I play a purchased song.

I’ve pinpointed the culprit: in MusicArtworkImage, if I comment out the call to MusicKit’s ArtworkImage, the bug goes away. So I think it’s a bug in MusicKit. Demo code here.

That leaves the question of why ArtworkImage works sometimes but not always. Does it behave differently when audio is playing, or with certain Artwork arguments?

Freeze.mov

@onl1ner
Copy link
Member Author

onl1ner commented Jan 3, 2025

Hi Linus,

In the Library page, there are cases where artwork does not return an image URL. However, the ArtworkImage implementation in MusicKit somehow manages to retrieve and use it. This is why the MusicArtworkImage component includes a fallback to ArtworkImage.

Currently, the Library page is quite unstable due to inconsistencies in the return values for entries such as albums and playlists. These differences include varying IDs for the entries themselves and for the songs within them. As a result, this part of the app requires refinement.

I wish I had more free time to address this and implement a solution. In the meantime, if you feel up to the challenge, please feel free to propose and introduce your solution.

Thanks for digging into the issue!

@CursiveHello
Copy link

varying IDs for the entries themselves and for the songs within them

Oof, I think I know what you mean. In my experience, the MusicItemIDs in a MusicPlayer’s queue don’t match the ones you just told it to play. It’s one reason I still use Media Player sometimes.

Thanks for the info!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: Backlog
Development

No branches or pull requests

2 participants