View difference between Paste ID: m472e1f69 and
SHOW: | | - or go back to the newest paste.
1
Index: apps/codecs/lib/codeclib.h
2
===================================================================
3
--- apps/codecs/lib/codeclib.h	(revision 24686)
4
+++ apps/codecs/lib/codeclib.h	(working copy)
5
@@ -68,11 +68,11 @@
6
 extern void mdct_backward(int n, int32_t *in, int32_t *out);
7
 /* -2- ffmpeg fft-based mdct */
8
 extern int ff_mdct_init(MDCTContext *s, int nbits, int inverse);
9
-extern void ff_imdct_half(MDCTContext *s, int32_t *output, const int32_t *input);
10
-extern void ff_imdct_calc(MDCTContext *s, int32_t *output, const int32_t *input);
11
+extern void ff_imdct_half(int nbits, int32_t *output, const int32_t *input);
12
+extern void ff_imdct_calc(int nbits, int32_t *output, const int32_t *input);
13
 /*ffmpeg fft (can be used without mdct)*/
14
 extern void ff_fft_calc_c(int nbits, FFTComplex *z);
15
-extern int ff_fft_init(void *s, int nbits, int inverse);
16
+//extern int ff_fft_init(void *s, int nbits, int inverse);
17
 
18
 #if defined(CPU_ARM) && (ARM_ARCH == 4)
19
 /* optimised unsigned integer division for ARMv4, in IRAM */
20
Index: apps/codecs/lib/mdct.c
21
===================================================================
22
--- apps/codecs/lib/mdct.c	(revision 24686)
23
+++ apps/codecs/lib/mdct.c	(working copy)
24
@@ -56,12 +56,12 @@
25
  * NOTE - CANNOT CURRENTLY OPERATE IN PLACE (input and output must
26
  *                                          not overlap or intersect at all)
27
  */
28
-void ff_imdct_half(MDCTContext *s, fixed32 *output, const fixed32 *input)
29
+void ff_imdct_half(int nbits, fixed32 *output, const fixed32 *input)
30
 {
31
     int n8, n4, n2, n, j;
32
     const fixed32 *in1, *in2;
33
     
34
-    n = 1 << s->nbits;
35
+    n = 1 << nbits;
36
 
37
     n2 = n >> 1;
38
     n4 = n >> 2;
39
@@ -74,8 +74,8 @@
40
     in2 = input + n2 - 1;
41
     
42
     /* revtab comes from the fft; revtab table is sized for N=4096 size fft = 2^12.
43
-       The fft is size N/4 so s->nbits-2, so our shift needs to be (12-(nbits-2)) */
44
-    const int revtab_shift = (14- s->nbits);
45
+       The fft is size N/4 so nbits-2, so our shift needs to be (12-(nbits-2)) */
46
+    const int revtab_shift = (14- nbits);
47
     
48
     /* bitreverse reorder the input and rotate;   result here is in OUTPUT ... */
49
     /* (note that when using the current split radix, the bitreverse ordering is
50
@@ -93,7 +93,7 @@
51
         an mdct-local set of twiddles to do that part)
52
        */
53
     const int32_t *T = sincos_lookup0;
54
-    const int step = 2<<(12-s->nbits);
55
+    const int step = 2<<(12-nbits);
56
     const uint16_t * p_revtab=revtab;
57
     {
58
         const uint16_t * const p_revtab_end = p_revtab + n8;
59
@@ -134,10 +134,10 @@
60
 
61
 
62
     /* ... and so fft runs in OUTPUT buffer */
63
-    ff_fft_calc_c(s->nbits-2, z);
64
+    ff_fft_calc_c(nbits-2, z);
65
 
66
     /* post rotation + reordering.  now keeps the result within the OUTPUT buffer */
67
-    switch( s->nbits )
68
+    switch( nbits )
69
     {
70
         default:
71
         {
72
@@ -266,9 +266,9 @@
73
  *            <-----------output----------->
74
  *
75
  */
76
-void ff_imdct_calc(MDCTContext *s, fixed32 *output, const fixed32 *input)
77
+void ff_imdct_calc(int nbits, fixed32 *output, const fixed32 *input)
78
 {
79
-    const int n = (1<<s->nbits);
80
+    const int n = (1<<nbits);
81
     const int n2 = (n>>1);
82
     const int n4 = (n>>2);
83
     
84
Index: apps/codecs/lib/mdct.h
85
===================================================================
86
--- apps/codecs/lib/mdct.h	(revision 24680)
87
+++ apps/codecs/lib/mdct.h	(working copy)
88
@@ -35,8 +35,8 @@
89
 MDCTContext;
90
 
91
 int ff_mdct_init(MDCTContext *s, int nbits, int inverse);
92
-void ff_imdct_calc(MDCTContext *s, fixed32 *output, const fixed32 *input);
93
-void ff_imdct_half(MDCTContext *s, fixed32 *output, const fixed32 *input);
94
+void ff_imdct_calc(int nbits, fixed32 *output, const fixed32 *input);
95
+void ff_imdct_half(int nbits, fixed32 *output, const fixed32 *input);
96
 
97
 #ifdef CPU_ARM
98
 
99
Index: apps/codecs/libwma/wmadeci.c
100
===================================================================
101
--- apps/codecs/libwma/wmadeci.c	(revision 24680)
102
+++ apps/codecs/libwma/wmadeci.c	(working copy)
103
@@ -1253,7 +1253,7 @@
104
             mdct_backward( (1 << (s->block_len_bits+1)), (int32_t*)(*(s->coefs))[ch], (int32_t*)scratch_buffer);
105
 */
106
             /*slower but more easily understood IMDCT from FFMPEG*/
107
-            ff_imdct_calc(&s->mdct_ctx[bsize],
108
+            ff_imdct_calc(s->block_len_bits+1,
109
                           (int32_t*)scratch_buffer,
110
                           (*(s->coefs))[ch]);
111
 
112