a4f92658da
fix
Thomas Vander Stichele
2009-04-20 23:09:05 +00:00
dfc9fe8cee
update
Thomas Vander Stichele
2009-04-20 22:46:57 +00:00
a9ec95e56d
* morituri/common/task.py: Add a 'described' method so listeners can get proper notification of description changes, and update their description in between progress changes. Add a MultiCombinedTask that reports on progress over all tasks combined. * examples/trm.py: Add a playlist option to the example. Still needs to store results to pickles, preferably after each completed task. * morituri/common/checksum.py: Add audioconvert to make sure we can trm ogg files.
Thomas Vander Stichele
2009-04-20 22:20:07 +00:00
18fcc1b813
* morituri/common/task.py: * morituri/image/image.py: Move MultiTask to the task module.
Thomas Vander Stichele
2009-04-20 21:34:51 +00:00
8973d53cce
* morituri/common/checksum.py: Add a task to calculate a trm fingerprint. * examples/trm.py (added): Add an example. Strangely enough it starts burstily, doing 10% directly, halting, then progressing quickly,
Thomas Vander Stichele
2009-04-20 21:31:27 +00:00
1fc0c2bbdb
* examples/ARcue.py: Fix a bug in the gtk example.
Thomas Vander Stichele
2009-04-20 21:30:04 +00:00
58a855c630
* examples/readtoc.py: Read the toc using cdrdao. Now sets progress based on which frame it is on.
Thomas Vander Stichele
2009-04-19 22:55:16 +00:00
9905dbad75
* morituri/common/task.py: Add a __main__ example using DummyTask.
Thomas Vander Stichele
2009-04-19 22:01:39 +00:00
cfeedbca3c
* morituri/common/task.py: Make sure we also show progress when it's 0%, at the start.
Thomas Vander Stichele
2009-04-19 21:48:23 +00:00
68b6db9e10
* morituri/image/cue.py: Use names for matches in regexps.
Thomas Vander Stichele
2009-04-19 21:47:18 +00:00
a7e3779473
* examples/readtoc.py (added): Add an example to read the TOC, not finished yet.
Thomas Vander Stichele
2009-04-19 17:26:33 +00:00
1dffa8ec42
add comment
Thomas Vander Stichele
2009-04-15 13:32:10 +00:00
b63ef021a7
* examples/ARcue.py: * morituri/common/checksum.py: * morituri/image/image.py: * morituri/test/test_image_image.py: Change crc to checksum everywhere.
Thomas Vander Stichele
2009-04-15 13:31:35 +00:00
9b5050d221
* morituri/image/image.py: * morituri/image/toc.py: * morituri/common/checksum.py (added): * morituri/common/crc.py (deleted): Rename crc to checksum, because AccurateRip checksums are not CRC's.
Thomas Vander Stichele
2009-04-15 13:23:45 +00:00
1abeac8dcf
* examples/ARcue.py: * morituri/image/image.py: * morituri/test/test_image_image.py: Make everything use TOC for the id's.
Thomas Vander Stichele
2009-04-15 13:20:56 +00:00
065754d5d1
* morituri/image/image.py: Refactor to use TOC class. * morituri/image/toc.py: Fully document.
Thomas Vander Stichele
2009-04-15 12:45:22 +00:00
02edffa629
* morituri/test/test_image_toc.py (added): * morituri/image/toc.py (added): Add an abstraction for a TOC. Take data tracks into account correctly for CDDB and AccurateRip disc ID's.
Thomas Vander Stichele
2009-04-15 12:32:10 +00:00
f865e91526
* morituri/image/image.py: * morituri/test/test_image_image.py: AccurateRip binary files actually contain multiple responses, so parse all of them. * examples/ARcue.py: Handle case of not having a response, and having multiple responses.
Thomas Vander Stichele
2009-04-15 09:35:58 +00:00
7c598cde9d
make it clear which one is ours
Thomas Vander Stichele
2009-04-14 20:19:58 +00:00
13a9f81550
* morituri/common/crc.py: Actually return the CRC when checking frame 5. * morituri/test/test_image_image.py: Update test for this fix.
Thomas Vander Stichele
2009-04-14 20:19:27 +00:00
bce17ff3a2
* morituri/image/image.py: Also look for audio file basename relative to cue file.
Thomas Vander Stichele
2009-04-13 20:35:36 +00:00
051dc33049
* examples/ARcue.py: Make output a bit nicer, mentioning whether tracks were accurately ripped.
Thomas Vander Stichele
2009-04-13 20:00:11 +00:00
362d835829
* morituri/image/image.py: Add an object to parse the response of AccurateRip. * morituri/test/test_image_image.py: * morituri/test/dBAR-011-0010e284-009228a3-9809ff0b.bin (added): Add a test for it, based on my Kings Of Leon CD.
Thomas Vander Stichele
2009-04-13 18:13:32 +00:00
a8da8d8fa2
* morituri/image/image.py: Add the 150 frames for the leadin only to the CDDB calculation. Add methods to calculate AccurateRip id's and URL. * morituri/test/test_image_image.py: Add tests for it. * examples/ARcue.py: Show AccurateRip URL.
Thomas Vander Stichele
2009-04-13 17:27:52 +00:00
ac880acdf1
* examples/ARcue.py: * morituri/common/crc.py: * morituri/image/image.py: * morituri/test/test_image_image.py: Calculate CDDB disc id. Tested on my Kings Of Leon CD.
Thomas Vander Stichele
2009-04-12 19:30:57 +00:00
56da05a31c
doc and cleanup, add getIndex
Thomas Vander Stichele
2009-04-12 19:30:23 +00:00
919ae5b8e3
* examples/ARcue.py: * morituri/image/image.py: * morituri/test/test_image_image.py: Add a task to verify a disk image, which also calculates track lengths for tracks the cue file doesn't know the length of.
Thomas Vander Stichele
2009-04-12 18:04:30 +00:00
729280ef42
* examples/ARcue.py: Add option to run either command-line or gtk.
Thomas Vander Stichele
2009-04-12 11:15:45 +00:00
d49b4fbaec
* morituri/image/image.py: Create a MultiTask base class, and make AudioRipCRCTask use it.
Thomas Vander Stichele
2009-04-12 11:06:23 +00:00
27fd2f16e6
* morituri/image/image.py: * morituri/test/test_image_image.py: Add a task for calculating frame length of an audio file. Add a test for it.
Thomas Vander Stichele
2009-04-12 10:20:14 +00:00
b7eb47325e
* morituri/common/task.py: Schedule the start from the main loop, otherwise the task might complete before we're in the main loop, and then the loop.quit() doesn't work.
Thomas Vander Stichele
2009-04-12 10:18:56 +00:00
0ab4aed9a2
some more reorganizing
Thomas Vander Stichele
2009-04-12 09:03:43 +00:00
68669e35b5
some more reorganizing
Thomas Vander Stichele
2009-04-12 09:03:37 +00:00
07587f51e4
* examples/ARcue.py: * examples/gtkcrc.py: Rework both examples to look more similar.
Thomas Vander Stichele
2009-04-12 09:02:25 +00:00
d47402af60
* examples/gtkcrc.py: * morituri/common/task.py: Move the gtk-based progress bar to task.
Thomas Vander Stichele
2009-04-12 08:58:36 +00:00
f1d75142da
* examples/gtkcrc.py: * morituri/common/crc.py: * morituri/common/task.py: * morituri/image/image.py: Add a 'schedule' call to the TaskRunner class, so that we can abstract things like gobject.timeout_add and reactor.callLater Pass the runner to the task in Task.start() so a task can call schedule.
Thomas Vander Stichele
2009-04-12 08:51:13 +00:00
10647d18a1
* morituri/common/task.py: Update the docs.
Thomas Vander Stichele
2009-04-12 08:34:44 +00:00
28bd15952b
ignore more
Thomas Vander Stichele
2009-04-11 22:11:16 +00:00
a696b14ffe
* morituri/test/test_image_image.py (added): Add tests for AudioRip CRC'ing images.
Thomas Vander Stichele
2009-04-11 22:08:29 +00:00
0d54fc1be8
* morituri/test/track-separate.cue (added): * morituri/test/track.flac (added): * morituri/test/Makefile (added): * morituri/test/track-single.cue (added): Add a simple 10 frame flac file, and two .cue files using it.
Thomas Vander Stichele
2009-04-11 21:58:24 +00:00
59ebcc85ad
* morituri/image/image.py: If paths are relative, make them relative to cue file.
Thomas Vander Stichele
2009-04-11 21:57:45 +00:00
6804df4b73
* morituri/common/task.py: clear with whitespace.
Thomas Vander Stichele
2009-04-11 21:57:25 +00:00
51851cc67e
* examples/ARcue.py: * morituri/common/task.py: * morituri/image/image.py (added): Add an object for handling an Image based on a .cue file. Create a Task for CRC'ing the whole Image. Make the example use this new task instead.
Thomas Vander Stichele
2009-04-11 17:01:40 +00:00
eda9968703
* examples/gtkcrc.py: * morituri/common/task.py: Add task object to listener interface methods.
Thomas Vander Stichele
2009-04-11 16:42:04 +00:00
8345938584
* examples/ARcue.py: * examples/gtkcrc.py: * morituri/common/crc.py: * morituri/common/task.py: Split out generic task/runner from CRC tasks.
Thomas Vander Stichele
2009-04-11 15:40:03 +00:00
2e93bfb988
* morituri/common/crc.py (added): Copy from task.py before splitting.
Thomas Vander Stichele
2009-04-11 15:36:02 +00:00
1a02c32fc1
* examples/gtkcrc.py: * morituri/common/task.py: Don't block the main loop by infinitely scheduling set_state.
Thomas Vander Stichele
2009-04-11 14:58:42 +00:00
8486ee782b
* examples/ARcue.py: * examples/gtkcrc.py: * morituri/common/task.py: Make a real Task interface and use it. Make runners reusable for multiple tasks. gtkcrc.py seems to be blocking updates however.
Thomas Vander Stichele
2009-04-11 14:46:19 +00:00
ed72dfe94f
* morituri/test (added): * morituri/test/test_image_cue.py (added): * morituri/test/kings-single.cue (added): * morituri/test/__init__.py (added): * morituri/test/kings-separate.cue (added): Add test suite. Add Kings Of Leon cue files.
Thomas Vander Stichele
2009-04-11 13:37:42 +00:00
7860fe275b
* examples/ARcue.py: Error out when the file doesn't exist. * morituri/common/task.py: Drag the lake. Clean up prints.
Thomas Vander Stichele
2009-04-11 12:54:45 +00:00
43acc5b6f5
* morituri/common/task.py: Remove queue to avoid race. Remove prints. Clean up debug. Update progress after handling buffers.
Thomas Vander Stichele
2009-04-11 11:17:47 +00:00
fcfd128431
remove debugging output
Thomas Vander Stichele
2009-04-10 14:20:31 +00:00
9488415ce7
* morituri/common/task.py: Introduce constants for FRAMES_PER_DISC_FRAME * examples/ARcue.py: Use the constant. Get the CRC right for the last track too.
Thomas Vander Stichele
2009-04-05 16:17:31 +00:00
18631a0fb6
* examples/ARcue.py: * morituri/common/task.py: Use an adapter to assemble CD frames. Take into account special rules for first and last track. Mention some bugs. Remember to drag the lake from the task.
Thomas Vander Stichele
2009-03-26 14:23:25 +00:00
271bca108f
* examples/ARcue.py: * morituri/common/task.py: First version that seems to get some AccurateRip checksums right.
Thomas Vander Stichele
2009-03-22 15:07:42 +00:00
fc0d953138
add an example calculating crc's from a cue file
Thomas Vander Stichele
2009-03-02 08:46:41 +00:00
b8af96fd3c
add example of crc'ing with gtk progress bar
Thomas Vander Stichele
2009-03-02 08:46:19 +00:00
370b48c659
add sync runner. add error check for not getting all samples.
Thomas Vander Stichele
2009-03-02 08:42:43 +00:00
4c2b6e4c74
* morituri/image/cue.py: publicize CueFile.tracks Add a method to get track lengths * examples/readcue.py: Use it.
Thomas Vander Stichele
2009-02-28 13:43:44 +00:00
7e1c8aac31
* morituri/common/task.py (added): Add a task abstraction.
Thomas Vander Stichele
2009-02-28 13:43:04 +00:00
0daad73e0e
add code to read cue files
Thomas Vander Stichele
2009-01-06 11:45:05 +00:00
fcd9b22e5d
add inits
Thomas Vander Stichele
2009-01-06 11:44:40 +00:00
8bedff6f04
add example
Thomas Vander Stichele
2009-01-06 11:44:19 +00:00
28df0647d1
add header
Thomas Vander Stichele
2009-01-06 11:44:05 +00:00
5e0d4013ea
moap ignore
Thomas Vander Stichele
2009-01-06 11:43:55 +00:00
20421488be
add morituri
Thomas Vander Stichele
2009-01-04 14:39:57 +00:00