Commit Graph

323 Commits

Author SHA1 Message Date
Thomas Vander Stichele
2aed8a046f * morituri/common/gstreamer.py:
Remove parsers for current git trunk of good too.
2011-05-24 18:46:55 +00:00
Thomas Vander Stichele
3fccbac367 * morituri/common/encode.py:
Query for duration and use it in level callback to set progress.
	  Works around F-15 bug where encode progress is not being updated.
2011-05-24 17:00:04 +00:00
Thomas Vander Stichele
9a6af593f8 * morituri/rip/Makefile.am:
* morituri/rip/main.py:
	* morituri/rip/debug.py (added):
	  Add helper command to debug tasks.
	* morituri/common/encode.py:
	  Add debug.
2011-05-24 16:30:41 +00:00
Thomas Vander Stichele
3a42598fa5 * morituri/test/test_common_encode.py:
Use pink-noise as a wave form to make sure it's long enough.
	  Fixes last tests for F-15.
2011-05-24 16:09:14 +00:00
Thomas Vander Stichele
eee7505519 * morituri/common/checksum.py:
* morituri/common/gstreamer.py:
	  Remove audioparsers plugin if it has the known bug.
	  Fixes #64.
2011-05-24 16:03:02 +00:00
Thomas Vander Stichele
4c81edf912 * morituri/common/task.py:
Show us when we stop twice.
	* morituri/common/gstreamer.py:
	  Stop on Exceptions.
2011-05-24 15:16:39 +00:00
Thomas Vander Stichele
234ac4c644 * morituri/common/common.py:
Add an EmptyError.
	* morituri/common/checksum.py:
	  Set it when we don't get any frames.
	* morituri/rip/main.py:
	  Catch it and stop ripping if this happens.
2011-05-24 15:15:44 +00:00
Thomas Vander Stichele
b540b10c33 * morituri/common/task.py:
More exception handling and debug.
2011-05-24 13:21:51 +00:00
Thomas Vander Stichele
8bc5eff73c * morituri/common/task.py:
add task argument to TaskRunner.schedule so we can get exceptions.
	  Add .schedule method to Task to pass self.
	* morituri/common/checksum.py:
	* morituri/common/encode.py:
	* morituri/common/gstreamer.py:
	* morituri/program/cdparanoia.py:
	* morituri/program/cdrdao.py:
	  Adapt.
2011-05-24 12:51:40 +00:00
Thomas Vander Stichele
e604240ae6 * morituri/test/test_common_encode.py:
Write a non-sine wave so we have an actual flac file that will
	  typefind.
2011-05-24 10:42:25 +00:00
Thomas Vander Stichele
48e3d7ca99 * morituri/image/image.py:
Actually set exception so MultiTask tells us what went wrong.
2011-05-24 10:41:54 +00:00
Thomas Vander Stichele
114fb827cc * morituri/common/task.py:
Document and change name of a method.
2011-05-24 10:39:02 +00:00
Thomas Vander Stichele
8771d439dc * morituri/common/gstreamer.py:
Add a cvar to stop going to playing.
	* morituri/image/image.py:
	  Convert AudioLengthTask to GstPipelineTask.
	* morituri/test/test_image_image.py:
	  Adapt to new typefind error we run in.
2011-05-24 10:27:06 +00:00
Thomas Vander Stichele
c314dcb597 * morituri/common/gstreamer.py:
Stop task when we get an exception.
	  Don't make pipeline go to PLAYING if we got an exception
	  before doing so.
2011-05-23 18:08:25 +00:00
Thomas Vander Stichele
eef8b18435 * morituri/common/encode.py:
Convert TagReadTask to gstreamer.GstPipelineTask and
	  remove lots of duplicate code.
2011-05-23 18:05:31 +00:00
Thomas Vander Stichele
ce71bfb5c2 * morituri/common/checksum.py:
* morituri/common/encode.py:
	* morituri/common/gstreamer.py:
	  Move play to base class of GstPipelineTask.
2011-05-23 18:02:48 +00:00
Thomas Vander Stichele
3482288750 * morituri/common/gstreamer.py:
Add a stop method and a stopped overridable handler.
	* morituri/common/checksum.py:
	* morituri/common/encode.py:
	  Adapt to using stopped.
2011-05-23 15:26:19 +00:00
Thomas Vander Stichele
1ce46272a9 * morituri/test/test_common_encode.py:
Generate an actual file by spawning gst-launch; otherwise
	  with proper error handling we get an error from wavparse that
	  there is not enough data to typefind.
	* morituri/common/gstreamer.py:
	  Move the gst import to start() and set it as a class attribute.
	  Document methods.
	* morituri/common/encode.py:
	  Convert EncodeTask to a GstPipelineTask.
2011-05-23 14:57:16 +00:00
Thomas Vander Stichele
514bf4bc10 * morituri/common/encode.py:
Add some debug.
2011-05-23 13:46:46 +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
ac66d71e6b based on code by: Loïc Minier <lool@dooz.org>
* morituri/rip/Makefile.am:
	* morituri/rip/main.py:
	* morituri/rip/accurip.py (added):
	  Add a rip accurip show command to show the accuraterip information
	  for a given URL.  See #5.
2011-05-22 18:06:57 +00:00
Thomas Vander Stichele
041a492f67 * morituri/image/table.py:
Extract one function to write a FILE line.
2011-05-22 17:17:33 +00:00
Thomas Vander Stichele
4c0036611e patch by: Ross Burton <ross@burtonini.com>
* morituri/image/table.py:
	  When writing the .cue file, only write the basename, since
	  the .cue file gets stored in the album directory.
	  Fixes #10.
2011-05-22 17:12:21 +00:00
Thomas Vander Stichele
10eb2ee176 * morituri/rip/main.py:
Give a nice error message if cdrdao cannot read the disc.
	  Fixes #62.
2011-05-22 15:24:45 +00:00
Thomas Vander Stichele
ddb70f32e4 * morituri/rip/main.py:
Give a nice error message if cdrdao cannot read the disc.
	  Fixes #29.
2011-05-22 15:24:14 +00:00
Thomas Vander Stichele
ccb4fcfaa1 * morituri/program/cdparanoia.py:
Since stop can be same as start, add + 1 to progress calculation.
	  Fixes #37.
2011-05-22 15:17:27 +00:00
Thomas Vander Stichele
b32a534a82 * morituri/program/cdparanoia.py:
Since stop can be same as start, add + 1 to progress calculation.
	  Fiexes #37.
2011-05-22 15:16:00 +00:00
Thomas Vander Stichele
965043dbf5 * morituri/common/gstreamer.py:
Remove unused imports.
	* morituri/image/image.py:
	  Remove halfbaked code.
2011-05-22 11:14:46 +00:00
Thomas Vander Stichele
b86cf68341 * morituri/rip/cd.py:
Factor out function to write .m3u lines.
2011-05-22 11:12:16 +00:00
Thomas Vander Stichele
24afc106f9 patch by: Loïc Minier <lool@dooz.org>
* morituri/rip/cd.py:
	  Don't strip extension of HTOA track.
	  Fixes #50.
2011-05-22 11:10:26 +00:00
Thomas Vander Stichele
14d23e7a09 * morituri/result/logger.py:
Always write strftime in C locale.  Fixes second bug
	  mentioned in #49.
2011-05-22 10:58:36 +00:00
Thomas Vander Stichele
6c2f3cc378 * morituri/common/checksum.py:
* morituri/image/image.py:
	* morituri/test/test_common_checksum.py:
	* morituri/common/gstreamer.py (added):
	  Factor out GstException and GstPipelineTask.
2011-05-21 17:01:19 +00:00
Thomas Vander Stichele
738a2edb0b * misc/morituri-uninstalled:
The binary name is rip, so add an option to override.
	  Fixes #46.
2011-05-21 16:19:12 +00:00
Thomas Vander Stichele
e2a1ab08c7 * morituri/rip/image.py:
Document image subcommand.  Fixes #61.
2011-05-21 16:05:12 +00:00
Thomas Vander Stichele
6962dd7e7e * morituri/test/Makefile.am:
Package error progress output.  Fixes distcheck on slaves.
2011-05-21 13:01:34 +00:00
Thomas Vander Stichele
88fc831d4c * morituri/test/test_program_cdparanoia.py:
Update expected quality percentage.
	  Was broken since its commit in [432].
2011-05-21 12:44:23 +00:00
Thomas Vander Stichele
c301015537 * morituri/common/checksum.py:
* morituri/common/encode.py:
	* morituri/image/table.py:
	* morituri/rip/cd.py:
	* morituri/rip/image.py:
	* morituri/rip/offset.py:
	* morituri/test/test_common_accurip.py:
	* morituri/test/test_common_checksum.py:
	* morituri/test/test_image_cue.py:
	* morituri/test/test_image_table.py:
	  Pychecker fixes.
2011-05-21 11:50:39 +00:00
Thomas Vander Stichele
0da5dd0aa1 * morituri/common/checksum.py:
Actually raise the exception.
	* morituri/common/task.py:
	  Document interface more clearly.
	* morituri/test/test_common_checksum.py:
	  Use tcommon for test.common
2011-05-21 11:22:04 +00:00
Thomas Vander Stichele
019ad538d8 * morituri/common/common.py:
Don't fail on loading pickle.
2011-05-19 10:03:30 +00:00
Thomas Vander Stichele
0b520f2e86 * morituri/common/encode.py:
Alac does not have merge_tags.  Fixes #15.
2011-05-19 01:23:53 +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
9fe80e238e * morituri/common/task.py:
Add more debug.
2011-05-19 00:27:20 +00:00
Thomas Vander Stichele
cc5a2c39e8 * morituri/rip/main.py:
More debug info: args, version, revision.
2011-05-18 23:57:25 +00:00
Thomas Vander Stichele
f3696f22d1 * morituri/configure/configure.py (svn:keywords):
Expand revision.
	* morituri/configure/configure.py:
	  Set it on the revision local.
2011-05-18 23:56:27 +00:00
Thomas Vander Stichele
7bd0c5e2c0 * morituri/common/encode.py:
wavenc does not have merge_tags, it seems.
	  So don't call an element a tagger, don't merge tags if there is
	  no tagger, and complain if there is no merge_tags when we think
	  there should be.
2011-04-08 09:04:25 +00:00
Thomas Vander Stichele
39c22033e9 remove bogus entry 2011-03-23 19:41:02 +00:00
Thomas Vander Stichele
f8409b29e1 * morituri/program/cdparanoia.py:
cdparanoia can hang indefinitely on scsi read errors.
	  For example, on some drives, when trying negative offsets.
	  Notice them, count them, and fail after 100.
	* morituri/test/test_program_cdparanoia.py:
	* morituri/test/cdparanoia.progress.error (added):
	  Add a test for this output.
2011-03-23 19:40:47 +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
335b49e4b4 * morituri/common/encode.py:
Debug failing to write tags better.  See #60.
2011-03-20 18:39:28 +00:00
Thomas Vander Stichele
b2a74e14c6 * morituri/program/cdparanoia.py:
Extend FileSizeError with an extra message.
	* morituri/rip/offset.py:
	  Print a reasonable warning when we cannot rip with a certain offset.
	  See #57.
2011-03-20 18:32:02 +00:00