summaryrefslogtreecommitdiffstats
path: root/sbc/sbc.h
diff options
context:
space:
mode:
authorBrad Midgley <bmidgley@xmission.com>2007-03-17 13:37:31 +0000
committerBrad Midgley <bmidgley@xmission.com>2007-03-17 13:37:31 +0000
commitad868bd4137e86fbf141175f411898796287ff2a (patch)
tree85321330a17866bc08925f8fa3d4a40922fcfbda /sbc/sbc.h
parent1055292b83db7b5eb211a07d1d05c3450faaef20 (diff)
update the sbc encoder from the working fixed-point code in the sbc project
I also tagged the sbc project with "copied-to-bluez-utils" at the same time. We will do sbc work under bluez and sync it with the old sbc project if necessary.
Diffstat (limited to 'sbc/sbc.h')
-rw-r--r--sbc/sbc.h30
1 files changed, 29 insertions, 1 deletions
diff --git a/sbc/sbc.h b/sbc/sbc.h
index ae31af4c..99ccb3e4 100644
--- a/sbc/sbc.h
+++ b/sbc/sbc.h
@@ -2,7 +2,9 @@
*
* Bluetooth low-complexity, subband codec (SBC) library
*
- * Copyright (C) 2004-2007 Marcel Holtmann <marcel@holtmann.org>
+ * Copyright (C) 2004-2006 Marcel Holtmann <marcel@holtmann.org>
+ * Copyright (C) 2004-2005 Henryk Ploetz <henryk@ploetzli.ch>
+ * Copyright (C) 2005-2006 Brad Midgley <bmidgley@xmission.com>
*
*
* This library is free software; you can redistribute it and/or
@@ -28,6 +30,32 @@
extern "C" {
#endif
+struct sbc_struct {
+ unsigned long flags;
+
+ int rate;
+ int channels;
+ int joint;
+ int blocks;
+ int subbands;
+ int bitpool;
+
+ void *data;
+ int size;
+ int len;
+
+ unsigned long duration;
+
+ void *priv;
+};
+
+typedef struct sbc_struct sbc_t;
+
+int sbc_init(sbc_t *sbc, unsigned long flags);
+int sbc_decode(sbc_t *sbc, void *data, int count);
+int sbc_encode(sbc_t *sbc, void *data, int count);
+void sbc_finish(sbc_t *sbc);
+
#ifdef __cplusplus
}
#endif