[FFmpeg-cvslog] aacsbr: constify the only SBR table

Lynne git at videolan.org
Tue Apr 23 09:59:16 EEST 2024


ffmpeg | branch: master | Lynne <dev at lynne.ee> | Fri Mar 22 06:43:16 2024 +0100| [176c922e4edac82df2c8ea508f81d2aba29c6468] | committer: Lynne

aacsbr: constify the only SBR table

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=176c922e4edac82df2c8ea508f81d2aba29c6468
---

 libavcodec/aacsbr_template.c |  10 ---
 libavcodec/aacsbrdata.h      | 164 ++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 163 insertions(+), 11 deletions(-)

diff --git a/libavcodec/aacsbr_template.c b/libavcodec/aacsbr_template.c
index 066edbc199..a6e3bc54bd 100644
--- a/libavcodec/aacsbr_template.c
+++ b/libavcodec/aacsbr_template.c
@@ -49,18 +49,8 @@ static inline SpectralBandReplication *get_sbr(ChannelElement *ch)
     return &((ExtChannelElement*)ch)->sbr;
 }
 
-static av_cold void aacsbr_tableinit(void)
-{
-    int n;
-
-    for (n = 0; n < 320; n++)
-        sbr_qmf_window_ds[n] = sbr_qmf_window_us[2*n];
-}
-
 av_cold void AAC_RENAME(ff_aac_sbr_init)(void)
 {
-    aacsbr_tableinit();
-
     AAC_RENAME(ff_ps_init)();
 }
 
diff --git a/libavcodec/aacsbrdata.h b/libavcodec/aacsbrdata.h
index b0585309e0..9c25098240 100644
--- a/libavcodec/aacsbrdata.h
+++ b/libavcodec/aacsbrdata.h
@@ -42,7 +42,169 @@ static const int8_t sbr_offset[6][16] = {
 };
 
 ///< window coefficients for analysis/synthesis QMF banks
-static DECLARE_ALIGNED(32, INTFLOAT, sbr_qmf_window_ds)[320];
+static const DECLARE_ALIGNED(32, INTFLOAT, sbr_qmf_window_ds)[320] = {
+     Q31( 0.0000000000f), Q31(-0.0005617692f),
+     Q31(-0.0004875227f), Q31(-0.0005040714f),
+     Q31(-0.0005466565f), Q31(-0.0005870930f),
+     Q31(-0.0006312493f), Q31(-0.0006777690f),
+     Q31(-0.0007157736f), Q31(-0.0007440941f),
+     Q31(-0.0007681371f), Q31(-0.0007834332f),
+     Q31(-0.0007803664f), Q31(-0.0007757977f),
+     Q31(-0.0007530001f), Q31(-0.0007215391f),
+     Q31(-0.0006650415f), Q31(-0.0005946118f),
+     Q31(-0.0005145572f), Q31(-0.0004095121f),
+     Q31(-0.0002896981f), Q31(-0.0001446380f),
+     Q31( 0.0000134949f), Q31( 0.0002043017f),
+     Q31( 0.0004026540f), Q31( 0.0006239376f),
+     Q31( 0.0008608443f), Q31( 0.0011250155f),
+     Q31( 0.0013902494f), Q31( 0.0016868083f),
+     Q31( 0.0019841140f), Q31( 0.0023017254f),
+     Q31( 0.0026201758f), Q31( 0.0029469447f),
+     Q31( 0.0032739613f), Q31( 0.0036008268f),
+     Q31( 0.0039207432f), Q31( 0.0042264269f),
+     Q31( 0.0045209852f), Q31( 0.0047932560f),
+     Q31( 0.0050393022f), Q31( 0.0052461166f),
+     Q31( 0.0054196775f), Q31( 0.0055475714f),
+     Q31( 0.0056220643f), Q31( 0.0056389199f),
+     Q31( 0.0055917128f), Q31( 0.0054753783f),
+     Q31( 0.0052715758f), Q31( 0.0049839687f),
+     Q31( 0.0046039530f), Q31( 0.0041251642f),
+     Q31( 0.0035401246f), Q31( 0.0028446757f),
+     Q31( 0.0020274176f), Q31( 0.0010902329f),
+     Q31( 0.0000276045f), Q31(-0.0011568135f),
+     Q31(-0.0024826723f), Q31(-0.0039401124f),
+     Q31(-0.0055337211f), Q31(-0.0072615816f),
+     Q31(-0.0091325329f), Q31(-0.0111315548f),
+     Q31( 0.0132718220f), Q31( 0.0155405553f),
+     Q31( 0.0179433381f), Q31( 0.0204531793f),
+     Q31( 0.0230680169f), Q31( 0.0257875847f),
+     Q31( 0.0286072173f), Q31( 0.0315017608f),
+     Q31( 0.0344620948f), Q31( 0.0374812850f),
+     Q31( 0.0405349170f), Q31( 0.0436097542f),
+     Q31( 0.0466843027f), Q31( 0.0497385755f),
+     Q31( 0.0527630746f), Q31( 0.0557173648f),
+     Q31( 0.0585915683f), Q31( 0.0613455171f),
+     Q31( 0.0639715898f), Q31( 0.0664367512f),
+     Q31( 0.0687043828f), Q31( 0.0707628710f),
+     Q31( 0.0725682583f), Q31( 0.0741003642f),
+     Q31( 0.0753137336f), Q31( 0.0761992479f),
+     Q31( 0.0767093490f), Q31( 0.0768230011f),
+     Q31( 0.0765050718f), Q31( 0.0757305756f),
+     Q31( 0.0744664394f), Q31( 0.0726774642f),
+     Q31( 0.0703533073f), Q31( 0.0674525021f),
+     Q31( 0.0639444805f), Q31( 0.0598166570f),
+     Q31( 0.0550460034f), Q31( 0.0495978676f),
+     Q31( 0.0434768782f), Q31( 0.0366418116f),
+     Q31( 0.0290824006f), Q31( 0.0207997072f),
+     Q31( 0.0117623832f), Q31( 0.0019765601f),
+     Q31(-0.0085711749f), Q31(-0.0198834129f),
+     Q31(-0.0319531274f), Q31(-0.0447806821f),
+     Q31(-0.0583705326f), Q31(-0.0726943300f),
+     Q31(-0.0877547536f), Q31(-0.1035329531f),
+     Q31(-0.1200077984f), Q31(-0.1371551761f),
+     Q31(-0.1549607071f), Q31(-0.1733808172f),
+     Q31(-0.1923966745f), Q31(-0.2119735853f),
+     Q31(-0.2320690870f), Q31(-0.2526480309f),
+     Q31(-0.2736634040f), Q31(-0.2950716717f),
+     Q31(-0.3168278913f), Q31(-0.3388722693f),
+     Q31( 0.3611589903f), Q31( 0.3836350013f),
+     Q31( 0.4062317676f), Q31( 0.4289119920f),
+     Q31( 0.4515996535f), Q31( 0.4742453214f),
+     Q31( 0.4967708254f), Q31( 0.5191234970f),
+     Q31( 0.5412553448f), Q31( 0.5630789140f),
+     Q31( 0.5845403235f), Q31( 0.6055783538f),
+     Q31( 0.6261242695f), Q31( 0.6461269695f),
+     Q31( 0.6655139880f), Q31( 0.6842353293f),
+     Q31( 0.7022388719f), Q31( 0.7194462634f),
+     Q31( 0.7358211758f), Q31( 0.7513137456f),
+     Q31( 0.7658674865f), Q31( 0.7794287519f),
+     Q31( 0.7919735841f), Q31( 0.8034485751f),
+     Q31( 0.8138191270f), Q31( 0.8230419890f),
+     Q31( 0.8311038457f), Q31( 0.8379717337f),
+     Q31( 0.8436238281f), Q31( 0.8480315777f),
+     Q31( 0.8511971524f), Q31( 0.8531020949f),
+     Q31( 0.8537385600f), Q31( 0.8531020949f),
+     Q31( 0.8511971524f), Q31( 0.8480315777f),
+     Q31( 0.8436238281f), Q31( 0.8379717337f),
+     Q31( 0.8311038457f), Q31( 0.8230419890f),
+     Q31( 0.8138191270f), Q31( 0.8034485751f),
+     Q31( 0.7919735841f), Q31( 0.7794287519f),
+     Q31( 0.7658674865f), Q31( 0.7513137456f),
+     Q31( 0.7358211758f), Q31( 0.7194462634f),
+     Q31( 0.7022388719f), Q31( 0.6842353293f),
+     Q31( 0.6655139880f), Q31( 0.6461269695f),
+     Q31( 0.6261242695f), Q31( 0.6055783538f),
+     Q31( 0.5845403235f), Q31( 0.5630789140f),
+     Q31( 0.5412553448f), Q31( 0.5191234970f),
+     Q31( 0.4967708254f), Q31( 0.4742453214f),
+     Q31( 0.4515996535f), Q31( 0.4289119920f),
+     Q31( 0.4062317676f), Q31( 0.3836350013f),
+    -Q31( 0.3611589903f), Q31(-0.3388722693f),
+     Q31(-0.3168278913f), Q31(-0.2950716717f),
+     Q31(-0.2736634040f), Q31(-0.2526480309f),
+     Q31(-0.2320690870f), Q31(-0.2119735853f),
+     Q31(-0.1923966745f), Q31(-0.1733808172f),
+     Q31(-0.1549607071f), Q31(-0.1371551761f),
+     Q31(-0.1200077984f), Q31(-0.1035329531f),
+     Q31(-0.0877547536f), Q31(-0.0726943300f),
+     Q31(-0.0583705326f), Q31(-0.0447806821f),
+     Q31(-0.0319531274f), Q31(-0.0198834129f),
+     Q31(-0.0085711749f), Q31( 0.0019765601f),
+     Q31( 0.0117623832f), Q31( 0.0207997072f),
+     Q31( 0.0290824006f), Q31( 0.0366418116f),
+     Q31( 0.0434768782f), Q31( 0.0495978676f),
+     Q31( 0.0550460034f), Q31( 0.0598166570f),
+     Q31( 0.0639444805f), Q31( 0.0674525021f),
+     Q31( 0.0703533073f), Q31( 0.0726774642f),
+     Q31( 0.0744664394f), Q31( 0.0757305756f),
+     Q31( 0.0765050718f), Q31( 0.0768230011f),
+     Q31( 0.0767093490f), Q31( 0.0761992479f),
+     Q31( 0.0753137336f), Q31( 0.0741003642f),
+     Q31( 0.0725682583f), Q31( 0.0707628710f),
+     Q31( 0.0687043828f), Q31( 0.0664367512f),
+     Q31( 0.0639715898f), Q31( 0.0613455171f),
+     Q31( 0.0585915683f), Q31( 0.0557173648f),
+     Q31( 0.0527630746f), Q31( 0.0497385755f),
+     Q31( 0.0466843027f), Q31( 0.0436097542f),
+     Q31( 0.0405349170f), Q31( 0.0374812850f),
+     Q31( 0.0344620948f), Q31( 0.0315017608f),
+     Q31( 0.0286072173f), Q31( 0.0257875847f),
+     Q31( 0.0230680169f), Q31( 0.0204531793f),
+     Q31( 0.0179433381f), Q31( 0.0155405553f),
+    -Q31( 0.0132718220f), Q31(-0.0111315548f),
+     Q31(-0.0091325329f), Q31(-0.0072615816f),
+     Q31(-0.0055337211f), Q31(-0.0039401124f),
+     Q31(-0.0024826723f), Q31(-0.0011568135f),
+     Q31( 0.0000276045f), Q31( 0.0010902329f),
+     Q31( 0.0020274176f), Q31( 0.0028446757f),
+     Q31( 0.0035401246f), Q31( 0.0041251642f),
+     Q31( 0.0046039530f), Q31( 0.0049839687f),
+     Q31( 0.0052715758f), Q31( 0.0054753783f),
+     Q31( 0.0055917128f), Q31( 0.0056389199f),
+     Q31( 0.0056220643f), Q31( 0.0055475714f),
+     Q31( 0.0054196775f), Q31( 0.0052461166f),
+     Q31( 0.0050393022f), Q31( 0.0047932560f),
+     Q31( 0.0045209852f), Q31( 0.0042264269f),
+     Q31( 0.0039207432f), Q31( 0.0036008268f),
+     Q31( 0.0032739613f), Q31( 0.0029469447f),
+     Q31( 0.0026201758f), Q31( 0.0023017254f),
+     Q31( 0.0019841140f), Q31( 0.0016868083f),
+     Q31( 0.0013902494f), Q31( 0.0011250155f),
+     Q31( 0.0008608443f), Q31( 0.0006239376f),
+     Q31( 0.0004026540f), Q31( 0.0002043017f),
+     Q31( 0.0000134949f), Q31(-0.0001446380f),
+     Q31(-0.0002896981f), Q31(-0.0004095121f),
+     Q31(-0.0005145572f), Q31(-0.0005946118f),
+     Q31(-0.0006650415f), Q31(-0.0007215391f),
+     Q31(-0.0007530001f), Q31(-0.0007757977f),
+     Q31(-0.0007803664f), Q31(-0.0007834332f),
+     Q31(-0.0007681371f), Q31(-0.0007440941f),
+     Q31(-0.0007157736f), Q31(-0.0006777690f),
+     Q31(-0.0006312493f), Q31(-0.0005870930f),
+     Q31(-0.0005466565f), Q31(-0.0005040714f),
+     Q31(-0.0004875227f), Q31(-0.0005617692f),
+};
+
 /* This table contains redundancy: It is symmetric about the entry #320
  * with the exception of entries 384 and 512 which are negated. */
 static const DECLARE_ALIGNED(32, INTFLOAT, sbr_qmf_window_us)[640] = {



More information about the ffmpeg-cvslog mailing list