diff mbox series

[BlueZ,2/2] doc: update ISO Transport properties to match implementation

Message ID d33ba431a0b89d8dc80b0da984316d9936be54f4.1678902782.git.pav@iki.fi (mailing list archive)
State Superseded
Headers show
Series [BlueZ,1/2] transport: add CIG/CIS/PHY properties, don't show unset QoS properties | expand

Checks

Context Check Description
tedd_an/pre-ci_am success Success
tedd_an/CheckPatch success CheckPatch PASS
tedd_an/GitLint success Gitlint PASS
tedd_an/IncrementalBuild success Incremental Build PASS

Commit Message

Pauli Virtanen March 15, 2023, 5:53 p.m. UTC
Document the transport QoS properties. Fix documentation of Delay, it's
microseconds for ISO.
---
 doc/media-api.txt | 44 ++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 42 insertions(+), 2 deletions(-)

Comments

Luiz Augusto von Dentz March 15, 2023, 6:32 p.m. UTC | #1
HI Pauli,

On Wed, Mar 15, 2023 at 10:54 AM Pauli Virtanen <pav@iki.fi> wrote:
>
> Document the transport QoS properties. Fix documentation of Delay, it's
> microseconds for ISO.
> ---
>  doc/media-api.txt | 44 ++++++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 42 insertions(+), 2 deletions(-)
>
> diff --git a/doc/media-api.txt b/doc/media-api.txt
> index 281f72c1e..eac7f081c 100644
> --- a/doc/media-api.txt
> +++ b/doc/media-api.txt
> @@ -773,12 +773,17 @@ Properties        object Device [readonly]
>                                 "pending": streaming but not acquired
>                                 "active": streaming and acquired
>
> -               uint16 Delay [readwrite]
> +               uint16 Delay [A2DP only, readwrite, optional]
>
> -                       Optional. Transport delay in 1/10 of millisecond, this
> +                       For A2DP: transport delay in 1/10 of millisecond. This
>                         property is only writeable when the transport was
>                         acquired by the sender.
>
> +               uint32 Delay [ISO only, optional]
> +
> +                       For ISO, presentation delay in microseconds.
> +                       Note the value type is different for ISO and A2DP.
> +

I don't think D-Bus introspection allows polymorphism of properties,
so either we just use uint16 and limit the maximum delay to 65K or we
have say it is in milliseconds given that in most cases the presets
have the Presentation Delay as a round number.

>                 uint16 Volume [readwrite]
>
>                         Optional. Indicates volume level of the transport,
> @@ -804,3 +809,38 @@ Properties object Device [readonly]
>
>                         Linked transport objects which the transport is
>                         associated with.
> +
> +               byte CIG [ISO only, optional, experimental]
> +
> +                       Indicates configured QoS CIG.
> +                       Only present when QoS is configured.
> +
> +               byte CIS [ISO only, optional, experimental]
> +
> +                       Indicates configured QoS CIS.
> +                       Only present when QoS is configured.
> +
> +               byte Interval [ISO only, optional, experimental]
> +
> +                       Indicates configured QoS interval.
> +                       Only present when QoS is configured.

This should be uint32

> +               byte Framing [ISO only, optional, experimental]
> +
> +                       Indicates configured QoS framing.
> +                       Only present when QoS is configured.
> +
> +               byte PHY [ISO only, optional, experimental]
> +
> +                       Indicates configured QoS PHY.
> +                       Only present when QoS is configured.
> +
> +               uint32 Retransmissions [ISO only, optional, experimental]
> +
> +                       Indicates configured QoS retransmissions.
> +                       Only present when QoS is configured.

And this should be byte

> +               uint32 Latency [ISO only, optional, experimental]
> +
> +                       Indicates configured QoS latency.
> +                       Only present when QoS is configured.

uint16

> --
> 2.39.2
>
Pauli Virtanen March 15, 2023, 7:21 p.m. UTC | #2
Hi,

ke, 2023-03-15 kello 11:32 -0700, Luiz Augusto von Dentz kirjoitti:
> On Wed, Mar 15, 2023 at 10:54 AM Pauli Virtanen <pav@iki.fi> wrote:
> > 
> > Document the transport QoS properties. Fix documentation of Delay, it's
> > microseconds for ISO.
> > ---
> >  doc/media-api.txt | 44 ++++++++++++++++++++++++++++++++++++++++++--
> >  1 file changed, 42 insertions(+), 2 deletions(-)
> > 
> > diff --git a/doc/media-api.txt b/doc/media-api.txt
> > index 281f72c1e..eac7f081c 100644
> > --- a/doc/media-api.txt
> > +++ b/doc/media-api.txt
> > @@ -773,12 +773,17 @@ Properties        object Device [readonly]
> >                                 "pending": streaming but not acquired
> >                                 "active": streaming and acquired
> > 
> > -               uint16 Delay [readwrite]
> > +               uint16 Delay [A2DP only, readwrite, optional]
> > 
> > -                       Optional. Transport delay in 1/10 of millisecond, this
> > +                       For A2DP: transport delay in 1/10 of millisecond. This
> >                         property is only writeable when the transport was
> >                         acquired by the sender.
> > 
> > +               uint32 Delay [ISO only, optional]
> > +
> > +                       For ISO, presentation delay in microseconds.
> > +                       Note the value type is different for ISO and A2DP.
> > +
> 
> I don't think D-Bus introspection allows polymorphism of properties,
> so either we just use uint16 and limit the maximum delay to 65K or we
> have say it is in milliseconds given that in most cases the presets
> have the Presentation Delay as a round number.

How about renaming the property to PresentationDelay in ISO transports?
I think it would clearest to keep it as it is in BAP.

For A2DP changing away from the 1/10 ms unit breaks things.

> >                 uint16 Volume [readwrite]
> > 
> >                         Optional. Indicates volume level of the transport,
> > @@ -804,3 +809,38 @@ Properties object Device [readonly]
> > 
> >                         Linked transport objects which the transport is
> >                         associated with.
> > +
> > +               byte CIG [ISO only, optional, experimental]
> > +
> > +                       Indicates configured QoS CIG.
> > +                       Only present when QoS is configured.
> > +
> > +               byte CIS [ISO only, optional, experimental]
> > +
> > +                       Indicates configured QoS CIS.
> > +                       Only present when QoS is configured.
> > +
> > +               byte Interval [ISO only, optional, experimental]
> > +
> > +                       Indicates configured QoS interval.
> > +                       Only present when QoS is configured.
> 
> This should be uint32

Indeed...

> 
> > +               byte Framing [ISO only, optional, experimental]
> > +
> > +                       Indicates configured QoS framing.
> > +                       Only present when QoS is configured.
> > +
> > +               byte PHY [ISO only, optional, experimental]
> > +
> > +                       Indicates configured QoS PHY.
> > +                       Only present when QoS is configured.
> > +
> > +               uint32 Retransmissions [ISO only, optional, experimental]
> > +
> > +                       Indicates configured QoS retransmissions.
> > +                       Only present when QoS is configured.
> 
> And this should be byte
> 
> > +               uint32 Latency [ISO only, optional, experimental]
> > +
> > +                       Indicates configured QoS latency.
> > +                       Only present when QoS is configured.
> 
> uint16
> 
> > --
> > 2.39.2
> > 
> 
>
diff mbox series

Patch

diff --git a/doc/media-api.txt b/doc/media-api.txt
index 281f72c1e..eac7f081c 100644
--- a/doc/media-api.txt
+++ b/doc/media-api.txt
@@ -773,12 +773,17 @@  Properties	object Device [readonly]
 				"pending": streaming but not acquired
 				"active": streaming and acquired
 
-		uint16 Delay [readwrite]
+		uint16 Delay [A2DP only, readwrite, optional]
 
-			Optional. Transport delay in 1/10 of millisecond, this
+			For A2DP: transport delay in 1/10 of millisecond. This
 			property is only writeable when the transport was
 			acquired by the sender.
 
+		uint32 Delay [ISO only, optional]
+
+			For ISO, presentation delay in microseconds.
+			Note the value type is different for ISO and A2DP.
+
 		uint16 Volume [readwrite]
 
 			Optional. Indicates volume level of the transport,
@@ -804,3 +809,38 @@  Properties	object Device [readonly]
 
 			Linked transport objects which the transport is
 			associated with.
+
+		byte CIG [ISO only, optional, experimental]
+
+			Indicates configured QoS CIG.
+			Only present when QoS is configured.
+
+		byte CIS [ISO only, optional, experimental]
+
+			Indicates configured QoS CIS.
+			Only present when QoS is configured.
+
+		byte Interval [ISO only, optional, experimental]
+
+			Indicates configured QoS interval.
+			Only present when QoS is configured.
+
+		byte Framing [ISO only, optional, experimental]
+
+			Indicates configured QoS framing.
+			Only present when QoS is configured.
+
+		byte PHY [ISO only, optional, experimental]
+
+			Indicates configured QoS PHY.
+			Only present when QoS is configured.
+
+		uint32 Retransmissions [ISO only, optional, experimental]
+
+			Indicates configured QoS retransmissions.
+			Only present when QoS is configured.
+
+		uint32 Latency [ISO only, optional, experimental]
+
+			Indicates configured QoS latency.
+			Only present when QoS is configured.