Re: A2DP sink indications + autoclose after suspension
From: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
Date: 2010-02-23 20:14:49
Hi, 2010/2/23 Jacek Szczech [off-list ref]:
Hi, I succeeded writing a program that receives a2dp stream (from my mobile phone), decodes and sends to stdout using unix/ipc interface. It'll be run on old hw without X enviroment, that's why I didn't use already available software (like pulseaudio). I faced a few problems connected with suspension of stream: 1) Unix.c does not support indications (am I right?). How can I detect changes of states (e.g. OPEN<->STREAMING)? I can detect suspension with EAGAIN on stream_fd but it does not seem to be proper solution. Do you plan to support indications in unix/ipc interface?
You can listen for State on Audio interface or in the profile specific interfaces such as AudioSource/AudioSink/Headset.
2) Will it be possible to get indications concerning OPEN<->STREAMING changes on dbus Media interface?
Media interface is just for endpoint registration, but again you can achieve the same by listen to State changes e.g. Connected <-> Playing
3) After suspension of stream (SUSPEND sent from SRC) the stream is CLOSEd after about 10 seconds. What part of code disconnects this? Is it a way to avoid this?
Afaik this is not triggered if there is a unix client holding a lock, so if e.g. the headset reconnects you have to claim the socket otherwise it will timeout. -- Luiz Augusto von Dentz Computer Engineer