Bugzilla – Bug 15167
Handling Year for Album and Tracks
Last modified: 2011-04-08 01:38:59 UTC
I have the TYER ID3V2.3 in mp3 files tag set to the year when an album was released, i.e. all the tracks on that album have the same TYER value. If a track on an album was originally released (or, for live performances, performed) in another (earlier) year than when the album was released, I have the TORY tag for that track set to the original release year, i.e. a different value than the TYER value for that track. This means the TORY values of the tracks in one album can differ. For flacs I use DATE instead of TYER and ORIGYEAR instead of TORY. (This was the recommended way of tagging in this thread http://forums.slimdevices.com/showth...59253&page=4.) Earlier SBS only recognized the TYER tag. As of recently SBS also recognizes the TORY tag and the value of the TORY tag takes precedence over the value of the TYER tag. SBS still does not recognize the ORIGYEAR tag (Vorbis comment) in flac files, only the DATE tag (Vorbis comment). 1. An album with a consistent TYER tag for all tracks, but with different TORY values for the tracks, gets in SBS an almost random year value, the value of one of the TORY tags. This means that the album is sorted wrong in many views (the artist page sorted by album year and the browse by year view, for instance). 2. The browse by year view is empty for years where there is no album assigned that year even if there is a track on an album with that year (in the TORY tag), see screen shots in the URL provided. 3. An album with flac files is sorted/treated differently than the same album with mp3 files as regards the year assigned to it even though the same logic is applied regarding the TYER/TORY tag and the DATE/ORIGYEAR tag (Vorbis comment). Solution: a) Introduce a new "album year" field in the SBS database. Fill that field with the TYER value if all tracks on the album have the same TYER value. If this is not the case, fill that field with the TORY value if all tracks on the album have the same TORY value. If those two test did not fill the field, fill it with a value according to the current logic, or with another value that seems appropriate (like the highest of the TYER and TORY values in the tracks on the album). b) Convert the current year field in the SBS database to a "track year" field. c) When listing albums by year for an artist, use the new "album year" field in the SBS database, if the artist is the assigned album artist for that album. If the artist is only a contributing artist/composer etc., or it is a compilation album, use the "track year" value instead when sorting. d) When browsing by year, show for a particular year all albums that include a track with "track year" value corresponding to that year, as well as all albums that have an "album year" value corresponding to that year. e) Read for flac files also the ORIGYEAR tag (Vorbis comment) and treat it the same as the ID3V2.3 tag TORY. A corresponding solution should probably be used for the ID3V2.4 tags TDRC/TDOR tags. I am on 7.4.2 r29389 using Win XP.
comment on solution parts a+b: There already is an "album year" and "track year" in the database: albums.year and tracks.year. albums.year is calculated based on the values within tracks.year for that album id. Not sure what the logic is for this calculation - it seems random which year it picks if there are different tracks.year values (takes the first track year?). part c: I don't understand what you mean by using "track year" if the artist isn't the album artist. eg. if you browse to an artist, and sort albums by year, and a compilation album is listed, the artist could contribute to several songs on the album, each having a different year. I think it should always use album.year for sorting albums by year. When displaying song information, it could show track.year, which could be different to the album. part d is the most important part of this bug; the issue is that only songs where track.year = album.year are displayed. Songs that have a year different to the arbitrary chosen album year are hidden. i.e. this affects compilation albums/best-of albums where each song could have a different year.
(In reply to comment #1) > part c: I don't understand what you mean by using "track year" if the artist > isn't the album artist. eg. if you browse to an artist, and sort albums by > year, and a compilation album is listed, the artist could contribute to several > songs on the album, each having a different year. > > I think it should always use album.year for sorting albums by year. When > displaying song information, it could show track.year, which could be different > to the album. You are correct (regarding part c, where a contributing artist appears on several tracks with different track years). It is probably wise, and easiest, to always use album year when sorting albums by year in the browse by artists, albums and genre views; regarding the browse by years view see part d above.
What version of SBS are you running?
(In reply to comment #3) > What version of SBS are you running? I am currently on7.4.2 r29536 using Win XP and still experiencing the behaviour reported. Philip Meyer, who appears to use 7.5, are also experiencing the behaviour reported, see the provided URL for a forum discussion on this, including screen shots.
this has come up again, http://forums.slimdevices.com/showthread.php?p=548542#post548542, and since tiny SC/Touch SBS doesn't support plugins CustomBrowse isn't always available as a work around. I see this behaviour on 7.5.0 production. Since CustomeBrowse gets this to work, it can't be dependent on a new schema, as Phil points out albums.year and tracks.year are both available. [not sure if I can or should edit out that keyword, which may be delaying this] item d) of original comment is all that should be required [Note to vagskal: I can't comment on your mapping issues - that maybe a separate bug once this functionality is fixed]
This should be the same as bug 3911 that says it is fixed. That bug is not fixed. I have albums with multiple years. If I isolate that album and create a separate database only one of the years shows the album. All years for the album show in the display by Years in both the web UI and on the Duet controller. If I select each year only one will show the album, the other years for this album show 0 tracks on 0 albums by 0 artists. If the years are shown in the display, when the year is selected the albums containing tracks in that year should be displayed. If there is no album in the tag the album should show as "Unknown". Each album should allow drill down to the songs on that album that match the year being displayed. There should also be a "All Songs" drill down that would list all songs on all albums that match the year being displayed.
Alan, i thought this might be inside the scope of onebrowser