Please sign in to comment.
Ensure all songs and albums have an artist. This removes need for LEFT
JOIN and avoids the SQLite optimiser limitations whereby it can not flatten a left join on view and results in slow queries. The invented "Missing artist" is unique and different from any other artist that could be scanned from music file tags. It always exists with fixed artist ID = 1. Use temp indices during db update for speed. Move any existsing record with ID = 1. Add AudioLibrary.GetProperties to generically return the missing artist tag artist ID. This could be extended in the future with other music library properties.
- Loading branch information...
Showing with 252 additions and 46 deletions.
- +6 −0 addons/resource.language.en_gb/resources/strings.po
- +18 −0 xbmc/interfaces/json-rpc/AudioLibrary.cpp
- +1 −0 xbmc/interfaces/json-rpc/AudioLibrary.h
- +1 −0 xbmc/interfaces/json-rpc/JSONServiceDescription.cpp
- +10 −0 xbmc/interfaces/json-rpc/schema/methods.json
- +10 −0 xbmc/interfaces/json-rpc/schema/types.json
- +1 −1 xbmc/interfaces/json-rpc/schema/version.txt
- +4 −0 xbmc/music/Artist.h
- +194 −43 xbmc/music/MusicDatabase.cpp
- +5 −0 xbmc/music/MusicDatabase.h
- +2 −2 xbmc/music/tags/MusicInfoTag.cpp