Merge pull request #90 from JoeLametta/readme

Fixed README broken links and added a better changelog
This commit is contained in:
JoeLametta
2016-12-17 13:02:54 +01:00
committed by GitHub
2 changed files with 123 additions and 21 deletions

101
CHANGELOG.md Normal file
View File

@@ -0,0 +1,101 @@
# Change Log
## [Unreleased](https://github.com/JoeLametta/whipper/tree/HEAD)
[Full Changelog](https://github.com/JoeLametta/whipper/compare/v0.4.0...HEAD)
**Merged pull requests:**
- soxi: remove self.\_path unused variable, mark dep as 'soxi' [\#89](https://github.com/JoeLametta/whipper/pull/89) ([RecursiveForest](https://github.com/RecursiveForest))
- Fix spelling mistake in README.md [\#86](https://github.com/JoeLametta/whipper/pull/86) ([takeshibaconsuzuki](https://github.com/takeshibaconsuzuki))
- Error reporting enhancements \(conditional-raise-instead-of-assert version\) [\#80](https://github.com/JoeLametta/whipper/pull/80) ([chrysn](https://github.com/chrysn))
- Update top level informational files [\#71](https://github.com/JoeLametta/whipper/pull/71) ([RecursiveForest](https://github.com/RecursiveForest))
- Use soxi instead of gstreamer to determine a track's length [\#67](https://github.com/JoeLametta/whipper/pull/67) ([chrysn](https://github.com/chrysn))
## [v0.4.0](https://github.com/JoeLametta/whipper/tree/v0.4.0) (2016-11-08)
[Full Changelog](https://github.com/JoeLametta/whipper/compare/v0.3.0...v0.4.0)
**Implemented enhancements:**
- Migrate away from the "rip" command [\#21](https://github.com/JoeLametta/whipper/issues/21)
**Fixed bugs:**
- wrong status code when giving up [\#57](https://github.com/JoeLametta/whipper/issues/57)
- CD-TEXT issue [\#49](https://github.com/JoeLametta/whipper/issues/49)
**Merged pull requests:**
- Invoke whipper by its name + Readme rewrite [\#70](https://github.com/JoeLametta/whipper/pull/70) ([JoeLametta](https://github.com/JoeLametta))
- do not recalculate musicbrainz disc id for every getMusicBrainzDiscId… [\#69](https://github.com/JoeLametta/whipper/pull/69) ([RecursiveForest](https://github.com/RecursiveForest))
- Directory [\#62](https://github.com/JoeLametta/whipper/pull/62) ([RecursiveForest](https://github.com/RecursiveForest))
- undelete overzealously removed plugin initialisation [\#61](https://github.com/JoeLametta/whipper/pull/61) ([RecursiveForest](https://github.com/RecursiveForest))
- Readme rewrite [\#60](https://github.com/JoeLametta/whipper/pull/60) ([RecursiveForest](https://github.com/RecursiveForest))
- README.md: drop executable flag [\#55](https://github.com/JoeLametta/whipper/pull/55) ([chrysn](https://github.com/chrysn))
- nuke-autohell [\#54](https://github.com/JoeLametta/whipper/pull/54) ([RecursiveForest](https://github.com/RecursiveForest))
- standardise program/sox.py formatting, add test case, docstring [\#53](https://github.com/JoeLametta/whipper/pull/53) ([RecursiveForest](https://github.com/RecursiveForest))
- replace cdrdao.py with much simpler version [\#52](https://github.com/JoeLametta/whipper/pull/52) ([RecursiveForest](https://github.com/RecursiveForest))
- use setuptools, remove autohell, use raw make for src/ [\#51](https://github.com/JoeLametta/whipper/pull/51) ([RecursiveForest](https://github.com/RecursiveForest))
## [v0.3.0](https://github.com/JoeLametta/whipper/tree/v0.3.0) (2016-10-17)
[Full Changelog](https://github.com/JoeLametta/whipper/compare/v0.2.4...v0.3.0)
**Fixed bugs:**
- UnicodeEncodeError [\#43](https://github.com/JoeLametta/whipper/issues/43)
- Use a single standard for config/cache/state files [\#24](https://github.com/JoeLametta/whipper/issues/24)
**Merged pull requests:**
- Sox [\#48](https://github.com/JoeLametta/whipper/pull/48) ([RecursiveForest](https://github.com/RecursiveForest))
- Fast accuraterip checksum [\#37](https://github.com/JoeLametta/whipper/pull/37) ([MerlijnWajer](https://github.com/MerlijnWajer))
## [v0.2.4](https://github.com/JoeLametta/whipper/tree/v0.2.4) (2016-10-09)
[Full Changelog](https://github.com/JoeLametta/whipper/compare/v0.2.3...v0.2.4)
**Implemented enhancements:**
- Don't allow ripping without an explicit offset, and make pycdio a required dependency [\#23](https://github.com/JoeLametta/whipper/issues/23)
- Delete stale branches [\#7](https://github.com/JoeLametta/whipper/issues/7)
- get rid of the gstreamer-0.10 dependency [\#2](https://github.com/JoeLametta/whipper/issues/2)
**Fixed bugs:**
- whipper fails to build on bash-compgen [\#25](https://github.com/JoeLametta/whipper/issues/25)
- \[musicbrainz\] KeyError: 'disc' [\#22](https://github.com/JoeLametta/whipper/issues/22)
- NameError: global name 'musicbrainz' is not defined [\#16](https://github.com/JoeLametta/whipper/issues/16)
- Fix HTOA handling [\#14](https://github.com/JoeLametta/whipper/issues/14)
- rip offset find seems to fail [\#4](https://github.com/JoeLametta/whipper/issues/4)
- rip cd info seems to fail [\#3](https://github.com/JoeLametta/whipper/issues/3)
**Closed issues:**
- Minimal makedepends for building [\#17](https://github.com/JoeLametta/whipper/issues/17)
- Merge 'fork' into 'master' [\#1](https://github.com/JoeLametta/whipper/issues/1)
**Merged pull requests:**
- Issue24 [\#42](https://github.com/JoeLametta/whipper/pull/42) ([JoeLametta](https://github.com/JoeLametta))
- Update .travis.yml [\#39](https://github.com/JoeLametta/whipper/pull/39) ([JoeLametta](https://github.com/JoeLametta))
- Fix issue \#23 [\#32](https://github.com/JoeLametta/whipper/pull/32) ([JoeLametta](https://github.com/JoeLametta))
- Remove thomasvs' python-deps [\#31](https://github.com/JoeLametta/whipper/pull/31) ([JoeLametta](https://github.com/JoeLametta))
- Include name of used logger into whipper's txt report [\#30](https://github.com/JoeLametta/whipper/pull/30) ([JoeLametta](https://github.com/JoeLametta))
- PRE\_EMPHASIS [\#27](https://github.com/JoeLametta/whipper/pull/27) ([RecursiveForest](https://github.com/RecursiveForest))
- Resolve case where \_peakdB is None [\#20](https://github.com/JoeLametta/whipper/pull/20) ([chadberg](https://github.com/chadberg))
- Remove old musicbrainz dependency [\#12](https://github.com/JoeLametta/whipper/pull/12) ([abendebury](https://github.com/abendebury))
- Travis build fix [\#10](https://github.com/JoeLametta/whipper/pull/10) ([abendebury](https://github.com/abendebury))
- Fork [\#6](https://github.com/JoeLametta/whipper/pull/6) ([abendebury](https://github.com/abendebury))
## [v0.2.3](https://github.com/JoeLametta/whipper/tree/v0.2.3) (2014-07-16)
[Full Changelog](https://github.com/JoeLametta/whipper/compare/v0.2.2...v0.2.3)
## [v0.2.2](https://github.com/JoeLametta/whipper/tree/v0.2.2) (2013-07-30)
[Full Changelog](https://github.com/JoeLametta/whipper/compare/v0.2.1...v0.2.2)
## [v0.2.1](https://github.com/JoeLametta/whipper/tree/v0.2.1) (2013-07-15)
[Full Changelog](https://github.com/JoeLametta/whipper/compare/v0.2.0...v0.2.1)
## [v0.2.0](https://github.com/JoeLametta/whipper/tree/v0.2.0) (2013-01-20)
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)* and hand edited by [JoeLametta](https://github.com/JoeLametta).

View File

@@ -1,16 +1,16 @@
# Whipper
[![License: GPLv3+](https://img.shields.io/badge/license-GPLv3+-blue.svg)](https://github.com/JoeLametta/whipper/blob/readme-rewrite/COPYING) [![Build Status](https://travis-ci.org/JoeLametta/whipper.svg?branch=master)](https://travis-ci.org/JoeLametta/whipper) [![Current version number](https://img.shields.io/badge/version-0.4.0-red.svg)](https://github.com/JoeLametta/whipper/releases/latest) [![IRC](https://img.shields.io/badge/irc-%23whipper%40freenode-008000.svg)](https://webchat.freenode.net/?channels=%23whipper) [![GitHub Stars](https://img.shields.io/github/stars/JoeLametta/whipper.svg)](https://github.com/JoeLametta/whipper/stargazers) [![GitHub Issues](https://img.shields.io/github/issues/JoeLametta/whipper.svg)](https://github.com/JoeLametta/whipper/issues)
[![License: GPLv3+](https://img.shields.io/badge/license-GPLv3+-blue.svg)](https://github.com/JoeLametta/whipper/blob/master/LICENSE) [![Build Status](https://travis-ci.org/JoeLametta/whipper.svg?branch=master)](https://travis-ci.org/JoeLametta/whipper) [![Current version number](https://img.shields.io/badge/version-0.4.0-red.svg)](https://github.com/JoeLametta/whipper/releases/latest) [![IRC](https://img.shields.io/badge/irc-%23whipper%40freenode-008000.svg)](https://webchat.freenode.net/?channels=%23whipper) [![GitHub Stars](https://img.shields.io/github/stars/JoeLametta/whipper.svg)](https://github.com/JoeLametta/whipper/stargazers) [![GitHub Issues](https://img.shields.io/github/issues/JoeLametta/whipper.svg)](https://github.com/JoeLametta/whipper/issues)
Whipper is a Python 2 CD-DA ripper, fork of the morituri project (_CDDA ripper for *nix systems aiming for accuracy over speed_). It improves morituri which development seems to have halted merging old ignored pull requests, improving it with bugfixes and new features.
Whipper is developed and tested _only_ on Linux distributions but _should_ work fine on other *nix OSes too.
Whipper is developed and tested _only_ on Linux distributions but _may_ work fine on other *nix OSes too.
In order to track whipper's current development it's advised to check its commit history (README **isn't** still complete).
## Table of content
- [Rationale](#rationale)
- [Features](#features)
- [Release history](#release-history)
- [Changelog](#changelog)
- [Installation](#installation)
1. [Required dependencies](#required-dependencies)
2. [Fetching the source code](#fetching-the-source-code)
@@ -34,23 +34,24 @@ For a detailed description, see morituri's wiki page: [The Art of the Rip](
https://web.archive.org/web/20160528213242/https://thomas.apestaart.org/thomas/trac/wiki/DAD/Rip).
## Features
* Detects correct sample read offset and ability to defeat cache of drives
* Detects correct read offset (in samples)
* Has ability to defeat cache of drives
* Performs Test & Copy rips
* Verifies rip accuracy using the [AccurateRip database](http://www.accuraterip.com/)
* Uses [MusicBrainz](https://musicbrainz.org/doc/About) for metadata lookup
* Supports reading the [pre-emphasis](http://wiki.hydrogenaud.io/index.php?title=Pre-emphasis) flag embedded into some CDs (and correctly tags the resulting rip)
* Detects and rips non digitally silent [Hidden Track One Audio](http://wiki.hydrogenaud.io/index.php?title=HTOA) (HTOA)
* Detects and rips _non digitally silent_ [Hidden Track One Audio](http://wiki.hydrogenaud.io/index.php?title=HTOA) (HTOA)
* Provides batch ripping capabilities
* Provides templates for file and directory naming
* Supports lossless encoding
* Allows retagging of already completed rips
* Supports lossless encoding of ripped audio tracks
* Allows re-tagging of already completed rips
* Allows extensibility through external logger plugins
## Release history
## Changelog
- 0.4.0 - Replace `cdrdao.py` with much simpler version. Logger update. Raise Exception when track rip runs out of attempts. Undelete overzealously removed plugin initialisation (fix regression). Invoke whipper by its name & README rewrite
- 0.3.0 - SoX is now used for peak detection. Migration to setuptools
- 0.2.4 - First tagged release after morituri fork (includes "new config/cache/state file paths" backward incompatible change)
See [CHANGELOG.md](https://github.com/JoeLametta/whipper/blob/master/CHANGELOG.md).
For detailed information, please check the commit history.
## Installation
With the exception of an [AUR package for Arch Linux](https://aur.archlinux.org/packages/whipper-git), whipper isn't currently available in a prepackaged form so, in order to use it, it must be built from its source code.
@@ -65,7 +66,7 @@ Whipper relies on the following packages in order to run correctly and provide a
- `gstreamer0.10-base-plugins` >= **0.10.22** for appsink
- `gstreamer0.10-good-plugins` for wav encoding (it depends on the Linux distro used)
- [python-musicbrainzngs](https://github.com/alastair/python-musicbrainzngs), for metadata lookup
- `python-setuptools`, for installation, plugins support
- [python-setuptools](https://pypi.python.org/pypi/setuptools), for installation, plugins support
- [python-cddb](http://cddb-py.sourceforge.net/), for showing but not using metadata if disc not available in the MusicBrainz DB
- [pycdio](https://pypi.python.org/pypi/pycdio/) (to avoid bugs please use `pycdio` **0.20** & `libcdio` >= **0.90** or, with previous `libcdio` versions, `pycdio` **0.17**), for drive identification
- Required for drive offset and caching behavior to be stored in the configuration file
@@ -114,7 +115,7 @@ is correct, while
is not, because the `-d` argument applies to the whipper command.
~~Check the man page (`whipper(1)`) for more information.~~ (currently not available as whipper's documentation is planned to be migrated to [Sphinx](http://www.sphinx-doc.org)).
~~Check the man page (`whipper(1)`) for more information.~~ (currently not available as whipper's documentation is planned to be reworked ([Issue #73](https://github.com/JoeLametta/whipper/issues/73)).
## Getting started
The simplest way to get started making accurate rips is:
@@ -132,7 +133,7 @@ The simplest way to get started making accurate rips is:
If you omit the `-o` argument, whipper will try a long, popularity-sorted list of drive offsets.
If you can not confirm your drive offset value but wish to set a default regardless, set `read_offset = 42` in `whipper.conf`.
If you can not confirm your drive offset value but wish to set a default regardless, set `read_offset = insert-numeric-value-here` in `whipper.conf`.
Offsets confirmed with `whipper offset find` are automatically written to the configuration file.
@@ -175,7 +176,7 @@ profile = flac
Note: to get a literal `%` character it must be doubled.
## Backward incompatible changes
* Whipper executable name changed: from `rip` to `whipper`
* Whipper executable name changed: from `rip` to `whipper` ([PR #70](https://github.com/JoeLametta/whipper/pull/70))
* Whipper has adopted new config/cache/state file paths ([PR #42](https://github.com/JoeLametta/whipper/pull/42))
* Now always follows XDG specifications
@@ -225,9 +226,9 @@ whipper cd rip -L what
### Official loggers
* [morituri-yamlloger](https://github.com/JoeLametta/morituri-yamllogger) - default whipper logger, yaml format
* [morituri-eaclogger](https://github.com/JoeLametta/morituri-eaclogger) - eac-like logger attempting to maintain strict compatability with EAC
* [morituri-whatlogger](https://github.com/RecursiveForest/morituri-whatlogger) - eac-like logger containing the informational enhancements of the yamllogger, for use on [What.CD](https://what.cd)
* [morituri-yamlloger](https://github.com/JoeLametta/morituri-yamllogger) - default whipper logger (provided as external logger for compatibility with morituri), yaml format
* [morituri-eaclogger](https://github.com/JoeLametta/morituri-eaclogger) - eac-like logger attempting to maintain strict compatiility with EAC
* [morituri-whatlogger](https://github.com/RecursiveForest/morituri-whatlogger) - eac-like logger containing the informational enhancements of the yamllogger, originally designed for use on What.CD
## License
@@ -257,7 +258,7 @@ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
### Bug reports & feature requests
Please use the [issue tracker](https://github.com/JoeLametta/whipper/issues) to report any bugs or file feature requests.
Please use the [issue tracker](https://github.com/JoeLametta/whipper/issues) to report any bugs or to file feature requests.
When filing bug reports, please run the failing command with the environment variable `RIP_DEBUG` set. For example:
@@ -286,7 +287,7 @@ Thanks to:
## Links
You can find us and talk about the project on IRC: [freenode](https://webchat.freenode.net/?channels=%23whipper), **#whipper** channel.
- [What.CD thread (official)](https://what.cd/forums.php?action=viewthread&threadid=163034)
- [Reddit thread (unofficial)](https://www.reddit.com/r/linux/comments/53hyw1/github_joelamettawhipper_for_those_about_to_rip_a/)
- [PassTheHeadphones thread (official)](https://passtheheadphones.me/forums.php?action=viewthread&threadid=150)
- [Arch Linux whipper AUR package](https://aur.archlinux.org/packages/whipper-git/)
- [Unattended ripping using whipper (script by Thomas McWork)](https://github.com/thomas-mc-work/most-possible-unattended-rip)