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

superdump subversion at mplayerhq.hu
Thu Jun 19 16:48:41 CEST 2008


Author: superdump
Date: Thu Jun 19 16:48:41 2008
New Revision: 2481

Log:
Add code necessary to switch to a generic channel element struct


Modified:
   aac/aac.c

Modified: aac/aac.c
==============================================================================
--- aac/aac.c	(original)
+++ aac/aac.c	Thu Jun 19 16:48:41 2008
@@ -334,6 +334,20 @@ typedef struct {
 } cc_struct;
 
 /**
+ * Channel Element
+ * Generic struct for SCE/CPE/CCE/LFE
+ */
+typedef struct {
+    // CPE specific
+    int common_window;     ///< Set if channels share a common 'ics_struct' in bitstream
+    ms_struct ms;
+    // Shared
+    sce_struct ch[2];
+    // CCE specific
+    coupling_struct coup;
+} che_struct;
+
+/**
  * Main AAC context
  */
 typedef struct {
@@ -482,6 +496,19 @@ static void cc_freep(cc_struct **s) {
 }
 
 /**
+ * Free a Channel Element
+ */
+static void che_freep(che_struct **s) {
+    if(!*s)
+        return;
+    av_free((*s)->ch[0].ssr);
+    av_free((*s)->ch[1].ssr);
+    av_free((*s)->ch[0].ltp_state);
+    av_free((*s)->ch[1].ltp_state);
+    av_freep(s);
+}
+
+/**
  * Configure output channel order and optional mixing based on the current
  * program config element and user requested channels.
  *



More information about the FFmpeg-soc mailing list