aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorRichard Knight <q@1bpm.net>2020-08-24 05:20:46 +0100
committerRichard Knight <q@1bpm.net>2020-08-24 05:20:46 +0100
commit79a083f28e9df04768151c8a916934716b4a2646 (patch)
tree933aa143253dedc768159daabbe9595d0676b537 /README.md
downloadcsound-transforms-79a083f28e9df04768151c8a916934716b4a2646.tar.gz
csound-transforms-79a083f28e9df04768151c8a916934716b4a2646.tar.bz2
csound-transforms-79a083f28e9df04768151c8a916934716b4a2646.zip
initial
Diffstat (limited to 'README.md')
-rw-r--r--README.md73
1 files changed, 73 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..b91227f
--- /dev/null
+++ b/README.md
@@ -0,0 +1,73 @@
+# Introduction
+
+These opcodes present variations on the following transforms:
+ Haar,
+ Walsh/Hadamard
+ Cosine
+
+At current the opcodes will function simply and similar to the fft and fftinv
+opcodes in Csound - ie, the user must implement windowing and ksmps in respect
+to the desired analysis.
+
+These are experimental and exact usage/manipulation of the functions is subject
+to some testing so there may be further development to make the opcodes more
+usable.
+
+Tested on Linux with Csound 6.14
+
+
+# Installation
+
+ mkdir build && cd build
+ cmake ..
+ make
+ sudo make install
+
+
+# Opcodes provided
+Each of the following opcodes receives and emits a k-rate array. The size of the
+input array should be a power of two. The output size will match the input.
+
+
+### tfcosine
+Cosine transform. Notably slow (probably not for realtime usage)
+
+### tfcosineinv
+Inverse cosine transform. As Above
+
+### tfhaar1
+Haar transform, algorithm 1
+
+### tfhaar1inv
+Inverse Haar transform, algorithm 1
+
+### tfhaar2
+Haar transform, algorithm 2
+
+### tfhaar2inv
+Inverse Haar transform, algorithm 1
+
+### tfwalsh1
+Walsh/Hadamard transform, algorithm 1
+
+### tfwalsh2
+Walsh/Hadamard transform, algorithm 2
+
+### tfwalsh2inv
+Inverse Walsh/Hadamard transform, algorithm 2
+
+
+
+
+# Credits
+
+Code, inspiration and relevant licensing has been derived from the following:
+ https://people.sc.fsu.edu/~jburkardt/f_src/walsh/walsh.html
+ https://people.sc.fsu.edu/~jburkardt/f_src/haar/haar.html
+ https://people.sc.fsu.edu/~jburkardt/f_src/cosine_transform/cosine_transform.html
+ https://github.com/mochow13/competitive-programming-library/blob/master/Math/Fast%20Walsh-Hadamard%20Transform.cpp
+
+
+Todo / possibly forthcoming
+ Implement Daubechies wavelets, sine transform.
+