diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2013-02-09 09:12:36 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2013-02-09 09:12:36 (GMT) |
commit | 8135de80f799431d041878315840ef3a7110d0a3 (patch) | |
tree | e3bbbac469eb6e0d090dc040b52f0a1f806cbaf1 /Doc | |
parent | aa20b000d197aef58bd7d4e31af39433983ed036 (diff) | |
parent | 01ad622a2cd73561b66d0f6287cb5b66de0bb0b3 (diff) | |
download | cpython-8135de80f799431d041878315840ef3a7110d0a3.zip cpython-8135de80f799431d041878315840ef3a7110d0a3.tar.gz cpython-8135de80f799431d041878315840ef3a7110d0a3.tar.bz2 |
Issue #16686: Fixed a lot of bugs in audioop module.
* avgpp() and maxpp() no more crash on empty and 1-samples input fragment. They now work when peak-peak values are greater INT_MAX.
* ratecv() no more crashes on empty input fragment.
* Fixed an integer overflow in ratecv().
* Fixed an integer overflow in add() and bias() for 32-bit samples.
* reverse(), lin2lin() and ratecv() no more lose precision for 32-bit samples.
* max() and rms() no more returns negative result for 32-bit sample -0x80000000.
* minmax() now returns correct max value for 32-bit sample -0x80000000.
* avg(), mul(), tomono() and tostereo() now round negative result down and can return 32-bit sample -0x80000000.
* add() now can return 32-bit sample -0x80000000.
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/library/audioop.rst | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Doc/library/audioop.rst b/Doc/library/audioop.rst index c947608..d4c0c95 100644 --- a/Doc/library/audioop.rst +++ b/Doc/library/audioop.rst @@ -36,7 +36,7 @@ The module defines the following variables and functions: Return a fragment which is the addition of the two samples passed as parameters. *width* is the sample width in bytes, either ``1``, ``2`` or ``4``. Both - fragments should have the same length. + fragments should have the same length. Samples are truncated in case of overflow. .. function:: adpcm2lin(adpcmfragment, width, state) @@ -67,7 +67,7 @@ The module defines the following variables and functions: .. function:: bias(fragment, width, bias) Return a fragment that is the original fragment with a bias added to each - sample. + sample. Samples wrap around in case of overflow. .. function:: cross(fragment, width) @@ -175,7 +175,7 @@ The module defines the following variables and functions: .. function:: mul(fragment, width, factor) Return a fragment that has all samples in the original fragment multiplied by - the floating-point value *factor*. Overflow is silently ignored. + the floating-point value *factor*. Samples are truncated in case of overflow. .. function:: ratecv(fragment, width, nchannels, inrate, outrate, state[, weightA[, weightB]]) |