[FFmpeg-soc] [soc]: r1982 - aac/aac.c

andoma subversion at mplayerhq.hu
Thu Mar 6 10:51:08 CET 2008


Author: andoma
Date: Thu Mar  6 10:51:08 2008
New Revision: 1982

Log:
Add doxygen compatible comments.



Modified:
   aac/aac.c

Modified: aac/aac.c
==============================================================================
--- aac/aac.c	(original)
+++ aac/aac.c	Thu Mar  6 10:51:08 2008
@@ -145,10 +145,10 @@ typedef struct {
     int lfe_type[MAX_TAGID];
     int  cc_type[MAX_TAGID];
 
-    int mono_mixdown;         //< The SCE tag to use if user requests mono output,   -1 if not available
-    int stereo_mixdown;       //< The CPE tag to use if user requests stereo output, -1 if not available
-    int mixdown_coeff_index;  //< 0-3
-    int pseudo_surround;      //< Mix surround channels out of phase
+    int mono_mixdown;         ///< The SCE tag to use if user requests mono output,   -1 if not available
+    int stereo_mixdown;       ///< The CPE tag to use if user requests stereo output, -1 if not available
+    int mixdown_coeff_index;  ///< 0-3
+    int pseudo_surround;      ///< Mix surround channels out of phase
 
 } program_config_struct;
 
@@ -159,15 +159,18 @@ typedef struct {
     int used[MAX_LTP_LONG_SFB];
 } ltp_struct;
 
+/**
+ * Individual Channel Stream
+ */
 typedef struct {
     int intensity_present;
     int noise_present;
 
     int max_sfb;
     int window_sequence;
-    int window_shape;
+    int window_shape;             ///< If set, use Kaiser-Bessel window, otherwise use a sinus window
     int window_shape_prev;
-    int predictor;
+    int predictor;                ///< XXX: Remove this
     int num_window_groups;
     uint8_t grouping;
     uint8_t group_len[8];
@@ -239,41 +242,54 @@ typedef struct {
     float buf[4][24];
 } ssr_struct;
 
+/**
+ * Coupling parameters
+ */
 typedef struct {
-    int ind_sw;
-    int domain;
+    int ind_sw;            ///< Set if independant coupling (i.e. after IMDCT)
+    int domain;            ///< Controls if coupling is performed before (0) or after (1) the TNS decoding of the target channels
 
-    int num_coupled;
-    int is_cpe[9];
-    int tag_select[9];
-    int l[9];
-    int r[9];
+
+    int num_coupled;       ///< Number of target elements
+    int is_cpe[9];         ///< Set if target is an CPE (otherwise it's an SCE)
+    int tag_select[9];     ///< Element tag index
+    int l[9];              ///< Apply gain to left channel of an CPE
+    int r[9];              ///< Apply gain to right channel of an CPE
 
     float gain[18][8][64];
 } coupling_struct;
 
-// individual channel element
+
+/**
+ * Single Channel Element
+ * Used for both SCE and LFE elements
+ */
 typedef struct {
     int global_gain;
     float mixing_gain;
     ics_struct ics;
     tns_struct tns;
-    int cb[8][64];   // codebooks
-    float sf[8][64];
-    DECLARE_ALIGNED_16(float, coeffs[1024]);
-    DECLARE_ALIGNED_16(float, saved[1024]);
-    DECLARE_ALIGNED_16(float, ret[1024]);
+    int cb[8][64];                            ///< Codebooks
+    float sf[8][64];                          ///< Scalefactors
+    DECLARE_ALIGNED_16(float, coeffs[1024]);  ///< Coefficients for IMDCT
+    DECLARE_ALIGNED_16(float, saved[1024]);   ///< Overlap
+    DECLARE_ALIGNED_16(float, ret[1024]);     ///< PCM output
     int16_t *ltp_state;
     ssr_struct *ssr;
 } sce_struct;
 
-// channel element
+/**
+ * Channel Pair Element
+ */
 typedef struct {
-    int common_window;
+    int common_window;     ///< Set if channels share a common 'ics_struct' in bitstream
     ms_struct ms;
     sce_struct ch[2];
 } cpe_struct;
 
+/**
+ * Channel Coupling
+ */
 typedef struct {
     coupling_struct coup;
     sce_struct ch;
@@ -322,11 +338,11 @@ typedef struct {
     DECLARE_ALIGNED_16(float, intensity_tab[256]);
     DECLARE_ALIGNED_16(float, ivquant_tab[256]);
     DECLARE_ALIGNED_16(float, revers[1024]);
-    float* interleaved_output;
-    float *output_data[MAX_CHANNELS];
-    sce_struct *mm_center;            //< Center SCE to use for matrix mixdown
-    cpe_struct *mm_front;             //< Front  CPE to use for matrix mixdown
-    cpe_struct *mm_back;              //< Back   CPE to use for matrix mixdown
+    float* interleaved_output;                        ///< Interim buffer for interleaving PCM samples
+    float *output_data[MAX_CHANNELS];                 ///< Points to each channels 'ret' buffer (PCM output)
+    sce_struct *mm_center;                            ///< Center SCE to use for matrix mixdown
+    cpe_struct *mm_front;                             ///< Front  CPE to use for matrix mixdown
+    cpe_struct *mm_back;                              ///< Back   CPE to use for matrix mixdown
 
     MDCTContext mdct;
     MDCTContext mdct_small;



More information about the FFmpeg-soc mailing list