Commit Graph

82 Commits

Author SHA1 Message Date
Frederik "Freso" S. Olesen
4040c95817 Add "%X" template variable for uppercase filename extension. 2013-02-01 17:33:19 +01:00
Thomas Vander Stichele
d61b42490e show us the type 2013-01-15 09:27:07 +01:00
Thomas Vander Stichele
090b9656d5 FEATURE: add --working-directory option
morituri will change to this directory before ripping, so
--output-directory is relative to this.
2013-01-13 16:47:48 +01:00
Thomas Vander Stichele
b5827847ef * morituri/common/program.py:
* morituri/rip/cd.py:
	  feature: add %x for extension to track/disc template.
2012-12-22 23:09:09 +00:00
Thomas Vander Stichele
f987210f6c * morituri/common/program.py:
* morituri/rip/image.py:
	  feature: add %r/%R for release type to track/disc template.
2012-12-22 22:52:48 +00:00
Thomas Vander Stichele
64fb8c9f14 * morituri/common/program.py:
add release id to output.
	* morituri/rip/image.py:
	  add --release-id to rip image retag.  Fixes #96.
2012-12-06 17:42:14 +00:00
Thomas Vander Stichele
0c9d3c552b * morituri/common/program.py:
* morituri/rip/cd.py:
	* morituri/rip/image.py:
	  Add stdout to program.  Use it for getting musicbrainz info.
2012-12-06 16:44:54 +00:00
Thomas Vander Stichele
5ddeca949e move import 2012-12-02 21:57:15 +00:00
Thomas Vander Stichele
b86febb3b1 pep8 fixes 2012-12-02 16:40:46 +00:00
Thomas Vander Stichele
c634dd0e92 * morituri/common/cache.py (added):
* morituri/test/cache (added):
	* morituri/test/cache/result (added):
	* morituri/test/cache/result/fe105a11.pickle (added):
	* morituri/test/test_common_cache.py (added):
	* morituri/common/Makefile.am:
	* morituri/common/program.py:
	* morituri/test/Makefile.am:
	  Extract ResultCache object into separate file.
2012-12-02 16:38:03 +00:00
Thomas Vander Stichele
cba7dbe41a pep8 fixes 2012-11-29 19:54:46 +00:00
Thomas Vander Stichele
f0cb567a0d * morituri/common/program.py:
* morituri/rip/cd.py:
	  Reset rip duration when we continue a rip but have to rerip
	  a track.
2012-11-28 08:19:43 +00:00
Thomas Vander Stichele
e67ad23894 * morituri/common/program.py:
* morituri/program/cdparanoia.py:
	* morituri/result/result.py:
	  Track ripping speed for test and encode per-track.
2012-11-27 08:09:51 +00:00
Thomas Vander Stichele
5b1e2c88a4 patch by: mustbenice
* morituri/common/program.py:
	* morituri/program/cdparanoia.py:
	* morituri/result/logger.py:
	* morituri/result/result.py:
	  Calculate speed of reading track.
	  Output Test and Copy speed per track in log.
2012-11-25 19:54:15 +00:00
Thomas Vander Stichele
26827195c0 * morituri/common/program.py:
Add %y to template for year.  Fixes #98.
2012-11-22 23:22:26 +00:00
Thomas Vander Stichele
9b4e653ae4 * morituri/common/common.py:
* morituri/common/program.py:
	* morituri/image/table.py:
	* morituri/rip/cd.py:
	* morituri/test/test_common_common.py:
	* morituri/test/test_image_toc.py:
	  Handle cases where disc_template and track_template are not in
	  the same directory.
2012-11-22 23:20:44 +00:00
Thomas Vander Stichele
0fab4515c6 pep8 fixes 2012-11-11 23:00:37 +00:00
Thomas Vander Stichele
29f71762da pep8 fixes 2012-11-11 22:23:25 +00:00
Thomas Vander Stichele
53db632202 * morituri/common/program.py:
Use a temp var to make code more readable.
2012-06-24 12:59:19 +00:00
Thomas Vander Stichele
8a7a69a361 * morituri/common/program.py:
Tell us which track is not in the db.
2012-06-24 12:56:37 +00:00
Thomas Vander Stichele
9bf5892dbd patch by: Christophe Fergeau <cfergeau@redhat.com)
* morituri/common/program.py:
	  When morituri finds multiple matches for a given release, it only
	  keeps the releases whose length are the closest to the CD being
	  ripped.
	  However, this currently interacts badly with the --release-id
	  parameter because this duration filtering is done before trying to
	  do the release-id matching. The release that the user has specified
	  may have been removed from the potential matches by the time the
	  release
	  id match is tried.
	  This commit removes the duration filtering when the user explicitly
	  specified a release id. I've observed this bug with the first disc
	  of The Wall (Experience Edition) by the Pink Floyd.
	  Fixes #91.
2012-04-01 20:41:55 +00:00
Thomas Vander Stichele
93f033dfca patch by: Christophe Fergeau <cfergeau@redhat.com)
* morituri/common/program.py:
	  When --release-id is used, we are not making guesses based on the
	  CD lengths, so the message saying that we picked the closest match
	  in duration, which can still trigger, is inappropriate.
2012-04-01 20:40:21 +00:00
Thomas Vander Stichele
c4e170daad * TODO:
* morituri/common/program.py:
	* morituri/rip/cd.py:
	  Add rip cd rip --release-id as an option to select the exact
	  release this disc is a part of.
	  Fixes Radiohead - Pablo Honey and U2 - Achtung Baby
2012-01-23 10:09:24 +00:00
Thomas Vander Stichele
69a1e731a3 * morituri/common/program.py:
Actually return the result from verifyTrack.
	  Debug the cache loading some more.  Make a note for a TODO.
2012-01-22 11:00:55 +00:00
Thomas Vander Stichele
a8a7a33b0a * morituri/common/checksum.py:
* morituri/common/program.py:
	  Fix/add logging.
2012-01-21 18:04:41 +00:00
Thomas Vander Stichele
c2838ad05c * morituri/rip/main.py:
* morituri/common/musicbrainzngs.py:
	* morituri/common/program.py:
	* morituri/rip/cd.py:
	  Add -R option to rip to record API results for debugging.
2011-10-28 17:49:36 +00:00
Thomas Vander Stichele
b5fc509747 * morituri/common/Makefile.am:
* morituri/common/musicbrainzngs.py:
	* morituri/common/program.py:
	* morituri/extern/Makefile.am:
	  Use musicbrainz NGS for ripping.
	  Can now rip Weezer, the Blue Album, both discs.
2011-10-22 15:52:57 +00:00
Thomas Vander Stichele
6ab37720df * morituri/common/Makefile.am:
* morituri/common/musicbrainz.py:
	* morituri/common/program.py:
	* morituri/test/Makefile.am:
	* morituri/test/test_common_musicbrainz.py (added):
	* morituri/common/musicbrainz.py (added):
	  Split off musicbrainz-specific code.
2011-10-19 18:00:11 +00:00
Thomas Vander Stichele
2c27b73d09 * morituri/common/common.py:
Add shrinkPath to write shorter path names.
	* morituri/test/test_common_common.py (added):
	  Add test.
	* morituri/program/cdparanoia.py:
	  Catch ENAMETOOLONG and shrink path.
	* morituri/common/program.py:
	  Update track result's filename if it was shrunk.
	* morituri/rip/cd.py:
	  set the possibly shrunk path on the result.
2011-09-18 15:19:45 +00:00
Thomas Vander Stichele
516a01d47a * morituri/common/program.py:
Add Musicbrainz command.
2011-09-15 14:22:37 +00:00
Thomas Vander Stichele
513706eab6 add ivars to TrackMetadata 2011-09-04 14:21:29 +00:00
Thomas Vander Stichele
2ed3f8837f * morituri/common/program.py:
If any track is missing duration, set the whole album duration
	  to 0.
2011-09-04 14:19:29 +00:00
Thomas Vander Stichele
928e2e9ba7 print out duration before for comparison on musicbrainz 2011-08-15 09:03:13 +00:00
Thomas Vander Stichele
7cff47a8d4 * morituri/common/program.py:
Don't fail if there is no metadata.
2011-08-14 14:48:02 +00:00
Thomas Vander Stichele
e60b6d8441 * morituri/common/program.py:
* morituri/rip/debug.py:
	  Pychecker fixes.
2011-08-14 14:20:06 +00:00
Thomas Vander Stichele
2273db764c * morituri/common/program.py:
* morituri/rip/cd.py:
	  Always print MusicBrainz URL.
2011-08-14 12:20:30 +00:00
Thomas Vander Stichele
d43860bdfb * morituri/test/release.c7d919f4-3ea0-4c4b-a230-b3605f069440.xml:
Add release data for Bettie Serveert, Lamprey
	* morituri/test/test_common_program.py:
	  Add a test for parsing and getting the whole duration.
	* morituri/common/common.py:
	  Add a method to format time.
	* morituri/common/program.py:
	  Add duration to tracks and release metadatas.
	  When there are multiple matches, look up the closest in duration.
	  Make sure that multiple matches closest in duration contain same
	  artist and title.
	  Complain about the other ones.
	* morituri/image/table.py:
	  Add a method to calculate a duration from the table.
	* morituri/test/test_image_table.py:
	  Add a test for it.
2011-08-14 12:18:51 +00:00
Thomas Vander Stichele
63e705578d * doc/release:
Add note on actually running.
	* morituri/common/program.py:
	  Fix when running rip cd rip --unknown
2011-08-13 09:50:07 +00:00
Thomas Vander Stichele
5f8e0a5cc4 * morituri/common/task.py:
Log which task we are notifying progress on.
	* morituri/common/program.py:
	  Solve a problem where a release does not have an .id,
	  which means it's only half in musicbrainz (artist
	  and title, but no URL to the disc)
2011-07-09 10:06:56 +00:00
Thomas Vander Stichele
faf18f32f6 add debug 2011-05-30 13:08:29 +00:00
Thomas Vander Stichele
e47b30610d * morituri/common/program.py:
AccurateRip responses should be treated per track; one response set
	  isn't necessarily from the same pressing.
	  The first response set contains all the highest confidence
	  checksums, and so on in decreasing order.
	  So don't assert about one track having a checksum matching from
	  a different response set.
	  Fixes #5.
2011-05-22 23:26:32 +00:00
Thomas Vander Stichele
f70ba7cb32 * morituri/program/cdparanoia.py:
* morituri/common/encode.py:
	* morituri/common/program.py:
	* morituri/rip/cd.py:
	  Add action and what args to describe task better.
2011-05-19 00:28:36 +00:00
Thomas Vander Stichele
6a8355b109 * morituri/common/program.py:
* morituri/rip/offset.py:
	  When finding the offset, also load and possibly unmount, resolving
	  to the real path for the device.
2011-03-22 17:31:36 +00:00
Thomas Vander Stichele
a05410051c patch by: Ross Burton
* morituri/common/program.py:
	  On compilation albums the album artist is different to the artist.
	  If this is the case, morituri should write both tags.
	  Fixes #43.
2011-01-09 21:34:21 +00:00
Thomas Vander Stichele
1216f13598 patch by: Ross Burton
* morituri/common/program.py:
	  On compilation albums the album artist is different to the artist.
	  If this is the case, morituri should write both tags.
	  Fixes #43.
2011-01-09 21:15:44 +00:00
Thomas Vander Stichele
08fc4f67a6 * morituri/common/program.py:
* morituri/image/table.py:
	* morituri/rip/cd.py:
	  Get CDDB disc id.  Use it to print info when not found on
	  MusicBrainz.
2011-01-02 17:14:26 +00:00
Thomas Vander Stichele
6581261a76 * morituri/common/program.py:
* morituri/rip/cd.py:
	  Add load and eject device.  Do so before and after ripping.
2011-01-01 11:24:26 +00:00
Thomas Vander Stichele
e104981a54 add track 2010-11-08 19:30:45 +00:00
Thomas Vander Stichele
eebd632eef * morituri/common/program.py:
Comment where we got the template variables from.
	* morituri/rip/cd.py:
	  Document the template variables.
2010-07-08 21:37:49 +00:00
Thomas Vander Stichele
757abde725 display checksum as hex instead so it is the same as the other one 2010-05-23 18:33:00 +00:00