Commit Graph

  • 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. Thomas Vander Stichele 2009-06-09 19:39:59 +00:00
  • 5652cee15e fix problem when not connected Thomas Vander Stichele 2009-06-07 22:49:19 +00:00
  • 644e67f105 more variable shuffling Thomas Vander Stichele 2009-06-07 17:16:04 +00:00
  • 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. Thomas Vander Stichele 2009-06-07 17:10:54 +00:00
  • df779bc8df * morituri/common/program.py: * morituri/rip/cd.py: Move HTOA checking to program. Thomas Vander Stichele 2009-06-07 16:06:58 +00:00
  • a460abc475 * morituri/result/logger.py: Fix for toctable->table * morituri/common/program.py: * morituri/rip/cd.py: Move lots of functionality to program module. Thomas Vander Stichele 2009-06-07 15:22:55 +00:00
  • ce1bc21a39 add another todo Thomas Vander Stichele 2009-06-07 15:15:12 +00:00
  • 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. Thomas Vander Stichele 2009-06-07 14:20:30 +00:00
  • d75066d1bb pychecker cleanup Thomas Vander Stichele 2009-06-07 13:46:26 +00:00
  • 662c14cf6f * morituri/rip/cd.py: Massage into 80 characters per line. Make pycdio/cdio optional. Thomas Vander Stichele 2009-06-07 13:37:54 +00:00
  • 1163db9f43 update docs Thomas Vander Stichele 2009-06-07 13:36:44 +00:00
  • 64d241808a * morituri/rip/drive.py: Make pycdio and cdio optional. Thomas Vander Stichele 2009-06-07 13:34:41 +00:00
  • 247d27db6a split up Thomas Vander Stichele 2009-06-07 13:22:25 +00:00
  • ad52f6c0a9 add HACKING as copy from README Thomas Vander Stichele 2009-06-07 13:21:58 +00:00
  • 667218aeb7 update README Thomas Vander Stichele 2009-06-07 13:21:27 +00:00
  • 8f88db0a29 * morituri/image/table.py: Add getPregap() method. * morituri/rip/cd.py: Use artist.name, not getUniqueName, to avoid monstruous names for Muse. Pass mbdiscid to getPath, so Unknown Disc can be saved with it. Don't set the date if the release doesn't have one. Set pregap on trackResult using new Track.getPregap() Write all log/cue/m3u files as utf-8. Thomas Vander Stichele 2009-06-07 12:54:32 +00:00
  • 3c57682a5a catch queryerror Thomas Vander Stichele 2009-06-06 11:16:53 +00:00
  • 8ef93523e4 * morituri/test/cdparanoia.progress: Add a shorter test file, 23 seconds. * morituri/test/test_program_cdparanoia.py: Update the test to adapt. Check for track quality. * morituri/program/cdparanoia.py: Add a measure of track quality based on the number of reads. Use the [wrote] output for progress updates, a bit more jittery in its output. * morituri/rip/cd.py: Set track quality on RipResult. Thomas Vander Stichele 2009-06-06 11:16:41 +00:00
  • 03cb3b0880 * morituri/rip/cd.py: Use RipResult to store result information. * morituri/result/logger.py (added): Add a Logger to handle the RipResult, much like EAC's log file. Thomas Vander Stichele 2009-06-05 09:47:03 +00:00
  • c7a423bb24 * morituri/rip/cd.py: Comment out number of track setting on tag for now. MusicBrainz can give us dates in YYYY, YYYY-MM, and YYYY-MM-DD format, so convert to YYYY-MM-DD always. Unmount the data part of the CD we want to rip if it is mounted. Adapt to peak level change. Don't try to write data tracks to the m3u file. Resolve the device path to the actual device path. Thomas Vander Stichele 2009-06-05 09:44:08 +00:00
  • b63777ea62 * morituri/result/result.py: Add a Logger base class. Thomas Vander Stichele 2009-06-05 09:39:48 +00:00
  • 9a26d7f6a4 * configure.ac: * morituri/Makefile.am: * morituri/result (added): * morituri/result/result.py (added): * morituri/result/__init__.py (added): * morituri/result/Makefile.am (added): Add classes to store track and rip results in. Thomas Vander Stichele 2009-06-05 07:57:54 +00:00
  • 3883205ed1 * morituri/common/common.py: Add an argument for the delimiter in formatting. * morituri/common/encode.py: Most programs use peak volume, not power, so do this too. Thomas Vander Stichele 2009-06-04 09:04:19 +00:00
  • 316eefbbd9 * morituri/test/common.py: Add a method for diffing multiline strings. Thomas Vander Stichele 2009-06-04 09:03:45 +00:00
  • 192d0739c5 * morituri/common/encode.py: Add a test() method to the profile so we can warn about bad flacenc versions. Encode track number and count, and release date, if possible. * morituri/rip/cd.py: Fix another off-by-one error in the tag encoding. Thomas Vander Stichele 2009-06-01 22:42:32 +00:00
  • 2b17b8e912 * morituri/program/cdparanoia.py: * morituri/rip/cd.py: Handle another off-by-one error in the m3u handling. Add a getTagList function. Use it to encode tags. Thomas Vander Stichele 2009-06-01 12:53:14 +00:00
  • 0f7f60e1b1 add some goals Thomas Vander Stichele 2009-06-01 10:23:43 +00:00
  • 2f3c0fdcaf * morituri/common/encode.py: * morituri/program/cdparanoia.py: * morituri/rip/cd.py: Clean up the temporary unencoded file. Pass profile as objects to tasks, so that temp files have the right extension. Thomas Vander Stichele 2009-06-01 09:45:30 +00:00
  • f33c50cead * morituri/common/encode.py: * morituri/program/cdparanoia.py: Add encoding profiles, kept simple for now as a class and subclasses. Use them to encode. Calculate peak level while encoding, compared to EAC and replaygain's value. * morituri/rip/cd.py: Use the encoding profiles, ripping with the right extension. Add a --profile parameter for it. Thomas Vander Stichele 2009-05-31 23:04:58 +00:00
  • b3c2949066 * morituri/rip/cd.py: Clean up track numbering confusion. Thomas Vander Stichele 2009-05-31 13:30:41 +00:00
  • 7e13909382 * morituri/common/encode.py (added): * examples/encode.py (added): Add an Encode Task, hardcoded to flac for now. Add an example, that also sets tags. Thomas Vander Stichele 2009-05-26 21:31:21 +00:00
  • 05dfeaa3a2 * morituri/common/task.py: Add debug. * morituri/rip/drive.py: Show all drives, not just the ones that happen to have an Audio CD inserted. Thomas Vander Stichele 2009-05-26 21:30:49 +00:00
  • b6b5ea2c1b add doc Thomas Vander Stichele 2009-05-25 22:41:01 +00:00
  • 262801e554 * morituri/rip/cd.py: Add asserts for comparing id's between the simple toc and the full table. Create the output directory before ripping the htoa. Ignore data tracks for now. Don't fail if we have no AccurateRip responses. * morituri/image/table.py: Add a session ivar to Track. Factor in session leadin when calculating track length of last track in a session. add getMusicBrainzSubmitURL() add _getSessionGap() because the session gap size is different for session 2 and all following. Use it in merge() to get offsets right. Fix getAccurateRipURL by only using the audio tracks for the 'length in tracks' number Temporarily disable writing out data tracks to a .cue file, since it's not implemented yet. Add canCue to see if we can write a .cue file from the given table, and debug why not if not. * morituri/program/cdrdao.py: Rework to rip each session separately instead of using session 9. This fixes session 9 read-toc missing the pregap. Add a simple LineParser for handling output from disk-info. Count tracks relatively for the session, because the output for session 2 for track numbers picks up where session 1 left off. Don't set leadout from TOC printing since for the same reason session 2's leadout is absolute, not relative to start of session. Add a DiscInfoTask. Convert Table and Toc reading tasks to multitasks, first getting the number of sessions, then reading table/toc for each session. * morituri/test/test_image_table.py: Fix up MusicBrainz disc id for my Ladyhawke disc. Add AccurateRip URL verification, compared against EAC's. * morituri/test/test_image_toc.py: Use two separate session read-toc output files to verify the case of Das Capital. Verify musicbrainz URL. Thomas Vander Stichele 2009-05-25 14:59:45 +00:00
  • ed7d5cedad * morituri/common/task.py: Add documentation. Use a _task counter instead of duplicating tasks to __tasks; this allows us to add tasks after starting. Catch Exceptions during next() so that we don't get stuck in a main loop that doesn't exit. Raise it later when we're done. Thomas Vander Stichele 2009-05-25 14:51:00 +00:00
  • 10226d062d * morituri/common/common.py: Since the version was inherited from the current code in unpickled objects, separate into classVersion and an instanceVersion set from __init__. Thomas Vander Stichele 2009-05-25 14:49:36 +00:00
  • 703d9c1a88 * morituri/image/toc.py: Add a logName for debugging. Thomas Vander Stichele 2009-05-25 14:47:38 +00:00
  • 631b1478b8 * morituri/program/cdparanoia.py: * morituri/image/image.py: Correctly chain up to parent __init__ for MultiTasks Thomas Vander Stichele 2009-05-25 14:47:07 +00:00
  • c793211f28 * morituri/test/capital.1.toc (added): * morituri/test/capital.2.toc (added): Add two .toc's for two sessions of a 2 session disc * morituri/image/table.py: Add a merge method to merge in a second session. * morituri/test/Makefile.am: * morituri/test/test_image_toc.py: Add a test for merging the Das Capital sessions, gets the CDDB disc id right. Thomas Vander Stichele 2009-05-24 21:30:21 +00:00
  • 59e8310135 * morituri/common/common.py: Add a persisted cache so that we can store pickles on discs. Automatically delete them if the class version is newer than the object's. * morituri/rip/cd.py: Use it. Thomas Vander Stichele 2009-05-24 18:13:16 +00:00
  • feec95e768 * morituri/image/table.py: Add a version ivar to help with versioning pickled objects. Thomas Vander Stichele 2009-05-23 19:48:35 +00:00
  • 85e9058594 * morituri/program/cdparanoia.py: Add copy and test CRC's to object. Thomas Vander Stichele 2009-05-23 19:47:58 +00:00
  • 361a83dc27 * morituri/common/Makefile.am: * morituri/common/drive.py (added): Add drive module. Thomas Vander Stichele 2009-05-23 18:24:39 +00:00
  • a3783c2be4 pychecker fixes Thomas Vander Stichele 2009-05-23 18:18:50 +00:00
  • 3f1ace2ce2 * morituri/program/cdparanoia.py: * morituri/program/cdrdao.py: * morituri/rip/cd.py: * morituri/rip/offset.py: Add device argument to ripping/scanning tasks. Thomas Vander Stichele 2009-05-23 18:14:31 +00:00
  • 7dfc1fbc6c * morituri/common/accurip.py: * morituri/image/image.py: * morituri/test/Makefile.am: * morituri/test/test_image_image.py: * morituri/test/test_common_accurip.py (added): Move accuraterip stuff to the accurip module. Move/create new test file. Thomas Vander Stichele 2009-05-23 18:14:11 +00:00
  • 5f872bdaf8 * morituri/rip/Makefile.am: * morituri/rip/main.py: * morituri/rip/drive.py (added): Add 'rip drive list' command to list available drives. * morituri/common/accurip.py: Add force. * morituri/rip/cd.py: Add --output-directory argument. Thomas Vander Stichele 2009-05-23 16:03:05 +00:00
  • 9710e3cc7c * morituri/common/Makefile.am: * morituri/rip/cd.py: * morituri/common/accurip.py (added): Add a module for handling a cache of AccurateRip results. Use it. Thomas Vander Stichele 2009-05-23 13:38:44 +00:00
  • da8145798d * morituri/rip/Makefile.am: * morituri/rip/main.py: * morituri/rip/cd.py (added): Add second command, 'rip cd rip' before factoring out functionality. Thomas Vander Stichele 2009-05-23 10:03:51 +00:00
  • 9e3e1d53cb * morituri/rip/Makefile.am: * morituri/rip/main.py: * morituri/rip/offset.py (added): Add first command, 'rip offset find' Thomas Vander Stichele 2009-05-23 09:00:03 +00:00
  • bc04d0336f * Makefile.am: * morituri/test/Makefile.am: Make distcheck work. Thomas Vander Stichele 2009-05-23 08:13:33 +00:00
  • 069eeff0e7 add notes Thomas Vander Stichele 2009-05-23 08:00:20 +00:00
  • eb74b1a9b2 add README Thomas Vander Stichele 2009-05-23 07:59:16 +00:00
  • 7424c6836b ignore more Thomas Vander Stichele 2009-05-23 07:56:10 +00:00
  • cf378f2cfa add test file Thomas Vander Stichele 2009-05-23 07:55:22 +00:00
  • 5f63551816 pychecker and docstring fixes Thomas Vander Stichele 2009-05-23 07:49:48 +00:00
  • 80475df042 more pychecker fixes Thomas Vander Stichele 2009-05-22 20:52:38 +00:00
  • 7e0e24adb9 more pychecker fixes Thomas Vander Stichele 2009-05-22 20:52:29 +00:00
  • fa8239d1f5 * morituri/common/checksum.py: More pychecker fixes. Thomas Vander Stichele 2009-05-22 20:44:51 +00:00
  • 41c92fcda4 pychecker fixes Thomas Vander Stichele 2009-05-22 20:44:10 +00:00
  • b137f6a3fd should not be in Thomas Vander Stichele 2009-05-22 20:39:20 +00:00
  • e51d747a93 update for build Thomas Vander Stichele 2009-05-22 20:39:11 +00:00
  • 3535f9a606 add configure Thomas Vander Stichele 2009-05-22 20:35:32 +00:00
  • 4a12d282f9 add init Thomas Vander Stichele 2009-05-22 20:35:08 +00:00
  • f0192af6d8 add configure Thomas Vander Stichele 2009-05-22 20:31:32 +00:00
  • 713a5d14fd * morituri/common/common.py: * morituri/common/renamer.py: Pychecker fixes. Thomas Vander Stichele 2009-05-22 20:29:09 +00:00
  • 3b0dfc663c adding m4 dir Thomas Vander Stichele 2009-05-22 20:23:31 +00:00
  • ec89b6dee3 moap ignore Thomas Vander Stichele 2009-05-22 20:23:24 +00:00
  • 62f23c5278 moap ignore Thomas Vander Stichele 2009-05-22 20:22:38 +00:00
  • d1bbc0f5f9 add doc Thomas Vander Stichele 2009-05-22 20:21:46 +00:00
  • 91615d215b add binary Thomas Vander Stichele 2009-05-22 20:21:22 +00:00
  • 10bcc7308b ignore more Thomas Vander Stichele 2009-05-22 20:20:56 +00:00
  • bd17f96022 * RELEASE: * misc/pycheckerrc: * misc/show-coverage.py: * morituri/image/Makefile.am: * morituri/program/Makefile.am: * RELEASE (added): * morituri/image/Makefile.am (added): * morituri/program/Makefile.am (added): * misc/show-coverage.py (added): * misc/pycheckerrc (added): more additions Thomas Vander Stichele 2009-05-22 20:19:55 +00:00
  • 1450b77706 * AUTHORS: * Makefile.am: * NEWS: * TODO: * autogen.sh: * configure.ac: * examples/ARcalibrate.py: * misc/Makefile.am: * misc/morituri-uninstalled: * morituri.spec.in: * morituri/Makefile.am: * morituri/common/Makefile.am: * morituri/common/logcommand.py: * morituri/extern/Makefile.am: * morituri/rip/Makefile.am: * morituri/rip/__init__.py: * morituri/rip/main.py: * morituri/test/Makefile: * morituri/test/Makefile.am: * configure.ac (added): * AUTHORS (added): * morituri.spec.in (added): * Makefile.am (added): * morituri/test/Makefile.am (added): * morituri/extern/Makefile.am (added): * morituri/common/logcommand.py (added): * morituri/common/Makefile.am (added): * morituri/Makefile.am (added): * morituri/rip (added): * morituri/rip/__init__.py (added): * morituri/rip/Makefile.am (added): * morituri/rip/main.py (added): * misc/Makefile.am (added): * misc/morituri-uninstalled (added): * autogen.sh (added): * NEWS (added): Start autotooling. Add a command-line application. Thomas Vander Stichele 2009-05-22 20:19:32 +00:00
  • 82ba0181b6 add etc Thomas Vander Stichele 2009-05-22 20:15:13 +00:00
  • aa3a90ce51 moap ignore Thomas Vander Stichele 2009-05-22 20:15:02 +00:00
  • 5e5ad8f552 ignore more Thomas Vander Stichele 2009-05-22 20:13:46 +00:00
  • 6929f89478 add a test that doesn't work yet Thomas Vander Stichele 2009-05-22 20:13:10 +00:00
  • b08c054be9 fix bug caught by pychecker Thomas Vander Stichele 2009-05-22 20:09:35 +00:00
  • d99a391bd1 fix bugs caught by pychecker Thomas Vander Stichele 2009-05-22 20:09:18 +00:00
  • 42902fa2c5 fix bug caught by pychecker Thomas Vander Stichele 2009-05-22 20:08:54 +00:00
  • bedd5d1fc1 use constants Thomas Vander Stichele 2009-05-22 20:08:36 +00:00
  • a35b4d4a01 * AUTHORS: * Makefile.am: * NEWS: * TODO: * autogen.sh: * configure.ac: * examples/ARcalibrate.py: * misc/Makefile.am: * misc/morituri-uninstalled: * morituri.spec.in: * morituri/Makefile.am: * morituri/common/Makefile.am: * morituri/common/logcommand.py: * morituri/extern/Makefile.am: * morituri/rip/Makefile.am: * morituri/rip/__init__.py: * morituri/rip/main.py: * morituri/test/Makefile: * morituri/test/Makefile.am: * configure.ac (added): * AUTHORS (added): * morituri.spec.in (added): * Makefile.am (added): * morituri/test/Makefile.am (added): * morituri/extern/Makefile.am (added): * morituri/common/logcommand.py (added): * morituri/common/Makefile.am (added): * morituri/Makefile.am (added): * morituri/rip (added): * morituri/rip/__init__.py (added): * morituri/rip/Makefile.am (added): * morituri/rip/main.py (added): * misc/Makefile.am (added): * misc/morituri-uninstalled (added): * autogen.sh (added): * NEWS (added): Start autotooling. Add a command-line application. Thomas Vander Stichele 2009-05-22 20:08:16 +00:00
  • 316523c453 add changes Thomas Vander Stichele 2009-05-16 19:09:57 +00:00
  • 483c7b8a0c * morituri/program/cdrdao.py: read all sessions by reading session 9. * morituri/image/toc.py: Parse ZERO statements properly. Also set absolute offsets when we know them from the .toc file. Properly set audio flag on tracks. FIXME: probably doesn't work if the .toc does not have lengths. * morituri/image/table.py: Add some debug to cddb disc id calculation. Fix absolutize function, it was going one index too far. raise ValueError when overriding .absolute with a wrong value. * examples/readdisc.py: Show CDDB disc id at the start. Assert when toc and table have different disc id's (to be fixed) * morituri/test/test_image_cue.py: Update for having the table already with absolute values. * morituri/test/test_image_toc.py: Add Ladyhawke CDDB test, it has a data track. Thomas Vander Stichele 2009-05-16 19:09:27 +00:00
  • 2f43fe3a33 add toc file with two sessions for testing Thomas Vander Stichele 2009-05-16 12:47:27 +00:00
  • b835f94ef1 * examples/readdisc.py: Move constants to common Thomas Vander Stichele 2009-05-16 10:27:10 +00:00
  • fd10c5f75c update docs Thomas Vander Stichele 2009-05-16 09:57:13 +00:00
  • 96ac69a13d * examples/readdisc.py: * examples/readhtoa.py: * examples/readtoc.py: Rename IndexTable to Table. Thomas Vander Stichele 2009-05-16 09:51:03 +00:00
  • 0a56fc129e * morituri/image/cue.py: * morituri/image/image.py: * morituri/image/table.py: * morituri/image/toc.py: * morituri/program/cdparanoia.py: * morituri/program/cdrdao.py: * morituri/test/test_image_cue.py: * morituri/test/test_image_table.py: Rename IndexTable to Table. Thomas Vander Stichele 2009-05-16 09:31:38 +00:00
  • 09fe46ee99 * morituri/image/cue.py: * morituri/image/image.py: * morituri/image/table.py: * morituri/image/toc.py: * morituri/program/cdrdao.py: * morituri/test/test_image_cue.py: * morituri/test/test_image_table.py: Rename ITTrack to Track. Thomas Vander Stichele 2009-05-16 09:29:01 +00:00
  • df2182724d one more symbol Thomas Vander Stichele 2009-05-16 09:25:42 +00:00
  • 22ee8651d6 * morituri/common/common.py: * morituri/image/cue.py: Use FRAMES_PER_SECOND where appropriate. Thomas Vander Stichele 2009-05-16 09:24:24 +00:00
  • 59cb5d0dcb * morituri/common/checksum.py: * morituri/common/common.py: * morituri/image/image.py: * morituri/image/table.py: * morituri/program/cdparanoia.py: Move constants to common Thomas Vander Stichele 2009-05-16 09:21:55 +00:00
  • 204c5d6212 add another constant before we move Thomas Vander Stichele 2009-05-16 09:16:09 +00:00
  • a30b42e143 add a test file Thomas Vander Stichele 2009-05-16 09:10:41 +00:00
  • 1a55ff8eaa * examples/readdisc.py: Get our metadata only from the toc. Thomas Vander Stichele 2009-05-16 09:01:37 +00:00
  • cc61a1d2dd * examples/readdisc.py: Also work for discs without htoa. Thomas Vander Stichele 2009-05-16 08:02:02 +00:00
  • 0431cbe148 add a debug line Thomas Vander Stichele 2009-05-16 07:31:57 +00:00
  • be1780f658 * examples/readdisc.py: Write .m3u file. Thomas Vander Stichele 2009-05-16 07:31:52 +00:00