]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/sbr.h
dirac: add Comments and references to the standard
[ffmpeg] / libavcodec / sbr.h
index 7d06faddde9cac5d37b795dd5a6b64ea67a48fb2..228b158e109c3d9c8280875e56f2949093fa88a3 100644 (file)
@@ -78,8 +78,8 @@ typedef struct {
      * @name State variables
      * @{
      */
-    DECLARE_ALIGNED(16, float, synthesis_filterbank_samples)[SBR_SYNTHESIS_BUF_SIZE];
-    DECLARE_ALIGNED(16, float, analysis_filterbank_samples) [1312];
+    DECLARE_ALIGNED(32, float, synthesis_filterbank_samples)[SBR_SYNTHESIS_BUF_SIZE];
+    DECLARE_ALIGNED(32, float, analysis_filterbank_samples) [1312];
     int                synthesis_filterbank_samples_offset;
     ///l_APrev and l_A
     int                e_a[2];
@@ -88,6 +88,7 @@ typedef struct {
     ///QMF values of the original signal
     float              W[2][32][32][2];
     ///QMF output of the HF adjustor
+    int                Ypos;
     DECLARE_ALIGNED(16, float, Y)[2][38][64][2];
     DECLARE_ALIGNED(16, float, g_temp)[42][48];
     float              q_temp[42][48];
@@ -132,6 +133,7 @@ typedef struct {
     unsigned           kx[2];
     ///M' and M respectively, M is the number of QMF subbands that use SBR.
     unsigned           m[2];
+    unsigned           kx_and_m_pushed;
     ///The number of frequency bands in f_master
     unsigned           n_master;
     SBRData            data[2];
@@ -178,7 +180,7 @@ typedef struct {
     ///Sinusoidal levels
     float              s_m[7][48];
     float              gain[7][48];
-    DECLARE_ALIGNED(16, float, qmf_filter_scratch)[5][64];
+    DECLARE_ALIGNED(32, float, qmf_filter_scratch)[5][64];
     FFTContext         mdct_ana;
     FFTContext         mdct;
     SBRDSPContext      dsp;