Skip to contentSkip to conversation

sbc: Add sbc_reinit_msbc

PATCH In review Pali Rohár 2 participants 2 messages Nov 23, 2020 – Dec 3, 2020

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 sbc: Add sbc_reinit_msbc

This adds a new API function sbc_reinit_msbc. Like sbc_reinit or sbc_reinit_a2dp but for msbc.

---
 Makefile.am |  6 +++---
 sbc/sbc.c   | 18 ++++++++++++++++++
 sbc/sbc.h   |  1 +
 sbc/sbc.sym |  5 +++++
 4 files changed, 27 insertions(+), 3 deletions(-)
Makefile.am +3 -3
index 7ff0c7d..8a58b59 100644
@@ -6,9 +6,9 @@ AM_MAKEFLAGS = --no-print-directory
 # Interfaces added:		CURRENT++ REVISION=0 AGE++
 # Interfaces removed:		CURRENT++ REVISION=0 AGE=0
 
-SBC_CURRENT = 3
-SBC_REVISION = 2
-SBC_AGE = 2
+SBC_CURRENT = 4
+SBC_REVISION = 0
+SBC_AGE = 3
 
 sbc_headers = sbc/sbc.h
 
sbc/sbc.c +18 -0
index edbe332..d059906 100644
@@ -1087,6 +1087,24 @@ SBC_EXPORT int sbc_init_msbc(sbc_t *sbc, unsigned long flags)
 	return 0;
 }
 
+SBC_EXPORT int sbc_reinit_msbc(sbc_t *sbc, unsigned long flags)
+{
+	int err;
+
+	err = sbc_reinit(sbc, flags);
+	if (err < 0)
+		return err;
+
+	sbc->frequency = SBC_FREQ_16000;
+	sbc->blocks = MSBC_BLOCKS;
+	sbc->subbands = SBC_SB_8;
+	sbc->mode = SBC_MODE_MONO;
+	sbc->allocation = SBC_AM_LOUDNESS;
+	sbc->bitpool = 26;
+
+	return 0;
+}
+
 static int sbc_set_a2dp(sbc_t *sbc, unsigned long flags,
 					const void *conf, size_t conf_len)
 {
sbc/sbc.h +1 -0
index 835460a..65d5ef3 100644
@@ -85,6 +85,7 @@ typedef struct sbc_struct sbc_t;
 int sbc_init(sbc_t *sbc, unsigned long flags);
 int sbc_reinit(sbc_t *sbc, unsigned long flags);
 int sbc_init_msbc(sbc_t *sbc, unsigned long flags);
+int sbc_reinit_msbc(sbc_t *sbc, unsigned long flags);
 int sbc_init_a2dp(sbc_t *sbc, unsigned long flags,
 					const void *conf, size_t conf_len);
 int sbc_reinit_a2dp(sbc_t *sbc, unsigned long flags,
sbc/sbc.sym +5 -0
index c1f6919..938301a 100644
@@ -26,3 +26,8 @@ global:
 	sbc_init_a2dp;
 	sbc_reinit_a2dp;
 } SBC_1.1;
+
+SBC_1.3 {
+global:
+	sbc_reinit_msbc;
+} SBC_1.2;
Signature · 1 line
2.20.1
maintainer
#1 lore raw

Hi Pali,

Quoted 8 lines

This adds a new API function sbc_reinit_msbc. Like sbc_reinit or sbc_reinit_a2dp but for msbc.
---

Makefile.am |  6 +++---
sbc/sbc.c   | 18 ++++++++++++++++++
sbc/sbc.h   |  1 +
sbc/sbc.sym |  5 +++++
4 files changed, 27 insertions(+), 3 deletions(-)

patch has been applied.

Regards

Marcel