diff --git a/CHANGES b/CHANGES.md similarity index 52% rename from CHANGES rename to CHANGES.md index 42b7a40..1d1d17c 100644 --- a/CHANGES +++ b/CHANGES.md @@ -1,99 +1,97 @@ -Version 0.8.6: -- Added four methods to the 'PCM' class to allow users to get detailed information about the device: +# Version 0.9.0: +- Added keyword arguments for channels, format, rate and periodsize +- Deprecated `setchannel`, `setformat`, `setrate` and `setperiodsize` - - 'getformats()' returns a dictionary of name / value pairs, one for each of the card's - supported formats - e.g. '{"U8": 1, "S16_LE": 2}', - - 'getchannels()' returns a list of the supported channel numbers, e.g. '[1, 2]', - - 'getrates()' returns supported sample rates for the device, e.g. '[48000]', - - 'getratebounds()' returns the device's official minimum and maximum supported - sample rates as a tuple, e.g. '(4000, 48000)'. +# Version 0.8.6: +- Added four methods to the `PCM` class to allow users to get detailed information about the device: + + - `getformats()` returns a dictionary of name / value pairs, one for each of the card's + supported formats - e.g. `{"U8": 1, "S16_LE": 2}`, + - `getchannels()` returns a list of the supported channel numbers, e.g. `[1, 2]`, + - `getrates()` returns supported sample rates for the device, e.g. `[48000]`, + - `getratebounds()` returns the device's official minimum and maximum supported + sample rates as a tuple, e.g. `(4000, 48000)`. (#82 contributed by @jdstmporter) - Prevent hang on close after capturing audio (#80 contributed by @daym) -Version 0.8.5: -- Return an empty string/bytestring when 'read()' detects an +# Version 0.8.5: +- Return an empty string/bytestring when `read()` detects an overrun. Previously the returned data was undefined (contributed by @jcea) - Unlimited setperiod buffer size when reading frames (contributed by @jcea) -Version 0.8.4: +# Version 0.8.4: - Fix Python3 API usage broken in 0.8.3 -Version 0.8.3: +# Version 0.8.3: - Add DSD sample formats (contributed by @lintweaker) - Add Mixer.handleevents() to acknowledge events identified by select.poll (contributed by @PaulSD) - Add functions for listing cards and their names (contributed by @chrisdiamand) - Add a method for setting enums (contributed by @chrisdiamand) -Version 0.8.2: +# Version 0.8.2: - fix #3 (we cannot get the revision from git for pip installs) -Version 0.8.1: +# Version 0.8.1: - document changes (this file) -Version 0.8: -- 'PCM()' has new 'device' and 'cardindex' keyword arguments. +# Version 0.8: +- `PCM()` has new `device` and `cardindex` keyword arguments. - The keyword 'device' allows to select virtual devices, 'cardindex' can be - used to select hardware cards by index (as with 'mixers()' and 'Mixer()'). + The keyword `device` allows to select virtual devices, `cardindex` can be + used to select hardware cards by index (as with `mixers()` and `Mixer()`). - The 'card' keyword argument is still supported, but deprecated. + The `card` keyword argument is still supported, but deprecated. - The reason for this change is that the 'card' keyword argument guessed + The reason for this change is that the `card` keyword argument guessed a device name from the card name, but this only works sometimes, and breaks opening virtual devices. -- new function 'pcms()' to list available PCM devices. +- new function `pcms()` to list available PCM devices. -- mixers() and Mixer() take an additional 'device' keyword argument. +- `mixers()` and `Mixer()` take an additional `device` keyword argument. This allows to list or open virtual devices. -- The default behaviour of Mixer() without any arguments has changed. - Now Mixer() will try to open the 'default' Mixer instead of the Mixer +- The default behaviour of `Mixer()` without any arguments has changed. + Now Mixer() will try to open the `default` Mixer instead of the Mixer that is associated with card 0. - fix a memory leak under Python 3.x - some more memory leaks in error conditions fixed. -Version 0.7: +# Version 0.7: - fixed several memory leaks (patch 3372909), contributed by Erik Kulyk) - -Version 0.6: +# Version 0.6: - mostly reverted patch 2594366: alsapcm_setup did not do complete error checking for good reasons; some ALSA functions in alsapcm_setup may fail without rendering the device unusable - -Version 0.5: +# Version 0.5: - applied patch 2777035: Fixed setrec method in alsaaudio.c This included a mixertest with more features - fixed/applied patch 2594366: alsapcm_setup does not do any error checking - -Version 0.4: +# Version 0.4: - API changes: mixers() and Mixer() now take a card index instead of a card name as optional parameter. - Support for Python 3.0 - Documentation converted to reStructuredText; use Sphinx instead of LaTeX. -- added cards() -- added PCM.close() -- added Mixer.close() -- added mixer.getenum() +- added `cards()` +- added `PCM.close()` +- added `Mixer.close()` +- added `mixer.getenum()` - -Version 0.3: -- wrapped blocking calls with Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS +# Version 0.3: +- wrapped blocking calls with `Py_BEGIN_ALLOW_THREADS`/`Py_END_ALLOW_THREADS` - added pause - -Version 0.2: +# Version 0.2: - Many bugfixes related to playback in particular - Module documentation in the doc subdirectory - -Version 0.1: +# Version 0.1: - Initial version diff --git a/NOTES.md b/NOTES.md deleted file mode 100644 index c9bf577..0000000 --- a/NOTES.md +++ /dev/null @@ -1,11 +0,0 @@ -# Publishing the documentation - - - Install Sphinx; `sudo pip install sphinx` - - Clone gh-pages branch: `cd doc; git clone -b gh-pages git@github.com:larsimmisch/pyalsaaudio.git gh-pages` - - `cd doc; make publish` - -# Release procedure - - - Update version number in setup.py - - Create tag and push it, i.e. `git tag x.y.z; git push origin x.y.z` - - `python setup.py sdist upload -r pypi`