summaryrefslogtreecommitdiffstats
path: root/embdrv/sbc/encoder/srce/sbc_enc_coeffs.c
diff options
context:
space:
mode:
authorKausik Sinnaswamy <kausik@broadcom.com>2012-03-07 19:30:20 -0800
committerMatthew Xie <mattx@google.com>2012-07-14 11:19:12 -0700
commit95fa11b3b2f19a382c7e3a744a6afb452fad86df (patch)
tree1019e123db4596f2b8bd1259da04b51f3c44d7b2 /embdrv/sbc/encoder/srce/sbc_enc_coeffs.c
parente2197423bcf1a93c620be13d458a9da6693fa94d (diff)
downloadexternal_bluetooth_bluedroid-95fa11b3b2f19a382c7e3a744a6afb452fad86df.zip
external_bluetooth_bluedroid-95fa11b3b2f19a382c7e3a744a6afb452fad86df.tar.gz
external_bluetooth_bluedroid-95fa11b3b2f19a382c7e3a744a6afb452fad86df.tar.bz2
AV control and data path added
Change-Id: I88ec6084c140fa257154a98e23e075900e84cc8c
Diffstat (limited to 'embdrv/sbc/encoder/srce/sbc_enc_coeffs.c')
-rw-r--r--embdrv/sbc/encoder/srce/sbc_enc_coeffs.c308
1 files changed, 308 insertions, 0 deletions
diff --git a/embdrv/sbc/encoder/srce/sbc_enc_coeffs.c b/embdrv/sbc/encoder/srce/sbc_enc_coeffs.c
new file mode 100644
index 0000000..48cc22f
--- /dev/null
+++ b/embdrv/sbc/encoder/srce/sbc_enc_coeffs.c
@@ -0,0 +1,308 @@
+/******************************************************************************
+**
+** File Name: $RCSfile: sbc_enc_coeffs.c,v $
+**
+** Description: This file contains the Windowing coeffs for synthesis filter
+**
+** Revision : $Id: sbc_enc_coeffs.c,v 1.10 2006/04/11 17:05:34 mjougit Exp $
+**
+** Copyright (c) 1999-2002, Widcomm Inc., All Rights Reserved.
+** Widcomm Bluetooth Core. Proprietary and confidential.
+**
+******************************************************************************/
+
+#include "sbc_encoder.h"
+
+#if (SBC_ARM_ASM_OPT==FALSE && SBC_IPAQ_OPT==FALSE)
+#if (SBC_IS_64_MULT_IN_WINDOW_ACCU == FALSE)
+/*Window coeff for 4 sub band case*/
+const SINT16 gas32CoeffFor4SBs[] =
+{
+ (SINT16)((SINT32)0x00000000 >> 16), (SINT16)0x00000000,
+ (SINT16)((SINT32)0x001194E6 >> 16), (SINT16)0x001194E6,
+ (SINT16)((SINT32)0x0030E2D3 >> 16), (SINT16)0x0030E2D3,
+ (SINT16)((SINT32)0x00599403 >> 16), (SINT16)0x00599403,
+ (SINT16)((SINT32)0x007DBCC8 >> 16), (SINT16)0x007DBCC8,
+ (SINT16)((SINT32)0x007F88E4 >> 16), (SINT16)0x007F88E4,
+ (SINT16)((SINT32)0x003D239B >> 16), (SINT16)0x003D239B,
+ (SINT16)((SINT32)0xFF9BB9D5 >> 16), (SINT16)0xFF9BB9D5,
+
+ (SINT16)((SINT32)0x01659F45 >> 16), (SINT16)0x01659F45,
+ (SINT16)((SINT32)0x029DBAA3 >> 16), (SINT16)0x029DBAA3,
+ (SINT16)((SINT32)0x03B23341 >> 16), (SINT16)0x03B23341,
+ (SINT16)((SINT32)0x041EEE40 >> 16), (SINT16)0x041EEE40,
+ (SINT16)((SINT32)0x034FEE2C >> 16), (SINT16)0x034FEE2C,
+ (SINT16)((SINT32)0x00C8F2BC >> 16), (SINT16)0x00C8F2BC,
+ (SINT16)((SINT32)0xFC4F91D4 >> 16), (SINT16)0xFC4F91D4,
+ (SINT16)((SINT32)0xF60FAF37 >> 16), (SINT16)0xF60FAF37,
+
+ (SINT16)((SINT32)0x115B1ED2 >> 16), (SINT16)0x115B1ED2,
+ (SINT16)((SINT32)0x18F55C90 >> 16), (SINT16)0x18F55C90,
+ (SINT16)((SINT32)0x1F91CA46 >> 16), (SINT16)0x1F91CA46,
+ (SINT16)((SINT32)0x2412F251 >> 16), (SINT16)0x2412F251,
+ (SINT16)((SINT32)0x25AC1FF2 >> 16), (SINT16)0x25AC1FF2,
+ (SINT16)((SINT32)0x2412F251 >> 16), (SINT16)0x2412F251,
+ (SINT16)((SINT32)0x1F91CA46 >> 16), (SINT16)0x1F91CA46,
+ (SINT16)((SINT32)0x18F55C90 >> 16), (SINT16)0x18F55C90,
+
+ (SINT16)((SINT32)0xEEA4E12E >> 16), (SINT16)0xEEA4E12E,
+ (SINT16)((SINT32)0xF60FAF37 >> 16), (SINT16)0xF60FAF37,
+ (SINT16)((SINT32)0xFC4F91D4 >> 16), (SINT16)0xFC4F91D4,
+ (SINT16)((SINT32)0x00C8F2BC >> 16), (SINT16)0x00C8F2BC,
+ (SINT16)((SINT32)0x034FEE2C >> 16), (SINT16)0x034FEE2C,
+ (SINT16)((SINT32)0x041EEE40 >> 16), (SINT16)0x041EEE40,
+ (SINT16)((SINT32)0x03B23341 >> 16), (SINT16)0x03B23341,
+ (SINT16)((SINT32)0x029DBAA3 >> 16), (SINT16)0x029DBAA3,
+
+ (SINT16)((SINT32)0xFE9A60BB >> 16), (SINT16)0xFE9A60BB,
+ (SINT16)((SINT32)0xFF9BB9D5 >> 16), (SINT16)0xFF9BB9D5,
+ (SINT16)((SINT32)0x003D239B >> 16), (SINT16)0x003D239B,
+ (SINT16)((SINT32)0x007F88E4 >> 16), (SINT16)0x007F88E4,
+ (SINT16)((SINT32)0x007DBCC8 >> 16), (SINT16)0x007DBCC8,
+ (SINT16)((SINT32)0x00599403 >> 16), (SINT16)0x00599403,
+ (SINT16)((SINT32)0x0030E2D3 >> 16), (SINT16)0x0030E2D3,
+ (SINT16)((SINT32)0x001194E6 >> 16), (SINT16)0x001194E6
+};
+
+/*Window coeff for 8 sub band case*/
+const SINT16 gas32CoeffFor8SBs[] =
+{
+ (SINT16)((SINT32)0x00000000 >>16), (SINT16)0x00000000,
+ (SINT16)((SINT32)0x00052173 >>16), (SINT16)0x00052173,
+ (SINT16)((SINT32)0x000B3F71 >>16), (SINT16)0x000B3F71,
+ (SINT16)((SINT32)0x00122C7D >>16), (SINT16)0x00122C7D,
+ (SINT16)((SINT32)0x001AFF89 >>16), (SINT16)0x001AFF89,
+ (SINT16)((SINT32)0x00255A62 >>16), (SINT16)0x00255A62,
+ (SINT16)((SINT32)0x003060F4 >>16), (SINT16)0x003060F4,
+ (SINT16)((SINT32)0x003A72E7 >>16), (SINT16)0x003A72E7,
+
+ (SINT16)((SINT32)0x0041EC6A >>16), (SINT16)0x0041EC6A, /* 8 */
+ (SINT16)((SINT32)0x0044EF48 >>16), (SINT16)0x0044EF48,
+ (SINT16)((SINT32)0x00415B75 >>16), (SINT16)0x00415B75,
+ (SINT16)((SINT32)0x0034F8B6 >>16), (SINT16)0x0034F8B6,
+ (SINT16)((SINT32)0x001D8FD2 >>16), (SINT16)0x001D8FD2,
+ (SINT16)((SINT32)0xFFFA2413 >>16), (SINT16)0xFFFA2413,
+ (SINT16)((SINT32)0xFFC9F10E >>16), (SINT16)0xFFC9F10E,
+ (SINT16)((SINT32)0xFF8D6793 >>16), (SINT16)0xFF8D6793,
+
+ (SINT16)((SINT32)0x00B97348 >>16), (SINT16)0x00B97348, /* 16 */
+ (SINT16)((SINT32)0x01071B96 >>16), (SINT16)0x01071B96,
+ (SINT16)((SINT32)0x0156B3CA >>16), (SINT16)0x0156B3CA,
+ (SINT16)((SINT32)0x01A1B38B >>16), (SINT16)0x01A1B38B,
+ (SINT16)((SINT32)0x01E0224C >>16), (SINT16)0x01E0224C,
+ (SINT16)((SINT32)0x0209291F >>16), (SINT16)0x0209291F,
+ (SINT16)((SINT32)0x02138653 >>16), (SINT16)0x02138653,
+ (SINT16)((SINT32)0x01F5F424 >>16), (SINT16)0x01F5F424,
+
+ (SINT16)((SINT32)0x01A7ECEF >>16), (SINT16)0x01A7ECEF, /* 24 */
+ (SINT16)((SINT32)0x01223EBA >>16), (SINT16)0x01223EBA,
+ (SINT16)((SINT32)0x005FD0FF >>16), (SINT16)0x005FD0FF,
+ (SINT16)((SINT32)0xFF5EEB73 >>16), (SINT16)0xFF5EEB73,
+ (SINT16)((SINT32)0xFE20435D >>16), (SINT16)0xFE20435D,
+ (SINT16)((SINT32)0xFCA86E7E >>16), (SINT16)0xFCA86E7E,
+ (SINT16)((SINT32)0xFAFF95FC >>16), (SINT16)0xFAFF95FC,
+ (SINT16)((SINT32)0xF9312891 >>16), (SINT16)0xF9312891,
+
+ (SINT16)((SINT32)0x08B4307A >>16), (SINT16)0x08B4307A, /* 32 */
+ (SINT16)((SINT32)0x0A9F3E9A >>16), (SINT16)0x0A9F3E9A,
+ (SINT16)((SINT32)0x0C7D59B6 >>16), (SINT16)0x0C7D59B6,
+ (SINT16)((SINT32)0x0E3BB16F >>16), (SINT16)0x0E3BB16F,
+ (SINT16)((SINT32)0x0FC721F9 >>16), (SINT16)0x0FC721F9,
+ (SINT16)((SINT32)0x110ECEF0 >>16), (SINT16)0x110ECEF0,
+ (SINT16)((SINT32)0x120435FA >>16), (SINT16)0x120435FA,
+ (SINT16)((SINT32)0x129C226F >>16), (SINT16)0x129C226F,
+
+ (SINT16)((SINT32)0x12CF6C75 >>16), (SINT16)0x12CF6C75, /* 40 */
+ (SINT16)((SINT32)0x129C226F >>16), (SINT16)0x129C226F,
+ (SINT16)((SINT32)0x120435FA >>16), (SINT16)0x120435FA,
+ (SINT16)((SINT32)0x110ECEF0 >>16), (SINT16)0x110ECEF0,
+ (SINT16)((SINT32)0x0FC721F9 >>16), (SINT16)0x0FC721F9,
+ (SINT16)((SINT32)0x0E3BB16F >>16), (SINT16)0x0E3BB16F,
+ (SINT16)((SINT32)0x0C7D59B6 >>16), (SINT16)0x0C7D59B6,
+ (SINT16)((SINT32)0x0A9F3E9A >>16), (SINT16)0x0A9F3E9A,
+
+ (SINT16)((SINT32)0xF74BCF86 >>16), (SINT16)0xF74BCF86, /* 48 */
+ (SINT16)((SINT32)0xF9312891 >>16), (SINT16)0xF9312891,
+ (SINT16)((SINT32)0xFAFF95FC >>16), (SINT16)0xFAFF95FC,
+ (SINT16)((SINT32)0xFCA86E7E >>16), (SINT16)0xFCA86E7E,
+ (SINT16)((SINT32)0xFE20435D >>16), (SINT16)0xFE20435D,
+ (SINT16)((SINT32)0xFF5EEB73 >>16), (SINT16)0xFF5EEB73,
+ (SINT16)((SINT32)0x005FD0FF >>16), (SINT16)0x005FD0FF,
+ (SINT16)((SINT32)0x01223EBA >>16), (SINT16)0x01223EBA,
+
+ (SINT16)((SINT32)0x01A7ECEF >>16), (SINT16)0x01A7ECEF, /* 56 */
+ (SINT16)((SINT32)0x01F5F424 >>16), (SINT16)0x01F5F424,
+ (SINT16)((SINT32)0x02138653 >>16), (SINT16)0x02138653,
+ (SINT16)((SINT32)0x0209291F >>16), (SINT16)0x0209291F,
+ (SINT16)((SINT32)0x01E0224C >>16), (SINT16)0x01E0224C,
+ (SINT16)((SINT32)0x01A1B38B >>16), (SINT16)0x01A1B38B,
+ (SINT16)((SINT32)0x0156B3CA >>16), (SINT16)0x0156B3CA,
+ (SINT16)((SINT32)0x01071B96 >>16), (SINT16)0x01071B96,
+
+ (SINT16)((SINT32)0xFF468CB8 >>16), (SINT16)0xFF468CB8, /* 64 */
+ (SINT16)((SINT32)0xFF8D6793 >>16), (SINT16)0xFF8D6793,
+ (SINT16)((SINT32)0xFFC9F10E >>16), (SINT16)0xFFC9F10E,
+ (SINT16)((SINT32)0xFFFA2413 >>16), (SINT16)0xFFFA2413,
+ (SINT16)((SINT32)0x001D8FD2 >>16), (SINT16)0x001D8FD2,
+ (SINT16)((SINT32)0x0034F8B6 >>16), (SINT16)0x0034F8B6,
+ (SINT16)((SINT32)0x00415B75 >>16), (SINT16)0x00415B75,
+ (SINT16)((SINT32)0x0044EF48 >>16), (SINT16)0x0044EF48,
+
+ (SINT16)((SINT32)0x0041EC6A >>16), (SINT16)0x0041EC6A, /* 72 */
+ (SINT16)((SINT32)0x003A72E7 >>16), (SINT16)0x003A72E7,
+ (SINT16)((SINT32)0x003060F4 >>16), (SINT16)0x003060F4,
+ (SINT16)((SINT32)0x00255A62 >>16), (SINT16)0x00255A62,
+ (SINT16)((SINT32)0x001AFF89 >>16), (SINT16)0x001AFF89,
+ (SINT16)((SINT32)0x00122C7D >>16), (SINT16)0x00122C7D,
+ (SINT16)((SINT32)0x000B3F71 >>16), (SINT16)0x000B3F71,
+ (SINT16)((SINT32)0x00052173 >>16), (SINT16)0x00052173
+};
+
+#else
+
+/*Window coeff for 4 sub band case*/
+const SINT32 gas32CoeffFor4SBs[] =
+{
+ (SINT32)0x00000000,
+ (SINT32)0x001194E6,
+ (SINT32)0x0030E2D3,
+ (SINT32)0x00599403,
+ (SINT32)0x007DBCC8,
+ (SINT32)0x007F88E4,
+ (SINT32)0x003D239B,
+ (SINT32)0xFF9BB9D5,
+
+ (SINT32)0x01659F45,
+ (SINT32)0x029DBAA3,
+ (SINT32)0x03B23341,
+ (SINT32)0x041EEE40,
+ (SINT32)0x034FEE2C,
+ (SINT32)0x00C8F2BC,
+ (SINT32)0xFC4F91D4,
+ (SINT32)0xF60FAF37,
+
+ (SINT32)0x115B1ED2,
+ (SINT32)0x18F55C90,
+ (SINT32)0x1F91CA46,
+ (SINT32)0x2412F251,
+ (SINT32)0x25AC1FF2,
+ (SINT32)0x2412F251,
+ (SINT32)0x1F91CA46,
+ (SINT32)0x18F55C90,
+
+ (SINT32)0xEEA4E12E,
+ (SINT32)0xF60FAF37,
+ (SINT32)0xFC4F91D4,
+ (SINT32)0x00C8F2BC,
+ (SINT32)0x034FEE2C,
+ (SINT32)0x041EEE40,
+ (SINT32)0x03B23341,
+ (SINT32)0x029DBAA3,
+
+ (SINT32)0xFE9A60BB,
+ (SINT32)0xFF9BB9D5,
+ (SINT32)0x003D239B,
+ (SINT32)0x007F88E4,
+ (SINT32)0x007DBCC8,
+ (SINT32)0x00599403,
+ (SINT32)0x0030E2D3,
+ (SINT32)0x001194E6
+};
+
+/*Window coeff for 8 sub band case*/
+const SINT32 gas32CoeffFor8SBs[] =
+{
+ (SINT32)0x00000000,
+ (SINT32)0x00052173,
+ (SINT32)0x000B3F71,
+ (SINT32)0x00122C7D,
+ (SINT32)0x001AFF89,
+ (SINT32)0x00255A62,
+ (SINT32)0x003060F4,
+ (SINT32)0x003A72E7,
+
+ (SINT32)0x0041EC6A, /* 8 */
+ (SINT32)0x0044EF48,
+ (SINT32)0x00415B75,
+ (SINT32)0x0034F8B6,
+ (SINT32)0x001D8FD2,
+ (SINT32)0xFFFA2413,
+ (SINT32)0xFFC9F10E,
+ (SINT32)0xFF8D6793,
+
+ (SINT32)0x00B97348, /* 16 */
+ (SINT32)0x01071B96,
+ (SINT32)0x0156B3CA,
+ (SINT32)0x01A1B38B,
+ (SINT32)0x01E0224C,
+ (SINT32)0x0209291F,
+ (SINT32)0x02138653,
+ (SINT32)0x01F5F424,
+
+ (SINT32)0x01A7ECEF, /* 24 */
+ (SINT32)0x01223EBA,
+ (SINT32)0x005FD0FF,
+ (SINT32)0xFF5EEB73,
+ (SINT32)0xFE20435D,
+ (SINT32)0xFCA86E7E,
+ (SINT32)0xFAFF95FC,
+ (SINT32)0xF9312891,
+
+ (SINT32)0x08B4307A, /* 32 */
+ (SINT32)0x0A9F3E9A,
+ (SINT32)0x0C7D59B6,
+ (SINT32)0x0E3BB16F,
+ (SINT32)0x0FC721F9,
+ (SINT32)0x110ECEF0,
+ (SINT32)0x120435FA,
+ (SINT32)0x129C226F,
+
+ (SINT32)0x12CF6C75, /* 40 */
+ (SINT32)0x129C226F,
+ (SINT32)0x120435FA,
+ (SINT32)0x110ECEF0,
+ (SINT32)0x0FC721F9,
+ (SINT32)0x0E3BB16F,
+ (SINT32)0x0C7D59B6,
+ (SINT32)0x0A9F3E9A,
+
+ (SINT32)0xF74BCF86, /* 48 */
+ (SINT32)0xF9312891,
+ (SINT32)0xFAFF95FC,
+ (SINT32)0xFCA86E7E,
+ (SINT32)0xFE20435D,
+ (SINT32)0xFF5EEB73,
+ (SINT32)0x005FD0FF,
+ (SINT32)0x01223EBA,
+
+ (SINT32)0x01A7ECEF, /* 56 */
+ (SINT32)0x01F5F424,
+ (SINT32)0x02138653,
+ (SINT32)0x0209291F,
+ (SINT32)0x01E0224C,
+ (SINT32)0x01A1B38B,
+ (SINT32)0x0156B3CA,
+ (SINT32)0x01071B96,
+
+ (SINT32)0xFF468CB8, /* 64 */
+ (SINT32)0xFF8D6793,
+ (SINT32)0xFFC9F10E,
+ (SINT32)0xFFFA2413,
+ (SINT32)0x001D8FD2,
+ (SINT32)0x0034F8B6,
+ (SINT32)0x00415B75,
+ (SINT32)0x0044EF48,
+
+ (SINT32)0x0041EC6A, /* 72 */
+ (SINT32)0x003A72E7,
+ (SINT32)0x003060F4,
+ (SINT32)0x00255A62,
+ (SINT32)0x001AFF89,
+ (SINT32)0x00122C7D,
+ (SINT32)0x000B3F71,
+ (SINT32)0x00052173
+};
+
+#endif
+#endif
+