diff options
author | Lynne <dev@lynne.ee> | 2022-01-20 07:14:46 +0100 |
---|---|---|
committer | Lynne <dev@lynne.ee> | 2022-01-26 04:12:44 +0100 |
commit | ef4bd8161575a79f0ac247ad0aa2f05b8c20052b (patch) | |
tree | cf8488b2f2e9b0b88dd04b511113289d79852486 /libavutil/tx.h | |
parent | c14976be045f3fe658c12d7e30946cdb380452ec (diff) |
lavu/tx: rewrite internal code as a tree-based codelet constructor
This commit rewrites the internal transform code into a constructor
that stitches transforms (codelets).
This allows for transforms to reuse arbitrary parts of other
transforms, and allows transforms to be stacked onto one
another (such as a full iMDCT using a half-iMDCT which in turn
uses an FFT). It also permits for each step to be individually
replaced by assembly or a custom implementation (such as an ASIC).
Diffstat (limited to 'libavutil/tx.h')
-rw-r--r-- | libavutil/tx.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavutil/tx.h b/libavutil/tx.h index 94626e709f..0e57874376 100644 --- a/libavutil/tx.h +++ b/libavutil/tx.h @@ -52,6 +52,7 @@ enum AVTXType { * Standard MDCT with a sample data type of float, double or int32_t, * respecively. For the float and int32 variants, the scale type is * 'float', while for the double variant, it's 'double'. + * If scale is NULL, 1.0 will be used as a default. * * Length is the frame size, not the window size (which is 2x frame). * For forward transforms, the stride specifies the spacing between each @@ -67,6 +68,9 @@ enum AVTXType { AV_TX_FLOAT_MDCT = 1, AV_TX_DOUBLE_MDCT = 3, AV_TX_INT32_MDCT = 5, + + /* Not part of the API, do not use */ + AV_TX_NB, }; /** |