diff options
author | Colin Guthrie <cguthrie@mandriva.org> | 2011-01-17 22:19:10 +0000 |
---|---|---|
committer | Colin Guthrie <cguthrie@mandriva.org> | 2011-01-17 22:19:10 +0000 |
commit | 8c0e3efbf8fcd500048b1c1b21d21a4ea8c09fd3 (patch) | |
tree | fb62e35903de001816bee596da147b10a01eeba6 /src/modules | |
parent | 26c64fb54e3376564a76c4bfbd9f56b110d58c30 (diff) | |
parent | e4979ab5cff84ef64c88bba3a1b6b4c5e02f7777 (diff) |
Merge commit 'e4979ab5cff84ef64c88bba3a1b6b4c5e02f7777'
Diffstat (limited to 'src/modules')
-rw-r--r-- | src/modules/bluetooth/bluetooth-util.c | 2 | ||||
-rw-r--r-- | src/modules/bluetooth/bluetooth-util.h | 16 | ||||
-rw-r--r-- | src/modules/bluetooth/sbc.c | 8 |
3 files changed, 16 insertions, 10 deletions
diff --git a/src/modules/bluetooth/bluetooth-util.c b/src/modules/bluetooth/bluetooth-util.c index 53545209..47e0fd50 100644 --- a/src/modules/bluetooth/bluetooth-util.c +++ b/src/modules/bluetooth/bluetooth-util.c @@ -955,12 +955,14 @@ int pa_bluetooth_transport_acquire(const pa_bluetooth_transport *t, const char * return -1; } +#ifdef DBUS_TYPE_UNIX_FD if (!dbus_message_get_args(r, &err, DBUS_TYPE_UNIX_FD, &ret, DBUS_TYPE_INVALID)) { pa_log("Failed to parse org.bluez.MediaTransport.Acquire(): %s", err.message); ret = -1; dbus_error_free(&err); goto fail; } +#endif fail: dbus_message_unref(r); diff --git a/src/modules/bluetooth/bluetooth-util.h b/src/modules/bluetooth/bluetooth-util.h index ce551967..f141209d 100644 --- a/src/modules/bluetooth/bluetooth-util.h +++ b/src/modules/bluetooth/bluetooth-util.h @@ -30,18 +30,18 @@ #include <pulsecore/core-util.h> /* UUID copied from bluez/audio/device.h */ -#define GENERIC_AUDIO_UUID "00001203-0000-1000-8000-00805F9B34FB" +#define GENERIC_AUDIO_UUID "00001203-0000-1000-8000-00805f9b34fb" -#define HSP_HS_UUID "00001108-0000-1000-8000-00805F9B34FB" -#define HSP_AG_UUID "00001112-0000-1000-8000-00805F9B34FB" +#define HSP_HS_UUID "00001108-0000-1000-8000-00805f9b34fb" +#define HSP_AG_UUID "00001112-0000-1000-8000-00805f9b34fb" -#define HFP_HS_UUID "0000111E-0000-1000-8000-00805F9B34FB" -#define HFP_AG_UUID "0000111F-0000-1000-8000-00805F9B34FB" +#define HFP_HS_UUID "0000111e-0000-1000-8000-00805f9b34fb" +#define HFP_AG_UUID "0000111f-0000-1000-8000-00805f9b34fb" -#define ADVANCED_AUDIO_UUID "0000110D-0000-1000-8000-00805F9B34FB" +#define ADVANCED_AUDIO_UUID "0000110d-0000-1000-8000-00805f9b34fb" -#define A2DP_SOURCE_UUID "0000110A-0000-1000-8000-00805F9B34FB" -#define A2DP_SINK_UUID "0000110B-0000-1000-8000-00805F9B34FB" +#define A2DP_SOURCE_UUID "0000110a-0000-1000-8000-00805f9b34fb" +#define A2DP_SINK_UUID "0000110b-0000-1000-8000-00805f9b34fb" typedef struct pa_bluetooth_uuid pa_bluetooth_uuid; typedef struct pa_bluetooth_device pa_bluetooth_device; diff --git a/src/modules/bluetooth/sbc.c b/src/modules/bluetooth/sbc.c index 779be4bd..5157c70f 100644 --- a/src/modules/bluetooth/sbc.c +++ b/src/modules/bluetooth/sbc.c @@ -1005,7 +1005,8 @@ ssize_t sbc_decode(sbc_t *sbc, const void *input, size_t input_len, priv->frame.codesize = sbc_get_codesize(sbc); priv->frame.length = framelen; - } + } else if (priv->frame.bitpool != sbc->bitpool) + sbc->bitpool = priv->frame.bitpool; if (!output) return framelen; @@ -1076,6 +1077,9 @@ ssize_t sbc_encode(sbc_t *sbc, const void *input, size_t input_len, sbc_encoder_init(&priv->enc_state, &priv->frame); priv->init = 1; + } else if (priv->frame.bitpool != sbc->bitpool) { + priv->frame.length = sbc_get_frame_length(sbc); + priv->frame.bitpool = sbc->bitpool; } /* input must be large enough to encode a complete frame */ @@ -1140,7 +1144,7 @@ size_t sbc_get_frame_length(sbc_t *sbc) struct sbc_priv *priv; priv = sbc->priv; - if (priv->init) + if (priv->init && priv->frame.bitpool == sbc->bitpool) return priv->frame.length; subbands = sbc->subbands ? 8 : 4; |