Received: by 2002:a05:7412:2a8c:b0:e2:908c:2ebd with SMTP id u12csp129567rdh; Sat, 23 Sep 2023 04:35:50 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEAcVXn5T+Nj5MqFY1zflZSmTMrfAZ457kQfDqs77+nJVcqfd85Z2oMMVldv/kktDjdjP4x X-Received: by 2002:a05:6a00:1248:b0:691:21:d9a3 with SMTP id u8-20020a056a00124800b006910021d9a3mr1737235pfi.29.1695468950598; Sat, 23 Sep 2023 04:35:50 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1695468950; cv=pass; d=google.com; s=arc-20160816; b=YIh5NeeZ+0Siw8+h59CcZHqNK88MYc6AY4A/FaGkSS2g5Bcx/gDKKsndFK5gjWLBnU 28sCHWVNV9k7Xjrd0mwbkhwV0/yzx8NtbpfPVA57cMNCkLBVcJP/u1BnTkyjmM/X/YxW 1ShlNbb4FgdZAi6LvcFwkriTNaEoMBS+Xzm26JTEcnc0mbjAPEfBGyI8XYNKPvf7Rk4j sPzz2vmT2ibOXtWelvbo9x6J4iXXYVqkdYnDnR0vNDfatVXz16oUWbzEkP2RYLfSTKrV QoRxEUyNS0OjwbuHMdVCd0TTNmXroLnVXCVa+VPdJW2azOC06/YaZH3r7DUOIBd46pyS sF3g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:user-agent :content-transfer-encoding:references:in-reply-to:date:to:from :subject:message-id:dkim-signature; bh=Nyx9BV46aknPHo4HailiEsYzn6LxbgDQxCbFpFbcaOY=; fh=HK6t0SFPvSh88TNcprQy3ad2PhCK0eaoptA9zvoG5Hg=; b=EvBlWbURKSzQnKOJGupdeKIYLjH0StSqVotWKOVDyPVt6OrKVqX/6uMYtukPKdo96B esEnWNzf190znYq08vN2VJVGQp3Y9GEO2CXTPdD3fIEo3oL7vnGzKryXigcj2oTZGbRo ww48zY8LgbPQxLRsUMQjwIb9ic4fqSgUKwjRz+TR5637b2Ck5qx9Jg/3qMPGnfPOIMcI 6msJgOZMaZEGBLBs+0MZHKcCkInuHdW+vK/rWqFT7Qsw3LprMAEybceCzNagTs9lELpQ 40yTuKT6lXmi/W4iNluoFOesNgUKJLomtlgRiYDySMIqqQwneuckwYRH405ptNWxk7ak 6+vw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@iki.fi header.s=lahtoruutu header.b=Ob2GWKeG; arc=pass (i=1); spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id w8-20020a056a0014c800b0068fe2d990a1si6071879pfu.299.2023.09.23.04.35.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 Sep 2023 04:35:50 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@iki.fi header.s=lahtoruutu header.b=Ob2GWKeG; arc=pass (i=1); spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 0FC1C832430F; Sat, 23 Sep 2023 04:29:00 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230414AbjIWL3E (ORCPT + 99 others); Sat, 23 Sep 2023 07:29:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56826 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230389AbjIWL3E (ORCPT ); Sat, 23 Sep 2023 07:29:04 -0400 Received: from lahtoruutu.iki.fi (lahtoruutu.iki.fi [IPv6:2a0b:5c81:1c1::37]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3FAFD199 for ; Sat, 23 Sep 2023 04:28:57 -0700 (PDT) Received: from [192.168.1.195] (unknown [IPv6:2a0c:f040:0:2790::a01d]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: pav@iki.fi) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 4Rt6N6053nz49Q1V; Sat, 23 Sep 2023 14:28:53 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1695468534; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Nyx9BV46aknPHo4HailiEsYzn6LxbgDQxCbFpFbcaOY=; b=Ob2GWKeGgoYZt3beVmR/foPNzhLX2V7cK7rSsoHfMr6Q/UPXDhHkkanp610/k9HKRKiON0 TF+uoaZLS3+qCAcwMg//UaLajTwmquUPn9EG7qe6vIMLiUCMC0BytMd2qMnuj1xQC3lsjk aWHVjMe/NIfS6IrAheiiMwcUkt0hLDYtBQvbzNEqCvx6bqeQNqupmM21upRtjaA4XMMdgX IgbTdzHUd5ZRdGkWEsXI90KJDd85QvWMQhGAoIJCFo6yTlA0quxfvUUTKBc4qkYljzBPz8 It/9qII84Lehoea8PR1lOqb08u8ZjW7j2h8fftuhjoEGwICGL4HnybOil/XNvA== ARC-Seal: i=1; s=lahtoruutu; d=iki.fi; t=1695468534; a=rsa-sha256; cv=none; b=Cz8Y9fD1GR95vbq+/xYrr9a9EVwm/qSQArWBw/icQU4ebfBhaEWu8yWXKwK3K08mCJqiIK tI3C51ivYqeJhoId4v+Ze7QLgmDp6JqVzrGIhmlUw3kHDuNEFCe0HBY0nankckH/seEdb8 3I+ph1dIJfuPI6zuX2L5T4ijvuEDycYj4AVYgRCVLzeS8sq0uq/u7dTclMjMsE3yX8AfB+ HiFtWOmVL+65WkpMjmZO8IAFFwbcx/6nWA4yFWxZbhTdfbBDys236VDsYiKPMMsm+3YAZz UnX+i88uN4Ok8m8/aKRa+amVa8htzeVCyHAeRT6sGhAr4U/tbXiWDkHeg4ZLVg== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=pav@iki.fi smtp.mailfrom=pav@iki.fi ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1695468534; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Nyx9BV46aknPHo4HailiEsYzn6LxbgDQxCbFpFbcaOY=; b=oP28ooQeqy0DjsvwAsrIiV/TChUtzoBNtyT4+SBdo4TX3sTdyNr9X7a/WWYHtepjC3VCrg XJqJInv899mKMH9qpgFl7FxdaalohSGJugRzmLOOmNHeCfyJsGDN1yfDvOa52931xzRe4V hp8qYHbHNrenfISrGt1QX5qjfFOVympZblRj4+axKZwV829pj1Jx3xndDtMzJ0HXe64Mkz yf08lYWwLCHXi5NTyQtr6/08yOPQQbPDrUyP7lo/I2VLw8qBOpMIe/jYlGBz5gfDqzPfqK NxF8TMklnMVPD91+xsdZoXgwdV32t3yyovoN2GLU/G1eAybYCujnH6tpCLi9WA== Message-ID: Subject: Re: [PATCH v2 6/6] doc/media: Convert media-api.rst into manpages From: Pauli Virtanen To: Luiz Augusto von Dentz , linux-bluetooth@vger.kernel.org Date: Sat, 23 Sep 2023 14:28:51 +0300 In-Reply-To: <9100eb19ee8fb16e78cfee86e953dfe2afd6efe9.camel@iki.fi> References: <20230922192335.1060601-1-luiz.dentz@gmail.com> <20230922192335.1060601-6-luiz.dentz@gmail.com> <9100eb19ee8fb16e78cfee86e953dfe2afd6efe9.camel@iki.fi> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) MIME-Version: 1.0 X-Spam-Status: No, score=2.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Sat, 23 Sep 2023 04:29:00 -0700 (PDT) X-Spam-Level: ** Hi, la, 2023-09-23 kello 12:14 +0300, Pauli Virtanen kirjoitti: > Hi Luiz, >=20 > pe, 2023-09-22 kello 12:23 -0700, Luiz Augusto von Dentz kirjoitti: > > From: Luiz Augusto von Dentz > >=20 > > This splits media-api.rst into org.bluez.Media.rst and > > generate manpages for them. >=20 > I made a pass looking at the implementations of the transport/endpoint > and SetConfiguration/SelectProperties/SelectConfiguration and comparing > to docs. >=20 > Note that the SelectProperties API has a problem with BAP endpoint > configuration. We maybe should redesign it while we still can? >=20 > I think generally at least from Pipewire side there's no need to keep > backward compatibility while this is experimental. We can target BlueZ > master branch. >=20 >=20 > SelectProperties API problem: >=20 > As BAP client one first does Config Codec (ASCS =C2=A75.1) which takes > Target_Latency, Target_PHY and Codec. >=20 > After this, the ASE properties (ACSS Table 4.3) in Codec Configured > state contain the server supported values for Max_Transport_Latency, > Presentation_Delay_Min/Max etc. >=20 > SelectProperties is called before Config Codec, so it cannot > necessarily know the server supported values. In this case the sound > server cannot fill in QoS correctly. >=20 > The client-invoked SetConfiguration API also seems to have similar > issue. >=20 > Probably: SelectProperties should be called twice, once to get > parameters for Config Codec, and then again to get parameters for > Config QoS. Or, there should be a separate "SelectCodec" and > "SelectQoS" calls. Calling "SelectProperties" twice could be simpler > for everyone.=C2=A0 >=20 > In client-invoked "SetConfiguration" API, one probably should only pass > in the parameters needed for Config Codec, and BlueZ should then make a > SelectProperties call to get the QoS ones once the server-side values > are known. >=20 > I can take a look at this... >=20 >=20 > MediaTransport: >=20 > "Delay" field only exists for A2DP in code. >=20 > "Volume" field only exists for A2DP in code. >=20 > "Links" is ucast only in code. >=20 > "QoS.TargetLatency" does not exist in code. Maybe it should be exposed > for consistency, since it's expected as return from SelectProperties. >=20 >=20 > SetConfiguration: >=20 > SetConfiguration properties dict when called by BlueZ contains exactly > the properties of the transport. The documentation probably should say > that this is so. >=20 > When called by client, the contents of the properties dict are expected > to be different. QoS parameters are not packed in a "QoS" dict. Maybe > they should be. The "PHY" key is also still a string here. Also, "Framing" is boolean here (elsewhere it's byte). >=20 > The documented input parameters expected from client are wrong, the > documentation explains fields of struct bt_bap_pac_qos, but what the > code parses are that of struct bt_bap_qos. >=20 > "MaximumLatency": no such field in code, seems to be called "Latency" > everywhere. >=20 >=20 > SelectProperties: >=20 > In code, the return parameter expects QoS parameters (struct > bt_bap_qos) to be packed in "QoS" dict. >=20 > They are not packed in "QoS" dict in the input parameters. These are > not exactly QoS, but instead struct bt_bap_pac_qos, so not clear if > they should be packed. >=20 > The input and return parameters are not documented. The input QoS > contains fields of struct bt_bap_pac_qos. The return QoS has fields of > struct bt_bap_qos. >=20 >=20 > MediaEndpoint: >=20 > The endpoints published by BlueZ only have the properties > "UUID", "Codec", "Capabilities", "Device". >=20 > The documentation lists various other things, but they are not > implemented as server endpoint properties. >=20 > As client endpoint properties: >=20 > "RTN" is expected to be present in code, but is not documented. "RTN" is called "Retransmissions" elsewhere. >=20 > "MaximumLatency" "Location" "SupportedContext" "Context" are documented > but not present in code. >=20 >=20