Commit Graph

554 Commits

Author SHA1 Message Date
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
83d212a20e * morituri/rip/debug.py:
* morituri/common/musicbrainzngs.py (added):
	  Rewrite using python-musicbrainz-ngs.
	  Add rip debug musicbrainzngs command for testing,
	  seems to work on Weezer - Blue Album - disc 2
2011-10-19 22:37:37 +00:00
Thomas Vander Stichele
ae93a6d5e9 * morituri/extern/Makefile.am:
* morituri/extern/musicbrainzngs/musicbrainz.py (svn:special):
	* morituri/extern/musicbrainzngs/mbxml.py (svn:special):
	* morituri/extern/musicbrainzngs (added):
	* morituri/extern/musicbrainzngs/mbxml.py (added):
	* morituri/extern/musicbrainzngs/__init__.py (added):
	* morituri/extern/musicbrainzngs/musicbrainz.py (added):
	  Pull in my fork of python-musicbrainz-ngs
2011-10-19 22:36:14 +00:00
Thomas Vander Stichele
131535cde5 * morituri/common/musicbrainz.py:
* morituri/rip/debug.py:
	  Doc/output fixes.
2011-10-19 18:45:22 +00:00
Thomas Vander Stichele
3c669a4f29 * morituri/rip/debug.py:
Adapt to splitup.
2011-10-19 18:42:34 +00:00
Thomas Vander Stichele
fa1fba9bc2 * morituri/rip/debug.py:
Add rip debug musicbrainz command to look up information on
	  disc id's.
2011-10-19 18:15:42 +00:00
Thomas Vander Stichele
ef69de48ba * morituri/common/Makefile.am:
* morituri/common/musicbrainz.py:
	* morituri/common/program.py:
	* morituri/test/test_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:36 +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
ad71fa06db * TODO:
* morituri/extern/task/task.py:
	  Instead of chaining next in multi tasks, making the call
	  chain larger (and exceed maximum depth on track 75), schedule
	  it immediately.
2011-10-19 17:34:02 +00:00
Thomas Vander Stichele
9f1ad76fb8 whitespace removal 2011-10-19 17:32:35 +00:00
Thomas Vander Stichele
b15df9a76a add TODO 2011-10-19 17:29:20 +00:00
Thomas Vander Stichele
bf5c1f2c31 * morituri/test/Makefile.am:
Include test .xml responses.
2011-10-17 09:20:52 +00:00
Thomas Vander Stichele
fb39764923 make things more loggable 2011-09-20 08:07: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
4fdfb7f58c * morituri/program/cdparanoia.py:
Log properly again.
	  Properly set exception when we can't rename the file.
2011-09-18 09:18:47 +00:00
Thomas Vander Stichele
ba3dd85dc5 * morituri/extern/task/gstreamer.py:
Query using time if DEFAULT fails.
2011-09-15 14:23:25 +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
b467132c01 assert we get metadata 2011-09-04 14:19:56 +00:00
Thomas Vander Stichele
a43065d195 add tasks 2011-09-04 14:19:42 +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
60772e655b remove import 2011-09-04 14:18:14 +00:00
Thomas Vander Stichele
44559cc0b0 change to description. 2011-09-04 14:18:00 +00:00
Thomas Vander Stichele
d2672cfa6a * morituri/common/gstreamer.py:
flacparse is busted in gst-plugins-good 0.10.30 too.
2011-09-04 14:17:47 +00:00
Thomas Vander Stichele
e6176d8b8c doc fix 2011-08-25 11:04:20 +00:00
Thomas Vander Stichele
4f377406f9 make sure we stop on bad crc 2011-08-15 22:39:54 +00:00
Thomas Vander Stichele
fdbaa33b1f * task.py:
Better logging when scheduling.
	* gstreamer.py:
	  If paused() returns True, don't go to playing.
	  add a method for querying duration in the common case.
2011-08-15 10:25:55 +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
367af25232 * TODO:
Add a note about das capital disc.
	* morituri/test/release.08397059-86c1-463b-8ed0-cd596dbd174f.xml:
	* morituri/test/release.93a6268c-ddf1-4898-bf93-fb862b1c5c5e.xml:
	  Add musicbrainz ws1 results for Das Capital and Ladyhawke.
	* morituri/test/test_common_program.py:
	  Fix typos.
	  Add tests for Ladyhawke and Das Capital duration and parsing.
	* morituri/test/test_image_table.py:
	  Fix according to new algorithm.
	* morituri/test/test_image_toc.py:
	  Get frame length for both cd's.
	* morituri/image/table.py:
	  Add getFrameLength method.  Fix up duration.
2011-08-14 14:19:50 +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
e95d7a159b * morituri/rip/cd.py:
Make sure we definitely fail on failed checksum.
2011-08-13 16:42:52 +00:00
Thomas Vander Stichele
a4da75cf0a update 2011-08-13 16:35:54 +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
ac2ab6a34a * task.py:
Remove scrubFilename call.
2011-08-08 11:37:09 +00:00
Thomas Vander Stichele
bc62f92ce4 * task.py:
Pull in getExceptionMessage privately.
2011-08-08 11:35:35 +00:00
Thomas Vander Stichele
a8c437307c * morituri/extern/task/task.py:
Also stub out log calls on Runner.
2011-08-07 18:24:01 +00:00
Thomas Vander Stichele
c8e5545776 * morituri/extern/task/task.py:
Also handle error() log calls.
2011-08-07 18:20:21 +00:00
Thomas Vander Stichele
a8dddb9d70 * morituri/program/cdparanoia.py:
Make sure exceptions don't prevent the task from chaining up
	  to the parent stop() implementation, giving the runner a chance
	  to actually stop.
2011-08-07 17:57:24 +00:00
Thomas Vander Stichele
3093d50986 * morituri/rip/debug.py:
Add checksum task for debugging.
2011-08-06 12:26:04 +00:00
Thomas Vander Stichele
b5e1e8da7d * gstreamer.py:
* task.py:
	  Don't rely on the log module; users that want to log
	  should first subclass from a log class that implements
	  warning/info/debug/log
2011-08-05 20:21:31 +00:00
Thomas Vander Stichele
8af605c2c0 * gstreamer.py:
Document bus and pipeline.  Make bus public.
2011-08-05 20:19:58 +00:00
Thomas Vander Stichele
0da4d75935 update headers 2011-08-05 19:19:01 +00:00
Thomas Vander Stichele
8ec7bcbb9d * morituri/common/checksum.py:
* morituri/common/common.py:
	* morituri/common/encode.py:
	* morituri/image/image.py:
	* morituri/test/test_common_encode.py:
	  Moved quoteParse.
2011-08-05 19:18:10 +00:00
Thomas Vander Stichele
95cd741904 * gstreamer.py:
Add quoteParse() method.
2011-08-05 19:16:40 +00:00
Thomas Vander Stichele
7ae0f41457 * gstreamer.py:
Add getPipeline() method.
	  Base class implementation uses getPipelineDesc().
2011-08-05 19:11:00 +00:00
Thomas Vander Stichele
55c4bddfcf * morituri/common/Makefile.am:
* morituri/common/checksum.py:
	* morituri/common/gstreamer.py:
	* morituri/extern/Makefile.am:
	* morituri/extern/task/gstreamer.py:
	* morituri/common/gstreamer.py (added):
	  Extract function to remove audio parsers.
	  Fix up dist.
2011-08-05 19:04:53 +00:00
Thomas Vander Stichele
82287a32cc add module __init__ 2011-08-05 18:55:28 +00:00