Commit Graph

134 Commits

Author SHA1 Message Date
Thomas Vander Stichele
a787676239 * morituri/common/encode.py:
Add a task to read tags.
	* morituri/test/test_common_encode.py:
	  Add a test.
2010-04-13 07:37:01 +00:00
Thomas Vander Stichele
2e7a3974c4 * morituri/common/encode.py:
Add a vbr profile.
2010-04-11 17:14:37 +00:00
Thomas Vander Stichele
e124c79c64 * morituri/program/cdparanoia.py:
Add some debug.
	* morituri/common/encode.py:
	  Add more debug.
	  Handle the case where peak is full scale, and peakdB thus 0,
	  which triggered not setting self.peak.
2010-04-08 21:06:52 +00:00
Thomas Vander Stichele
1a5a32f7d1 pychecker fix 2010-04-06 00:19:12 +00:00
Thomas Vander Stichele
39d3265a4a remove whitespace 2010-04-06 00:19:06 +00:00
Thomas Vander Stichele
af0909600d patch by: Peter Oliver.
* morituri/common/program.py:
	  Allow using sortName for artist/track using %S/%s.
	  Fixes #19.
2010-04-06 00:17:40 +00:00
Thomas Vander Stichele
98213c4196 * doc/release:
Document having clean test run.
	* morituri/common/encode.py:
	  Catch and properly stop on gst.QueryError.
	  Don't set peak in stop if we had an error.
	* morituri/test/test_common_encode.py:
	* morituri/test/test_common_renamer.py:
	* morituri/test/test_image_cue.py:
	  Clean up after tests.
2010-04-06 00:02:56 +00:00
Thomas Vander Stichele
f978907fcf * morituri/common/task.py:
* morituri/image/cue.py:
	  Add logCategory.
	* morituri/image/image.py:
	  If subtasks had an exception, retrigger the exception and stop.
2010-04-05 23:31:34 +00:00
Thomas Vander Stichele
8ea1dc025d * morituri/image/image.py:
Fix AudioLengthTask for the case where we don't have the decoder,
	  by instead of doing get_state, waiting for an ASYNC_DONE or ERROR
	  message.  Properly raise a gst.GError in that case.
	* morituri/common/task.py:
	  Add some debug.
	* morituri/test/test_image_image.py:
	  After this fix, we now catch the TYPE_NOT_FOUND because of an
	  empty stream instead of the later gst.QueryError.
	* morituri/test/test_common_encode.py:
	  Let us know what it is if not a gst.QueryError.
2010-04-05 23:20:40 +00:00
Thomas Vander Stichele
3000f0a1e7 * morituri/common/common.py:
add quoteParse function to quote properly for gst.parse_launch()
	* morituri/common/checksum.py:
	  Fix single quote problem.
	  use self.setException()
	* morituri/common/encode.py:
	  Fix single quote problem.
	* morituri/image/image.py:
	  Fix single quote problem.
	  Reraise gst.QueryError.
	* morituri/test/test_common_encode.py:
	* morituri/test/test_common_encode.py (added):
	  Add tests for unicode/single/double quote.
	* morituri/test/test_image_image.py:
	* morituri/test/test_common_checksum.py:
	  Add tests for single/double quote.
	* morituri/test/common.py:
	  add twisted-like failUnlessRaises to TestCase that returns
	  the exception, so we can check wrapped exceptions in TaskException.
2010-04-04 23:20:52 +00:00
Thomas Vander Stichele
6ae35a7a08 * morituri/common/task.py:
Wrap exceptions during tasks in a TaskException, storing the
	  message, for improved error reporting later on.
2010-04-04 23:10:44 +00:00
Thomas Vander Stichele
22a3554381 * morituri/common/encode.py:
* morituri/common/program.py:
	* morituri/image/image.py:
	* morituri/program/cdparanoia.py:
	* morituri/rip/cd.py:
	* morituri/rip/image.py:
	* morituri/rip/offset.py:
	  Move all gst-using imports inside functions and classes
	  to avoid 'import gst' eating our options.
	  Fixes #12.
2010-04-04 19:29:49 +00:00
Thomas Vander Stichele
17f800cdb3 remove result.py 2010-03-15 15:18:28 +00:00
Thomas Vander Stichele
c6d374bd16 * morituri/common/Makefile.am:
Add missing result.py
	* morituri/test/Makefile.am:
	* morituri/test/test_image_toc.py:
	* morituri/test/JoséGonzález.toc (added):
	* morituri/test/José González.toc (deleted):
	  automake doesn't handle spaces in names, so move it.
2010-03-15 15:16:14 +00:00
Thomas Vander Stichele
a9097bad73 * morituri/common/encode.py:
Handle utf-8 properly.
2010-02-28 19:02:57 +00:00
Thomas Vander Stichele
1788470dcf * morituri/common/program.py:
Fix a problem with Arid's new album of not having an id.
2010-02-28 19:02:03 +00:00
Thomas Vander Stichele
ee186a0d30 * morituri/common/accurip.py:
The AccuRip cache dir could exist without the file; handle that
	  case.
2010-01-31 15:54:12 +00:00
Thomas Vander Stichele
26ecd42c2f * morituri/common/program.py:
For Various Artists releases, fall back to the release artist if
	  the track artist is None.
2009-12-28 16:50:36 +00:00
Thomas Vander Stichele
fe68f676c9 * morituri/image/image.py:
Add ImageEncodeTask to encode a disk image to a different profile
	  and directory.
	* morituri/common/encode.py:
	  Add lossy encoding profiles for mp3 and vorbis.
	  Rename muxer to tagger since that's what we use it for.
	  Do progress probe after level to make sure we get samples for
	  offsets.
	* morituri/rip/image.py:
	  Add rip image encode command.
2009-10-17 13:53:58 +00:00
Thomas Vander Stichele
757c3aba15 * morituri/common/task.py:
Add exceptionMessage on Task to store the result of
	  log.getExceptionMessage when the stack is still valid.
2009-10-16 21:39:19 +00:00
Thomas Vander Stichele
b3888a7017 finally fix whitespace 2009-09-26 15:07:12 +00:00
Thomas Vander Stichele
31b93a2abe whitespace fixes 2009-09-26 14:33:07 +00:00
Thomas Vander Stichele
b455f13080 another unicode fix 2009-09-12 09:10:56 +00:00
Thomas Vander Stichele
dfa3efe662 * HACKING:
More unicode notes.
	* morituri/common/program.py:
	* morituri/image/table.py:
	* morituri/image/toc.py:
	* morituri/result/result.py:
	* morituri/rip/cd.py:
	* morituri/test/test_image_toc.py:
	  Further unicode fixes, for options, CD-Text, paths, ...
2009-09-11 22:16:46 +00:00
Thomas Vander Stichele
8f94731876 pychecker fix 2009-09-11 15:43:47 +00:00
Thomas Vander Stichele
d30eb59a66 * morituri/program/cdrdao.py:
Wrap read in an exception handler.
	* morituri/common/task.py:
	  Debug exceptions more.
2009-09-11 15:41:51 +00:00
Thomas Vander Stichele
e6f13ccf84 * HACKING:
Note unicode handling.
	* morituri/test/test_image_image.py:
	* morituri/image/table.py:
	* morituri/program/cdparanoia.py:
	* morituri/common/checksum.py:
	  Use unicode for paths.
	  Use repr for path representation.
	* morituri/test/test_common_checksum.py:
	  Add test for unicode audio file name.
2009-09-11 15:40:44 +00:00
Thomas Vander Stichele
ac9d8f194d * morituri/common/task.py:
Make SyncRunner wrap start() so we correctly handle any
	  exception being thrown.
2009-09-11 12:08:02 +00:00
Thomas Vander Stichele
d9530cb82a * morituri/common/checksum.py:
* morituri/test/Makefile.am:
	* morituri/test/test_common_checksum.py (added):
	  Add a check to make sure that checksumming an empty file doesn't
	  hang.  Fix the hang.
2009-09-11 11:48:17 +00:00
Thomas Vander Stichele
f5f1811881 * morituri/common/program.py:
Fix getting AccurateRip results for albums with a HTOA.
	* morituri/test/Makefile.am:
	* morituri/test/test_common_program.py:
	* morituri/test/silentalarm.result.pickle (added):
	  Add testcase for it, Bloc Party's Silent Alarm.
2009-09-07 18:57:14 +00:00
Thomas Vander Stichele
ed2b4d4806 remove unexisting file 2009-09-06 22:43:51 +00:00
Thomas Vander Stichele
402c3c019a * README:
Fix up dependencies.
	* morituri.spec.in:
	  Fix dependencies and noarch install location.
	* morituri/common/Makefile.am:
	  Add result.py to dist
2009-09-06 17:08:17 +00:00
Thomas Vander Stichele
b9bc3ba154 * morituri/common/task.py:
Document better.
	  Create an ITaskListener interface where we can document.
	  Log some more.
2009-07-02 20:34:50 +00:00
Thomas Vander Stichele
bd146a9a35 fix distcheck 2009-06-28 12:43:22 +00:00
Thomas Vander Stichele
e04e02a31e fix for when there are no responses 2009-06-24 21:30:08 +00:00
Thomas Vander Stichele
1e063f08a7 * morituri/test/test_common_program.py:
* morituri/common/program.py:
	  Extract a common method to get textual representation of
	  AccurateRip results, and test it.
	* morituri/rip/cd.py:
	* morituri/rip/image.py:
	  Use the method.
2009-06-24 20:47:44 +00:00
Thomas Vander Stichele
32d67902d0 fix i 2009-06-24 19:19:43 +00:00
Thomas Vander Stichele
0d3651ab12 * morituri/test/test_common_program.py (added):
* morituri/common/program.py:
	  Break verifyImage into two so we can test it.
	  Test it using an AccurateRip result for Luke Haines Is Dead
	  which had a wrongly ripped track 10.
2009-06-24 18:40:27 +00:00
Thomas Vander Stichele
c24574dfec shorten accurip variable names 2009-06-24 17:17:17 +00:00
Thomas Vander Stichele
1643d1ec50 * Makefile.am:
* misc/pycheckerrc:
	* morituri/common/accurip.py:
	* morituri/common/checksum.py:
	* morituri/common/encode.py:
	* morituri/image/table.py:
	* morituri/rip/drive.py:
	  Fix up for pychecker warnings for 2.6
	  Fix rip drive list, which forgot some modules.
2009-06-20 10:57:12 +00:00
Thomas Vander Stichele
efdc830893 * morituri/rip/main.py:
* morituri/rip/image.py (added):
	  Add command to verify an image.
	* morituri/common/program.py:
	* morituri/rip/cd.py:
	  Fix AccurateRip checksum output.
2009-06-16 21:09:27 +00:00
Thomas Vander Stichele
10375235da * morituri/common/drive.py:
Really make pycdio and cdio optional.
	* morituri/rip/drive.py:
	* morituri/rip/offset.py:
	  Use drive.getAllDevicePaths()
2009-06-16 19:27:18 +00:00
Thomas Vander Stichele
1cdfea3d73 remove code.interact 2009-06-15 07:34:48 +00:00
Thomas Vander Stichele
d17829c36a * morituri/result/result.py:
Add max confidence from database.
	* morituri/common/program.py:
	* morituri/rip/cd.py:
	  Move AccurateRip checking to program.py
	  Re-rip if verification failed when continuing a rip.
2009-06-15 07:07:41 +00:00
Thomas Vander Stichele
1efa2d7b20 * morituri/common/program.py:
* morituri/rip/cd.py:
	  Serialize the rip result after every rip, so we can pick up
	  where we left off with all result data.
2009-06-09 19:39:59 +00:00
Thomas Vander Stichele
644e67f105 more variable shuffling 2009-06-07 17:16:04 +00:00
Thomas Vander Stichele
2d892291a8 * morituri/common/program.py:
Move getPath to Program.
	  Remove arguments to ripTrack that can be gotten from
	  trackResult.
	* morituri/rip/cd.py:
	  Continue without musicbrainz metadata.
	  Unify htoa and normal track ripping.
	* morituri/result/result.py:
	  Add getTrackResult so it's easier to look up track results
	  when there's a HTOA.
2009-06-07 17:10:54 +00:00
Thomas Vander Stichele
df779bc8df * morituri/common/program.py:
* morituri/rip/cd.py:
	  Move HTOA checking to program.
2009-06-07 16:06:58 +00:00
Thomas Vander Stichele
a460abc475 * morituri/result/logger.py:
Fix for toctable->table
	* morituri/common/program.py:
	* morituri/rip/cd.py:
	  Move lots of functionality to program module.
2009-06-07 15:22:55 +00:00
Thomas Vander Stichele
28c2a47d62 * morituri/result/result.py:
Change toctable to table since it's a full index table.
	* morituri/common/Makefile.am:
	* morituri/common/program.py (added):
	  Add module and class for program state.
	* morituri/rip/cd.py:
	  Use the program state to clean up the do() function.
2009-06-07 14:20:30 +00:00