summaryrefslogtreecommitdiff
path: root/backends.h
diff options
context:
space:
mode:
authorMonty <xiphmont@xiph.org>2003-04-10 11:33:59 +0000
committerMonty <xiphmont@xiph.org>2003-04-10 11:33:59 +0000
commit76bb18a1854d9293bec36238481fb54735cdd473 (patch)
tree736d851faa73ad875b9066d4192f5d46ff9f7d68 /backends.h
parent7916a80caf5ce632a1aacd9418b76b719c3fb772 (diff)
downloadtremor-76bb18a1854d9293bec36238481fb54735cdd473.tar.gz
Initial work on floor memory usage reduction.
Floor 0 more or less complete; eliminated all lookups, reduced stack slightly *and* the code got faster :-) Monty git-svn-id: https://svn.xiph.org/branches/lowmem-branch/Tremor@4600 0101bb08-14d6-0310-b084-bc0e0c8e3800
Diffstat (limited to 'backends.h')
-rw-r--r--backends.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/backends.h b/backends.h
index 50c1c45..32657c2 100644
--- a/backends.h
+++ b/backends.h
@@ -33,10 +33,7 @@
/* Floor backend generic *****************************************/
typedef struct{
vorbis_info_floor *(*unpack)(vorbis_info *,oggpack_buffer *);
- vorbis_look_floor *(*look) (vorbis_dsp_state *,vorbis_info_mode *,
- vorbis_info_floor *);
void (*free_info) (vorbis_info_floor *);
- void (*free_look) (vorbis_look_floor *);
void *(*inverse1) (struct vorbis_block *,vorbis_look_floor *);
int (*inverse2) (struct vorbis_block *,vorbis_look_floor *,
void *buffer,ogg_int32_t *);
@@ -68,8 +65,14 @@ typedef struct{
int class_subbook[VIF_CLASS][8]; /* [VIF_CLASS][subs] */
- int mult; /* 1 2 3 or 4 */
- int postlist[VIF_POSIT+2]; /* first two implicit */
+ int mult; /* 1 2 3 or 4 */
+ ogg_uint16_t postlist[VIF_POSIT+2]; /* first two implicit */
+
+ /* useful, generated values */
+ char forward_index[VIF_POSIT+2];
+ char hineighbor[VIF_POSIT];
+ char loneighbor[VIF_POSIT];
+ int posts;
} vorbis_info_floor1;