From: Frederic Danis <frederic.danis@linux.intel.com>
To: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
Cc: linux-bluetooth@vger.kernel.org
Subject: Re: [RFC v5 1/8] audio: Move tel drivers to DBus interface
Date: Tue, 27 Dec 2011 11:09:24 +0100 [thread overview]
Message-ID: <4EF99954.9000409@linux.intel.com> (raw)
In-Reply-To: <CABBYNZJQF2yDtcXc01i_UUjUx-KUC5r-BFLe-sNMqY0ajYsWGA@mail.gmail.com>
Hello Luiz,
Le 17/12/2011 11:15, Luiz Augusto von Dentz a écrit :
>>> Good work putting this together, probably we should add this to the
>>> documentation, btw this already shows us the latency won't be that
>>> great with this solution.
>>
>>
>> Thanks
>> Which solution is not great ? both ?
>
> Both have problems, endpoint add extra round trips per connection
> which can be a problem for audio transfer/SCO reconnections.
OK, So I will continue with "Transport path" proposal.
>> Currently, if I take volume speaker as sample, BlueZ sends
>> SpeakerGainChanged signal on reception of SetSpeakerGain method call (user
>> action on the phone) or AT+VGS command (user action on headset).
>>
>> This signal should only be sent by the Media Transport object, i.e. :
>> - for "Transport path" proposal, this signal should be moved
>> from headset.c to transport.c.
>> - for "Media Endpoint" proposal, this signal should be moved
>> to the Media Transport of the telephony agent.
>>
>> I do not understand why a ping-pong effect should start (no application
>> should react to SpeakerGainChanged signal by a SetSpeakerGain method call).
>
> Yep, IMO the gains/volume need to be moved to transport, btw both
> agent and endpoint need to react to events such as volume change, the
> agent need to send AT+VG commands and the endpoint notify the
> application when the volume change completes.
In case of Telephony agent implementing the Audio Gateway part of
HSP/HFP, it will send a +VG unsolicited result, which will not get reply
from the Headset.
So, endpoint will not be able to notify the application when the volume
change completes.
> Now, I don't think it is impossible to handle this it is just tricky
> and we cannot detect errors easily, but volume changes is already
> tricky (see PulseAudio), so I think it might be fine to try this first
> and see the results.
OK
>> Not yet, but your are right this test should be removed.
>> We must make it possible to set Noise Reduction, Echo Cancellation, speaker
>> or microphone gain values before the audio is connected.
>> Those values should be stored in the Media Transport object.
>
> Whenever you give the transport object you have to give permission to
> the agent, but don't simplify let any process changes those values.
OK, I will add Telephony agent to the test.
>>> True, but are you sure the agent wont have to deal directly with the
>>> SCO connection? Afaik there were some AT commands to do the audio
>>> transfer, although for HFP it seems to be directly by
>>> connecting/disconnecting SCO.
>>>
>>
>> My understanding is that BlueZ/oFono are not involved in decision to set-up
>> or not the SCO connection, this decision should be taken by PulseAudio or a
>> policy manager component, and SCO connection will be performed on Acquire
>> method called by PulseAudio.
>
> Audio transfer is both ways, but apparently there is no AT command for
> triggering it, iirc it was part of HSP spec, but I don't think we have
> to worry too much about HSP nowadays.
OK
Regards
Fred
--
Frederic Danis Open Source Technology Center
frederic.danis@intel.com Intel Corporation
next prev parent reply other threads:[~2011-12-27 10:09 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-14 9:05 [RFC v5 0/8] Add org.bluez.Telephony interface Frédéric Danis
2011-12-14 9:05 ` [RFC v5 1/8] audio: Move tel drivers to DBus interface Frédéric Danis
2011-12-15 10:00 ` Luiz Augusto von Dentz
2011-12-15 11:04 ` Frederic Danis
2011-12-15 11:25 ` Luiz Augusto von Dentz
2011-12-16 8:41 ` Frederic Danis
2011-12-16 10:35 ` Luiz Augusto von Dentz
2011-12-16 15:00 ` Frederic Danis
2011-12-17 10:15 ` Luiz Augusto von Dentz
2011-12-27 10:09 ` Frederic Danis [this message]
2011-12-14 9:05 ` [RFC v5 2/8] audio: Simplify org.bluez.Headset Frédéric Danis
2011-12-14 9:05 ` [RFC v5 3/8] audio: Remove dummy tel driver Frédéric Danis
2011-12-14 9:05 ` [RFC v5 4/8] audio: Remove maemo5 " Frédéric Danis
2011-12-14 9:05 ` [RFC v5 5/8] audio: Remove maemo6 " Frédéric Danis
2011-12-14 9:05 ` [RFC v5 6/8] audio: Remove oFono " Frédéric Danis
2011-12-14 9:05 ` [RFC v5 7/8] audio: Move HFP/HSP AG servers to telephony.c Frédéric Danis
2011-12-14 9:05 ` [RFC v5 8/8] audio: Send transport path to telephony agent Frédéric Danis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4EF99954.9000409@linux.intel.com \
--to=frederic.danis@linux.intel.com \
--cc=linux-bluetooth@vger.kernel.org \
--cc=luiz.dentz@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).