Commit graph

1638 commits

Author SHA1 Message Date
Dave Hayes
93d1b646f4 Deal with unexpected or missing SoundCheck values
* Deals with gain values of 0 in SoundCheck files by interpreting them
  as 0.0dB rather than causing an exception
* Return default values if SoundCheck tag is malformed in some way
* Other misc changes for compactness
2013-02-07 08:46:27 -06:00
Dave Hayes
8a3221abd2 Adds support for SoundCheck
* Adds 2 functions to convert between SoundCheck and ReplayGain
 * Adds relevant StorageStyle to rg_track_* for SoundCheck
 * Adds a new packing type for SoundCheck
 * Modifies StorageStyle to accept a lang argument
 * Modifies StorageStyle to allow specifying Packed out_type
 * Modifies MediaField to write COMM frames with a lang attribute
2013-02-06 13:57:20 -06:00
Adrian Sampson
6a7034d31e Merge pull request #95 from mrmachine/require-overrides-default
Override implicit OR explicit default if `require=True` for `input_optio...
2013-02-05 20:15:30 -08:00
Tai Lee
8e38e5ae84 Override implicit OR explicit default if require=True for input_option(). 2013-02-06 12:55:57 +11:00
Adrian Sampson
976bc20900 collapse separate album and item paths (#92)
Should reduce copypasta overhead significantly.
2013-02-05 12:16:53 -08:00
Adrian Sampson
3860a5ac27 lastgenre: "auto" config option 2013-02-05 12:02:51 -08:00
Adrian Sampson
e50e28dc38 canonicalize original genre (#92) 2013-02-05 11:58:24 -08:00
Adrian Sampson
d1e752fdeb simplify configuration handling (#92) 2013-02-05 11:51:32 -08:00
Adrian Sampson
f38bed787e remove verbose option (#92)
The lastgenre command should always log what it's doing so the user can see
the progress being made. If you really don't want any output, just pipe to
/dev/null.
2013-02-05 11:40:04 -08:00
Adrian Sampson
0c29c52f8c changelog for #92 2013-02-05 11:36:27 -08:00
Adrian Sampson
1fe36057b0 Python style and legibility cleanup for #92 2013-02-05 11:34:17 -08:00
Adrian Sampson
cd2d4c9b8a Merge pull request #92 from pscn/master
lastgenre improvements
2013-02-05 10:31:46 -08:00
Adrian Sampson
5be50fbb38 echonest_tempo: skip when missing artist or title 2013-02-05 10:28:24 -08:00
Adrian Sampson
2b4a70227d correct changelog credits for @mrmachine 2013-02-05 10:15:39 -08:00
Adrian Sampson
07e1366fc6 changelog for #94 2013-02-05 09:57:13 -08:00
Adrian Sampson
5f2a8a21ac Merge pull request #94 from daveisadork/m4a-replaygain
Adds support for Replay Gain tags on MP4 files
2013-02-05 09:55:10 -08:00
Dave Hayes
585d0e9c73 Ugh, more typos. 2013-02-05 07:35:22 -06:00
Dave Hayes
ca653dafb8 Fixes a typo. Whoops. 2013-02-05 07:16:45 -06:00
Dave Hayes
bc795fe4a0 Adds support for Replay Gain tags on MP4 files
* Stores Replay Gain info in MP4 files using the format
   '---:com.apple.iTunes:replaygain_*' which is used by FB2K
2013-02-05 07:09:15 -06:00
root
e730e18b62 reverted de-couling of album.genre and item.genre 2013-02-05 08:30:10 +01:00
root
f83e9fb8bb qbugfix 2013-02-05 08:13:36 +01:00
Adrian Sampson
d544c832c7 changelog, docs, and style tweaks for #93 2013-02-04 22:44:04 -08:00
Adrian Sampson
ef5c23e184 Merge pull request #93 from steinitzu/prune-dirs-clutter
Customizeable clutter when pruning directories
2013-02-04 22:35:43 -08:00
steini
10758c487f Configurable list of patterns which will be ignored when pruning empty directories.
* util.prune_dirs modified to accept glob patterns as clutter to determine emptiness.
* config option, 'clutter' (a list of filenames/glob patterns)
* ImportTask.prune passes this option's value to prune_dirs.
2013-02-04 23:41:38 +00:00
Peter Schnebel
936fdc303d Added track to source options in the docs. 2013-02-04 22:39:20 +01:00
Peter Schnebel
30dff5afff cleaned up, removed debug 2013-02-04 21:47:35 +01:00
Peter Schnebel
bd7303459e removed debug messages (i should really use git more) 2013-02-04 21:47:09 +01:00
Peter Schnebel
4df9521007 experimental track / album / artist based genre stuff per item 2013-02-04 20:24:22 +01:00
Adrian Sampson
b6e7e41269 remove a redundant slash pointed out by @mrmachine 2013-02-03 23:17:31 -08:00
Adrian Sampson
be83c38320 tiny line wrap change 2013-02-03 23:08:25 -08:00
Adrian Sampson
7456ebf38b Merge pull request #91 from mrmachine/multi-disc
Detect false positive markers in root/parent directories.
2013-02-03 22:55:32 -08:00
Tai Lee
d9d2ddac23 Detect false positive markers in root/parent directories.
For example, catalogue numbers like "[REACT217]". This shouldn't bypass the
nested multi-disc detection and automatically include all subdirs.

Do nested multi-disc detection first, so that `collapse_pat` is only set for
flattened albums, and we can skip the ancestry check on subsequent folders.
2013-02-04 17:04:12 +11:00
Adrian Sampson
67845f3fb5 use unicode for import log
We pass all the paths involved through displayable_path now.
2013-02-03 18:47:31 -08:00
Adrian Sampson
194cbc2903 fix for the above fix 2013-02-03 18:23:19 -08:00
Adrian Sampson
4d55702497 don't save sentinels in incremental history
This was doing nothing silently before, but the call to tuple(None) threw an
unhandled exception.
2013-02-03 18:22:26 -08:00
Adrian Sampson
48194a128e changelog and docs for #89 2013-02-03 12:23:09 -08:00
Adrian Sampson
55ff2784d3 docstring and style fixes (#89)
This uses a simpler way to sort lists case-insensitively. It also sorts the
*files* in a case-insensitive way for consistency.
2013-02-03 12:13:11 -08:00
Adrian Sampson
6ff1ba0474 break up multidisc collapsing tests
Now we can see which aspect fails in bite-sized pieces.
2013-02-03 12:06:10 -08:00
Adrian Sampson
fab52572d3 legibility refactoring in albums_in_dir (#89) 2013-02-03 11:58:49 -08:00
Adrian Sampson
99ed9e03de rename ImportTask.path to paths (#89) 2013-02-03 11:22:27 -08:00
Adrian Sampson
33c24235da Merge pull request #89 from mrmachine/multi-disc
Improved multi-disc album detection.
2013-02-03 11:11:22 -08:00
Adrian Sampson
c706c1f15a changelog entry / tiny doc tweaks for #90 2013-02-03 10:31:15 -08:00
Adrian Sampson
88bd1fdf3b Merge pull request #90 from dangmai/pluginchain
Allow plugins to execute in predictable order
2013-02-03 10:27:23 -08:00
Dang Mai
24bc084724 Add small docs for smartplaylist about chaining 2013-02-03 10:10:29 -05:00
Dang Mai
ea3a7ea45d Run plugins in predictable order
In the config file, if 2 plugins listen to the same event, make sure the
one that is listed first is executed earlier.
2013-02-03 10:00:44 -05:00
Tai Lee
23cd5453d9 Improved multi-disc album detection.
- Remove "part", "volume", "vol." multi-disc markers. These are often
  part of album titles, and not necessarily indicative of a multi-disc
  album. Only look for "CD X" and "disc X" (case insensitive), ignoring
  white space and other non-word characters.

- Don't only expect each disc to be in a subdirectory of a common parent
  directory, with all siblings belonging to the same release. Also match
  any consecutive siblings (even when the parent contains other albums)
  that are named with the same prefix and multi-disc marker.

- The `albums_in_dir(path)` function now always yields a list of paths
  along with each list of items. `ItemTask.path` is now always a list of
  paths.

- The `displayable_path(path)` function now accepts a list of paths, and
  will join them with "; " by default. This can be changed with the
  `separator` argument.

- The `sorted_walk()` function now does a case insensitive sort on
  directories, but still returns case sensitive results. This allows
  better multi-disc album detection.

- The `art_for_album()` function now takes a list of paths as its second
  argument, instead of a single path.
2013-02-03 23:51:31 +11:00
Adrian Sampson
4f7e738f82 changelog and doc fixes for #88 2013-02-02 12:56:08 -08:00
Adrian Sampson
0be319767f fixes and refactoring for lastgenre.source (#88)
This provides a default for source, preventing a crash when not present in the
user's config.

It also refactors the source decision to a helper function, _lastfm_obj, to
avoid copypasta.
2013-02-02 12:52:43 -08:00
Adrian Sampson
a21e3ca344 Merge pull request #88 from pdf/lastgenre_source_selection
Allow selection of source for genre information (ie - artist vs album)
2013-02-02 12:44:02 -08:00
Adrian Sampson
50a89e790c both release and release group disambig (#87)
This joins the two strings with a comma if both are present.
2013-02-02 12:42:53 -08:00