(Arun's mail didn't seem to reach the list, so I have to reply to Luiz to answer Arun's question.) On Thu, 2014-09-11 at 10:49 +0300, Luiz Augusto von Dentz wrote: > Hi Arun, > > On Thu, Sep 11, 2014 at 7:32 AM, Arun Raghavan <arun at accosted.net> wrote: > > On 8 September 2014 14:45, Wim Taymans <wim.taymans at gmail.com> wrote: > >> +static int bluez5_sco_acquire_cb(pa_bluetooth_transport *t, bool optional, size_t *imtu, size_t *omtu) { > >> + pa_bluetooth_device *d = t->device; > >> + struct sockaddr_sco addr; > >> + int err, i; > >> + int sock; > >> + bdaddr_t src; > >> + bdaddr_t dst; > >> + const char *src_addr, *dst_addr; > >> + > >> + src_addr = d->adapter->address; > >> + dst_addr = d->address; > >> + > >> + for (i = 5; i >= 0; i--, src_addr += 3) > >> + src.b[i] = strtol(src_addr, NULL, 16); > >> + for (i = 5; i >= 0; i--, dst_addr += 3) > >> + dst.b[i] = strtol(dst_addr, NULL, 16); > >> + > >> + sock = socket(PF_BLUETOOTH, SOCK_SEQPACKET, BTPROTO_SCO); > >> + if (sock < 0) { > >> + pa_log_error("socket(SEQPACKET, SCO) %s", pa_cstrerror(errno)); > >> + return -1; > >> + } > >> + > >> + memset(&addr, 0, sizeof(addr)); > >> + addr.sco_family = AF_BLUETOOTH; > >> + bacpy(&addr.sco_bdaddr, &src); > >> + > >> + if (bind(sock, (struct sockaddr *) &addr, sizeof(addr)) < 0) { > >> + pa_log_error("bind(): %s", pa_cstrerror(errno)); > >> + goto fail_close; > >> + } > >> + > >> + memset(&addr, 0, sizeof(addr)); > >> + addr.sco_family = AF_BLUETOOTH; > >> + bacpy(&addr.sco_bdaddr, &dst); > >> + > >> + pa_log_info ("doing connect\n"); > >> + err = connect(sock, (struct sockaddr *) &addr, sizeof(addr)); > >> + if (err < 0 && !(errno == EAGAIN || errno == EINPROGRESS)) { > >> + pa_log_error("connect(): %s", pa_cstrerror(errno)); > >> + goto fail_close; > >> + } > >> + > >> + if (imtu) > >> + *imtu = 48; > >> + > >> + if (omtu) > >> + *omtu = 48; > > > > Out of curiosity, are these values fixed in the spec? No. See the bottom of this mail: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/21016/focus=21182 -- Tanu