Opened 5 years ago

Last modified 3 years ago

#15221 new bug

MediaPlayer playlist should not recalculate file metadata in Draw()

Reported by: KapiX Owned by: stippi
Priority: normal Milestone: Unscheduled
Component: Applications/MediaPlayer Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

PlaylistItem tries to cache metadata using attributes, but that doesn't work on read-only volumes. This leads playlist to reopen the file each time it wants to Draw an item, which sometimes blocks playlist window for a few seconds.

Item::Duration() - https://git.haiku-os.org/haiku/tree/src/apps/mediaplayer/playlist/PlaylistItem.cpp#n145

Item::Draw() - https://git.haiku-os.org/haiku/tree/src/apps/mediaplayer/playlist/PlaylistListView.cpp#n137

Change History (4)

comment:1 by leavengood, 5 years ago

Well it should at least cache the duration in memory, that seems like a bad idea to hit the attribute on each draw, let alone reloading the file...

comment:3 by pulkomandy, 3 years ago

Patch merged in hrev55529. As mentionned in the commit message, probably the disk access should be moved out of the display thread. Should we keep this ticket open for that?

comment:4 by KapiX, 3 years ago

Yes, the issue described here is still there (first draw), it just doesn't do it all the time anymore.

Note: See TracTickets for help on using tickets.