1 /* ------------------------------------------------------------------ 2 * Copyright (C) 1998-2009 PacketVideo 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13 * express or implied. 14 * See the License for the specific language governing permissions 15 * and limitations under the License. 16 * ------------------------------------------------------------------- 17 */ 18 /* 19 20 Pathname: s_frameinfo.h 21 22 ------------------------------------------------------------------------------ 23 REVISION HISTORY 24 25 Description: Changed name of bk_sfb_top to frame_sfb_top. 26 Included "interface.h" for defintion of MAX_WIN. This 27 will hopefully be simplified when interface.h is broken up into smaller 28 include files. 29 30 Description: Eliminated the never used array, group_offs[8] 31 32 Description: 33 (1) Modified to include the lines... 34 35 #ifdef __cplusplus 36 extern "C" { 37 #endif 38 39 #ifdef __cplusplus 40 } 41 #endif 42 43 (2) Updated the copyright header. 44 45 Description: 46 47 ------------------------------------------------------------------------------ 48 INCLUDE DESCRIPTION 49 50 This include file defines the structure, FrameInfo 51 52 ------------------------------------------------------------------------------ 53 */ 54 55 /*---------------------------------------------------------------------------- 56 ; CONTINUE ONLY IF NOT ALREADY DEFINED 57 ----------------------------------------------------------------------------*/ 58 #ifndef S_FRAMEINFO_H 59 #define S_FRAMEINFO_H 60 61 #ifdef __cplusplus 62 extern "C" 63 { 64 #endif 65 66 /*---------------------------------------------------------------------------- 67 ; INCLUDES 68 ----------------------------------------------------------------------------*/ 69 #include "pv_audio_type_defs.h" 70 #include "e_blockswitching.h" 71 72 /*---------------------------------------------------------------------------- 73 ; MACROS 74 ; Define module specific macros here 75 ----------------------------------------------------------------------------*/ 76 77 /*---------------------------------------------------------------------------- 78 ; DEFINES 79 ; Include all pre-processor statements here. 80 ----------------------------------------------------------------------------*/ 81 82 /*---------------------------------------------------------------------------- 83 ; EXTERNAL VARIABLES REFERENCES 84 ; Declare variables used in this module but defined elsewhere 85 ----------------------------------------------------------------------------*/ 86 87 /*---------------------------------------------------------------------------- 88 ; SIMPLE TYPEDEF'S 89 ----------------------------------------------------------------------------*/ 90 91 /*---------------------------------------------------------------------------- 92 ; ENUMERATED TYPEDEF'S 93 ----------------------------------------------------------------------------*/ 94 95 /*---------------------------------------------------------------------------- 96 ; STRUCTURES TYPEDEF'S 97 ----------------------------------------------------------------------------*/ 98 typedef struct 99 { 100 Int islong; /* true if long block */ 101 Int num_win; /* sub-blocks (SB) per block */ 102 Int coef_per_frame; /* coef's per block */ 103 Int sfb_per_frame; /* sfb per block */ 104 Int coef_per_win[MAX_WIN]; /* coef's per SB */ 105 Int sfb_per_win[MAX_WIN]; /* sfb per SB */ 106 Int sectbits[MAX_WIN]; 107 Int16 *win_sfb_top[MAX_WIN]; /* top coef per sfb per SB */ 108 Int *sfb_width_128; /* sfb width for short blocks */ 109 110 Int frame_sfb_top[MAXBANDS]; /* Only used in calc_gsfb_table() - 111 it is simply a cum version of 112 the above information */ 113 Int num_groups; 114 Int group_len[8]; 115 116 } FrameInfo; 117 118 /*---------------------------------------------------------------------------- 119 ; GLOBAL FUNCTION DEFINITIONS 120 ; Function Prototype declaration 121 ----------------------------------------------------------------------------*/ 122 123 #ifdef __cplusplus 124 } 125 #endif 126 127 #endif /* S_FRAMEINFO_H */ 128