summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/openmax_dl/dl/sp/api/omxSP.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/openmax_dl/dl/sp/api/omxSP.h')
-rw-r--r--chromium/third_party/openmax_dl/dl/sp/api/omxSP.h106
1 files changed, 106 insertions, 0 deletions
diff --git a/chromium/third_party/openmax_dl/dl/sp/api/omxSP.h b/chromium/third_party/openmax_dl/dl/sp/api/omxSP.h
index 5a7980ad452..d056fb9bfd4 100644
--- a/chromium/third_party/openmax_dl/dl/sp/api/omxSP.h
+++ b/chromium/third_party/openmax_dl/dl/sp/api/omxSP.h
@@ -2203,6 +2203,59 @@ OMXResult omxSP_FFTFwd_RToCCS_S32_Sfs (
);
/**
+ * Function: omxSP_FFTFwd_CToC_FC32_Sfs (2.2.4.2.2)
+ *
+ * Description:
+ * Compute an FFT for a complex signal of length of 2^order,
+ * where 0 <= order <= 15.
+ * Transform length is determined by the specification structure, which
+ * must be initialized prior to calling the FFT function using the appropriate
+ * helper, i.e., <FFTInit_C_sc32> or <FFTInit_C_SC16>. The relationship
+ * between the input and output sequences can be expressed in terms of the
+ * DFT, i.e.,
+ *
+ * X[k] = SUM[n=0...N-1]x[n].e^(-jnk.2.pi/N)
+ * k = 0,1,2,..., N-1
+ * N = 2^order
+ *
+ * Input Arguments:
+ * pSrc - pointer to the input signal, a complex-valued vector of length
+ * 2^order; must be aligned on a 32 byte boundary.
+ * pFFTSpec - pointer to the preallocated and initialized specification
+ * structure
+ *
+ * Output Arguments:
+ * pDst - pointer to the complex-valued output vector, of length 2^order;
+ * must be aligned on an 32-byte boundary.
+ *
+ * Return Value:
+ *
+ * OMX_Sts_NoErr - no error
+ * OMX_Sts_BadArgErr - returned if one or more of the following conditions
+ * is true:
+ * - one or more of the following pointers is NULL: pSrc, pDst, or
+ * pFFTSpec.
+ * - pSrc or pDst is not 32-byte aligned
+ * - scaleFactor<0 or scaleFactor >32
+ *
+ */
+OMXResult omxSP_FFTFwd_CToC_FC32_Sfs (
+ const OMX_FC32 *pSrc,
+ OMX_FC32 *pDst,
+ const OMXFFTSpec_C_FC32 *pFFTSpec
+);
+#ifdef __arm__
+/*
+ * Non-NEON version
+ */
+OMXResult omxSP_FFTFwd_CToC_FC32_Sfs_vfp (
+ const OMX_FC32 *pSrc,
+ OMX_FC32 *pDst,
+ const OMXFFTSpec_C_FC32 *pFFTSpec
+);
+#endif
+
+/**
* Function: omxSP_FFTFwd_RToCCS_F32_Sfs
*
* Description:
@@ -2421,6 +2474,59 @@ OMXResult omxSP_FFTInv_CCSToR_S32_Sfs (
);
/**
+ * Function: omxSP_FFTInv_CToC_FC32_Sfs (2.2.4.2.4)
+ *
+ * Description:
+ * These functions compute an inverse FFT for a complex signal of
+ * length of 2^order, where 0 <= order <= 15. Transform length is
+ * determined by the specification structure, which must be
+ * initialized prior to calling the FFT function using the appropriate
+ * helper, i.e., <FFTInit_C_FC32>. The relationship between the input
+ * and output sequences can be expressed in terms of the IDFT, i.e.:
+ *
+ * x[n] = SUM[k=0,...,N-1] X[k].e^(jnk.2.pi/N)
+ * n=0,1,2,...N-1
+ * N=2^order.
+ *
+ * Input Arguments:
+ * pSrc - pointer to the complex-valued input signal, of length 2^order ;
+ * must be aligned on a 32-byte boundary.
+ * pFFTSpec - pointer to the preallocated and initialized specification
+ * structure
+ *
+ * Output Arguments:
+ * order
+ * pDst - pointer to the complex-valued output signal, of length 2^order;
+ * must be aligned on a 32-byte boundary.
+ *
+ * Return Value:
+ *
+ * OMX_Sts_NoErr - no error
+ * OMX_Sts_BadArgErr - returned if one or more of the following conditions
+ * is true:
+ * - one or more of the following pointers is NULL: pSrc, pDst, or
+ * pFFTSpec.
+ * - pSrc or pDst is not 32-byte aligned
+ * - scaleFactor<0 or scaleFactor>32
+ *
+ */
+OMXResult omxSP_FFTInv_CToC_FC32_Sfs (
+ const OMX_FC32 *pSrc,
+ OMX_FC32 *pDst,
+ const OMXFFTSpec_C_FC32 *pFFTSpec
+);
+#ifdef __arm__
+/*
+ * Non-NEON version
+ */
+OMXResult omxSP_FFTInv_CToC_FC32_Sfs_vfp (
+ const OMX_FC32 *pSrc,
+ OMX_FC32 *pDst,
+ const OMXFFTSpec_C_FC32 *pFFTSpec
+);
+#endif
+
+/**
* Function: omxSP_FFTInv_CCSToR_F32_Sfs
*
* Description: