[mythtv-commits] [MythTV/mythtv] 1236ae: Fix musicmetadata handling of compilations.
Ian Campbell
noreply at github.com
Sat Jun 6 14:18:29 UTC 2020
Branch: refs/heads/master
Home: https://github.com/MythTV/mythtv
Commit: 1236aef0ae520294446ed91d91ed0e988976e183
https://github.com/MythTV/mythtv/commit/1236aef0ae520294446ed91d91ed0e988976e183
Author: Ian Campbell <ijc at hellion.org.uk>
Date: 2020-06-06 (Sat, 06 Jun 2020)
Changed paths:
M mythtv/libs/libmythmetadata/metaioflacvorbis.cpp
M mythtv/libs/libmythmetadata/musicfilescanner.cpp
M mythtv/libs/libmythmetadata/musicfilescanner.h
M mythtv/libs/libmythmetadata/musicmetadata.cpp
M mythtv/libs/libmythmetadata/musicmetadata.h
M mythtv/programs/mythutil/commandlineparser.cpp
M mythtv/programs/mythutil/musicmetautils.cpp
Log Message:
-----------
Fix musicmetadata handling of compilations.
Fixes #13585
Closes #192
Signed-off-by: David Hampton <mythtv at love2code.net>
-----
Squashed commit of the following:
commit ca6ffb883c9f32ec8a7f1461a0b4d71914e3c210
Author: Ian Campbell <ijc at hellion.org.uk>
Date: Mon Mar 16 20:18:29 2020 +0800
musicmetadata: check for empty field before dumping to db
This ensures all the fields are properly filled in. In particular it ensures
that non-compilation albums have the compilation artist filled in to match the
artist, otherwise they all end up with "Unknown Artist" which in turn means
that albums which happen to have the same title (e.g. "Greatest Hits") all get
lumped into one.
commit 88418b6c7c400d04440eeeaf232f571a1463b09a
Author: Ian Campbell <ijc at hellion.org.uk>
Date: Mon Mar 16 20:02:28 2020 +0800
musicmetadata: clear id fields when main field is set
... otherwise they are never recalculated when the actual value changes.
commit a0e93004c18f3a34c2c2d450af72366860a19b4e
Author: Ian Campbell <ijc at hellion.org.uk>
Date: Sun Mar 15 15:35:32 2020 +0800
musicmetadata: Fully update music_albums, including name and artist
Since these may have changed.
commit 30898722aebbcfbd9d28557fcdbf2324379db2b6
Author: Ian Campbell <ijc at hellion.org.uk>
Date: Sun Mar 15 15:33:43 2020 +0800
musicmetadata: Do not call `ensureSortFields` after `checkEmptyFields`
The latter already calls the former right at the end.
commit 2e4a0e93768142c05bcfcd1b58f1b7db7bbde609
Author: Ian Campbell <ijc at hellion.org.uk>
Date: Fri Feb 28 07:15:41 2020 +0800
musicmetadata: ensure compilation artist id is always set
I was observing that I had one `music_albums` entry per track on each
compilation album after the album was scanned the second time (first time it
went in correctly).
The issue was that on reloading from the DB the field was not being initialised
so remained as `-1` when the entry came to be written back, which because the
field in the DB is `unsigned` ended up being stored as `0`, so when subsequent
lookups try to find the album it failed every time (since the 0 in the database
matches neither -1 nor the >0 correct value) and a fresh one is inserted for
every track.
Fix this by adding and using `{get,set}CompilationArtistId` corresponding to
the uses of `{get,set}ArtistId`. I broke out `getCompilationArtistId` from the
within exiting `getArtistId` implementation.
commit 56506e477ceb815081ed05aea3ff6656413b592a
Author: Ian Campbell <ijc at hellion.org.uk>
Date: Wed Feb 19 20:05:22 2020 +0800
metaioflacvorbis: Handle ALBUMARTIST as a fallback for COMPILATION_ARTIST
Although there is no real standard this is as described in
https://picard.musicbrainz.org/docs/mappings/ and what one gets by default
using the picard tool (as I do).
commit 1e303b005e4b613e4b965b1a5cbdc830b64020c2
Author: Ian Campbell <ijc at hellion.org.uk>
Date: Thu Feb 27 20:00:05 2020 +0800
Support `mythutil --scanmusic --force` to ignore file timestamps
Useful after an upgrade (or while hacking) or if something else changed which
doesn't affect the timestamp of the file.
More information about the mythtv-commits
mailing list