Author: Armin Rigo <[email protected]>
Branch: py3.5
Changeset: r87093:df95ced30bec
Date: 2016-09-13 20:00 +0200
http://bitbucket.org/pypy/pypy/changeset/df95ced30bec/
Log: audioop.byteswap()
diff --git a/lib_pypy/audioop.py b/lib_pypy/audioop.py
--- a/lib_pypy/audioop.py
+++ b/lib_pypy/audioop.py
@@ -578,3 +578,18 @@
lib.adcpm2lin(rv, cp, len(cp), size, state_ptr)
return ffi.buffer(rv)[:], tuple(state_ptr)
+
+def byteswap(cp, size):
+ if len(cp) % size != 0:
+ raise error("not a whole number of frames")
+ sample_count = _sample_count(cp, size)
+ rv = ffi.new("unsigned char[]", len(cp))
+ base = size
+ next_bump = 0
+ bump = 2 * size
+ for i in range(len(cp)):
+ base -= 1
+ rv[i] = cp[base]
+ if base == next_bump:
+ base += bump
+ return ffi.buffer(rv)[:]
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit