aboutsummaryrefslogtreecommitdiffstats
path: root/libavutil/tx.h
diff options
context:
space:
mode:
authorLynne <dev@lynne.ee>2021-04-10 03:55:37 +0200
committerLynne <dev@lynne.ee>2021-04-24 17:17:27 +0200
commit0072a4238817c18e31e1f59cf8ec9a30bdf42a5c (patch)
tree39b04294b66621fd47abf5437dea5df441df7dcd /libavutil/tx.h
parentaa6c757d50ca060cab05c3a822a43563934823a1 (diff)
downloadffmpeg-0072a4238817c18e31e1f59cf8ec9a30bdf42a5c.tar.gz
lavu/tx: add full-sized iMDCT transform flag
Diffstat (limited to 'libavutil/tx.h')
-rw-r--r--libavutil/tx.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/libavutil/tx.h b/libavutil/tx.h
index a3d70644e4..55173810ee 100644
--- a/libavutil/tx.h
+++ b/libavutil/tx.h
@@ -55,7 +55,8 @@ enum AVTXType {
* Stride must be a non-zero multiple of sizeof(float).
*
* NOTE: the inverse transform is half-length, meaning the output will not
- * contain redundant data. This is what most codecs work with.
+ * contain redundant data. This is what most codecs work with. To do a full
+ * inverse transform, set the AV_TX_FULL_IMDCT flag on init.
*/
AV_TX_FLOAT_MDCT = 1,
@@ -116,6 +117,14 @@ enum AVTXFlags {
* May be slower with certain transform types.
*/
AV_TX_UNALIGNED = 1ULL << 1,
+
+ /**
+ * Performs a full inverse MDCT rather than leaving out samples that can be
+ * derived through symmetry. Requires an output array of 'len' floats,
+ * rather than the usual 'len/2' floats.
+ * Ignored for all transforms but inverse MDCTs.
+ */
+ AV_TX_FULL_IMDCT = 1ULL << 2,
};
/**