aboutsummaryrefslogtreecommitdiff
path: root/dhwt-codec/src/transform.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-05-05 15:09:54 +0200
committermetamuffin <metamuffin@disroot.org>2025-05-05 15:09:54 +0200
commit306f96164784a8cbf405e72fa4364d6523366e95 (patch)
tree51717fc139871baa438aad806f4923669ae0896c /dhwt-codec/src/transform.rs
parent9cc089e2d6e841879e430b01d2f3d92c8820523e (diff)
downloadvideo-codec-experiments-306f96164784a8cbf405e72fa4364d6523366e95.tar
video-codec-experiments-306f96164784a8cbf405e72fa4364d6523366e95.tar.bz2
video-codec-experiments-306f96164784a8cbf405e72fa4364d6523366e95.tar.zst
old dir
Diffstat (limited to 'dhwt-codec/src/transform.rs')
-rw-r--r--dhwt-codec/src/transform.rs42
1 files changed, 0 insertions, 42 deletions
diff --git a/dhwt-codec/src/transform.rs b/dhwt-codec/src/transform.rs
deleted file mode 100644
index 82bccd1..0000000
--- a/dhwt-codec/src/transform.rs
+++ /dev/null
@@ -1,42 +0,0 @@
-use crate::io::{Value, TWO};
-use std::ops::{Index, IndexMut};
-
-pub fn encode<X: Index<usize, Output = Value> + IndexMut<usize, Output = Value>>(
- size: usize,
- a: &mut X,
- b: &mut X,
-) {
- let mut k = size;
- while k != 1 {
- k /= 2;
- for i in 0..k {
- let x = a[i * 2];
- let y = a[i * 2 + 1];
- b[i] = x + y;
- b[k + i] = x - y;
- }
- for i in 0..k {
- a[i] = b[i]
- }
- }
-}
-
-pub fn decode<X: Index<usize, Output = Value> + IndexMut<usize, Output = Value>>(
- size: usize,
- a: &mut X,
- b: &mut X,
-) {
- let mut k = 1;
- while k != size {
- for i in 0..k {
- let avr = a[i] / TWO;
- let spread = a[i + k] / TWO;
- b[i * 2] = avr + spread;
- b[i * 2 + 1] = avr - spread;
- }
- k *= 2;
- for i in 0..k {
- a[i] = b[i]
- }
- }
-}