Received: by 2002:a25:23cc:0:0:0:0:0 with SMTP id j195csp1268562ybj; Tue, 5 May 2020 16:49:15 -0700 (PDT) X-Google-Smtp-Source: APiQypJERMp7lQiVwndQSWX8B0NznnDoHAYz0zw1yb9BcZSdZ94g/tHn5M/5oqy1VMrB+S3Te+rr X-Received: by 2002:a17:906:7a51:: with SMTP id i17mr4893034ejo.8.1588722555786; Tue, 05 May 2020 16:49:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588722555; cv=none; d=google.com; s=arc-20160816; b=a43CyQNSqtF8szHq4v0fccSq5kBLNDy3kGrSIjj0qoZ15J9i/ZtgHORn74vLO9szdr 0ctLdOhQxNn6hlF/C4UWaL2t6s3EOfupqoRSiN3d0YC2rO96MEJ9cGTRThTz/I5AJ7s8 bJ+wdGbgL97YbS/JLs8QINn79NOjIK2JDqtH+P3Bm+jsJKTNm73rG9CUvYF1xq/kqfl2 d+gmk+c5kisqO0q9n2hKFwlOOiIFm4m5y5VxWadYLAB+NV0zvzVlIlDAhBGmUB89rtxN jIzyEpPjF5VIA8iDI4DTjo48jJSY++JHDND99NZzFo6zMu02P+lEZIrpKn06WWM3tBK0 kECA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=y4LSZLHRkTneTsC05qk1XErBcOYfQNq134aUd24BU44=; b=NfpgpeN8JERiuumVJiUdC5jNGVmPgIDuO1rp72T6j5ReE6bdjYkfKK45UbpgVF/wcN TqyQidllPxDG/lBwT4W1l1JhzVNx6YPjgwxeNRP8Nv1H03Q8mWAhejqpqeBJ4gPDq5mT vsF2/NCO4r9Ws3i9vJNQ3kkYGZT6fG6NvynS3yngWoucxTssB4gnXkN6PmeIONEOVWY9 bqfPQds1zCXCD/PgONUSuSj/HUjbI5p0qySVGvuuY/kt6W99tHWmLn0m5z0/gEGuYn/e VH+oGHovBPlz4xH4DVH86Er+M0MI5Kqk1QTlAnAH17YAsEfxvxJVu+8xgD6htkmaUPmP 3UOg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=IseOkpFd; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c11si119323ejs.396.2020.05.05.16.48.51; Tue, 05 May 2020 16:49:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=IseOkpFd; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728969AbgEEXs0 (ORCPT + 99 others); Tue, 5 May 2020 19:48:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54152 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1728717AbgEEXsZ (ORCPT ); Tue, 5 May 2020 19:48:25 -0400 Received: from mail-oi1-x243.google.com (mail-oi1-x243.google.com [IPv6:2607:f8b0:4864:20::243]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9E49BC061A0F for ; Tue, 5 May 2020 16:48:25 -0700 (PDT) Received: by mail-oi1-x243.google.com with SMTP id s202so138335oih.3 for ; Tue, 05 May 2020 16:48:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=y4LSZLHRkTneTsC05qk1XErBcOYfQNq134aUd24BU44=; b=IseOkpFdgDohX1nDwWyQfBzaT3abnWfYiq/MYEDGUYJb89oXEaE2rFQfrM1PPQ23aP VrAoHLJQOCCN6/MDnVtIRkgzuCTtYSxWbryk0Bz2Bj7PNYT0s/nvB5dn+a5XyqMKBnTs nu9fLbjzqGt/L8l51suoA435njkqtBVMzrua+jzDefc0S2VloYFnhzBeRnt+uk/Cgmt0 KPt2XbToGKhHQIyXi9DTZEngadfWYX1xGWGTarBpWioIQCs7/Bgp0pXSHjhFwbTGmUSU gMcCyrh09YH2ro8KOpu5nWtrQf1cctejO5NPvU7EhwCnbIdDK8nvZSyFufJ/Ahu23AGJ /keQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=y4LSZLHRkTneTsC05qk1XErBcOYfQNq134aUd24BU44=; b=DpQNM+eLPdF4CoOo+mivmVs/2q+WV98zjR/Cbj0PmhHoomaDIuyZpUp1R5SWduW1QZ jzZtSC+hoSVl+W2BkNgNDEeiGx7ARYy994SGTgeLlX4mYCkudZ4hBdl8faJKnHiKpTda Sg18wf3KoRTjBQh0X6bbb9bDbPj8SS9+1VBhOk43G+7h2TdsoDCitxARg4v64iLAYmNs KXOCkAqiIAAhjuxIJfbF6KPm5rAsmAKh/usQdQJ3X/zggbzdo3P4jU4NHszk8v/9y3kI +KWEDOOZJ9lENuAyuFoxufXuIPbxSYDVyJmeE1O5bL8x1mE5eToJRugMy8WndunZSJeQ KLPQ== X-Gm-Message-State: AGi0PuZmtFqdGSA5DkpJCXFrAFK3SycJIYWEeWbmhRIH4IJk+52HbSNN 3Jnoji1aCU/iBfp5pRC4vx+xdk9PXvhd1wytf0c= X-Received: by 2002:aca:b5d5:: with SMTP id e204mr955936oif.108.1588722504638; Tue, 05 May 2020 16:48:24 -0700 (PDT) MIME-Version: 1.0 References: <20200403153331.101846-1-alainm@chromium.org> In-Reply-To: From: Luiz Augusto von Dentz Date: Tue, 5 May 2020 16:48:10 -0700 Message-ID: Subject: Re: [Bluez PATCH v1 1/2] doc:adding a WidebandSpeechEnabled Api To: Alain Michaud , Marcel Holtmann Cc: Alain Michaud , BlueZ Content-Type: text/plain; charset="UTF-8" Sender: linux-bluetooth-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org Hi Marcel and Alain, On Tue, May 5, 2020 at 8:47 AM Alain Michaud wrote: > > Friendly ping on this series. > > > On Tue, May 5, 2020 at 11:46 AM Alain Michaud wrote: > > > > Friendly ping on this series. > > > > On Fri, Apr 17, 2020 at 5:03 PM Alain Michaud wrote: > >> > >> On Fri, Apr 17, 2020 at 4:58 PM Luiz Augusto von Dentz > >> wrote: > >> > > >> > Hi Alain, > >> > > >> > On Fri, Apr 17, 2020 at 11:22 AM Alain Michaud wrote: > >> > > > >> > > On Fri, Apr 17, 2020 at 2:16 PM Luiz Augusto von Dentz > >> > > wrote: > >> > > > > >> > > > Hi Alain, > >> > > > > >> > > > On Thu, Apr 16, 2020 at 5:34 PM Alain Michaud wrote: > >> > > > > > >> > > > > HI Luiz, > >> > > > > > >> > > > > On Thu, Apr 16, 2020 at 8:29 PM Luiz Augusto von Dentz wrote: > >> > > > >> > >> > > > >> Hi Alain, > >> > > > >> > >> > > > >> On Thu, Apr 16, 2020 at 1:32 PM Alain Michaud wrote: > >> > > > >> > > >> > > > >> > Friendly ping on this series. > >> > > > >> > > >> > > > >> > > >> > > > >> > On Fri, Apr 3, 2020 at 11:33 AM Alain Michaud wrote: > >> > > > >> > > > >> > > > >> > > This change adds an adapter Api to report the controller's > >> > > > >> > > widebandspeech enabled state. > >> > > > >> > >> > > > >> I wonder if this shouldn't be queried over SCO socket, or simple fail > >> > > > >> with BT_VOICE when using BT_VOICE_TRANSPARENT which is how what is > >> > > > >> normally used when using mSBC. > >> > > > > > >> > > > > I think there is value in both. > >> > > > > >> > > > Can you expand on that? I think this might generate confusion if the > >> > > > property indicates support for it but HFP implementation don't support > >> > > > it, since the later is usually implemented as a external profile so we > >> > > > don't have the features it may support, or perhaps the intention here > >> > > > is to actually indicate when it is in use? > >> > > > >> > > This is a signal that the adapter supports it and has everything > >> > > enabled to support it. Driver indicated it supports it and erroneous > >> > > data reporting was enabled. The profile has it's own state which may > >> > > indicate if msbc will be used, but this will be on a per connection > >> > > basis and is independent from this adapter property. > >> > > > >> > > The value in this property is to support diagnostic UX about > >> > > controller capabilities/state and also allow profiles that are > >> > > implemented outside of bluetoothd to see which codec it can attempt to > >> > > negotiate with the device. > >> > > >> > For diagnosic I think we would be better off with some dedicated > >> > interface to query this, as for the later the information we are > >> > giving does not actually tell anything about the codec support, which > >> > was part of my original argument that for the likes of HFP and other > >> > profiles using it it might not be enough and they still need to use > >> > BT_VOICE in order to enable the use of custom codecs, if you take > >> > ofono for example it does implement support for wideband speech > >> > already and it would completely disregard this property which can give > >> > the false impression that wideband speech cannot be activated when in > >> > fact it can, it just don't have erroneous data reporting enable, so > >> > perhaps we should indicate the actual adapter feature (e.g. > >> > ErrnoneousDataReporting) not the profile feature here, so the profile > >> > implementation can check weather this would disable use of wideband > >> > speech or not, futhermore we should probably report the errors back to > >> > the SCO socket or is that just for diagnostic and cannot be used to > >> > adjust the streaming? > >> > >> My original patch actually had this MGMT feature called erroneous data > >> reporting and Marcel argued against it. If you both agree, then I'm > >> happy to rename all of this to erroneous data reporting. We'd still > >> need some way for the driver support to be messaged some other way > >> though. see: > >> > >> if (id->driver_info & BTUSB_WIDEBAND_SPEECH) > >> set_bit(HCI_QUIRK_WIDEBAND_SPEECH_SUPPORTED, &hdev->quirks); So this will get a little bit confusing if we don't have a HFP implementation that actually does implement the profile parts to enable wideband speech so I wonder if we should rename it to the underline feature it enables, that said this sort of feature is probably easier to be queried over the socket itself rather than over D-Bus so it can be used in conjunction with the likes of BT_VOICE, also regarding the erroneous data should that be also enabled by the HFP profile, because depending on the platform it may not support wideband speech so enabling erroneous data automatically may result in artifacs, specially in cases where the codecs don't have error correction or data loss concealment to handle data with possible error and lost data respectively, btw we don't seem to be parsing the SCO/ESCO flags and even if we do this properly we need to find a way to notify them over the socket so things like plc works properly. > >> > >> > >> > > > > >> > > > > >> > > > >> > >> > > > >> > >> > > > >> > > --- > >> > > > >> > > > >> > > > >> > > doc/adapter-api.txt | 8 ++++++++ > >> > > > >> > > 1 file changed, 8 insertions(+) > >> > > > >> > > > >> > > > >> > > diff --git a/doc/adapter-api.txt b/doc/adapter-api.txt > >> > > > >> > > index acae032d9..d8865e795 100644 > >> > > > >> > > --- a/doc/adapter-api.txt > >> > > > >> > > +++ b/doc/adapter-api.txt > >> > > > >> > > @@ -326,3 +326,11 @@ Properties string Address [readonly] > >> > > > >> > > > >> > > > >> > > Local Device ID information in modalias format > >> > > > >> > > used by the kernel and udev. > >> > > > >> > > + > >> > > > >> > > + boolean WidebandSpeechEnabled [readonly] > >> > > > >> > > + > >> > > > >> > > + Returns true if the adapter's wideband speech feature is > >> > > > >> > > + supported and enabled. > >> > > > >> > >> > > > >> There seems to be some extra empty lines here. > >> > > > > > >> > > > > ACK, will fix. > >> > > > >> > >> > > > >> > >> > > > >> > > + > >> > > > >> > > + > >> > > > >> > > + > >> > > > >> > > -- > >> > > > >> > > 2.26.0.292.g33ef6b2f38-goog > >> > > > >> > > > >> > > > >> > >> > > > >> > >> > > > >> > >> > > > >> -- > >> > > > >> Luiz Augusto von Dentz > >> > > > > >> > > > > >> > > > > >> > > > -- > >> > > > Luiz Augusto von Dentz > >> > > >> > > >> > > >> > -- > >> > Luiz Augusto von Dentz -- Luiz Augusto von Dentz