Re: a2dp delay reporting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

to, 2023-11-09 kello 16:36 -0600, Ethan White kirjoitti:
> On 10/17/23 13:10, Ethan White wrote:
> > Hi,
> > 
> > How do I inform Bluez of my a2dp transport delay?  The media-api 
> > document shows a Delay property for the MediaTransport1 interface but 
> > attempts at writing this property yield the following error:
> > 
> > org.freedesktop.DBus.Error.PropertyReadOnly: Property 'Delay' is not 
> > writable
> > 
> > 
> > Reviewing profiles/audio/transport.c a2dp_properties (Bluez 5.70) I find 
> > that the delay property does not have a set function:
> > 
> > line 846: { "Delay", "q", get_delay_reporting, NULL, 
> > delay_reporting_exists },
> > 
> > 
> > What am I missing here?  How an I supposed to inform the a2dp source of 
> > my playback delay?  Thanks for any help.
> > 
> > Regards,
> > Ethan
> 
> I'm currently using org.bluez.Media1 RegisterEndpoint to expose my a2dp 
> sink to a2dp sources.  I use org.bluez.MediaTransport1 Acquire to get 
> the transport.  I can write the 'Volume' property of 
> org.bluez.MediaTransport1 to change the audio source volume.  However, 
> writing to the 'Delay' property of the org.bluez.MediaTransport1 
> interface yields only errors as this property appears to be read-only 
> despite bluez/docs/media-api.rst showing this property to be read/write.

It looks to me updating the delay value for local A2DP sink endpoints
is not implemented.

The underlying parts in the AVDTP code for sending delay reports on the
other hand seem to be in place, so it might not be too hard to make it
work in the DBus interface. Maybe the DBus property set callback could
just call `avdtp_delay_report` and it'd work.

> When using busctl from the host running my a2dp sink to inspect the 
> transport I get a dash '-' in place of a numerical value:
> host:~$ busctl introspect  org.bluez 
> /org/bluez/hci0/dev_xx_xx_xx_xx_xx_xx/fd0
> NAME                                TYPE      SIGNATURE RESULT/VALUE 
>                         FLAGS
> org.bluez.MediaTransport1           interface -         - 
>                         -
> .Acquire                            method    -         hqq 
>                         -
> .Release                            method    -         - 
>                         -
> .TryAcquire                         method    -         hqq 
>                         -
> .Codec                              property  y         2 
>                         emits-change
> .Configuration                      property  ay        6 128 1 4 131 
> 232 0                     emits-change
> .Delay                              property  q         - 
>                         emits-change
> .Device                             property  o 
> "/org/bluez/hci0/dev_E8_78_65_F2_14_24" emits-change
> .State                              property  s         "active" 
>                         emits-change
> .UUID                               property  s 
> "0000110b-0000-1000-8000-00805f9b34fb"  emits-change
> .Volume                             property  q         64 
>                         emits-change writable
> org.freedesktop.DBus.Introspectable interface -         - 
>                         -
> .Introspect                         method    -         s 
>                         -
> org.freedesktop.DBus.Properties     interface -         - 
>                         -
> .Get                                method    ss        v 
>                         -
> .GetAll                             method    s         a{sv} 
>                         -
> .Set                                method    ssv       - 
>                         -
> .PropertiesChanged                  signal    sa{sv}as  - 
>                         -
> 
> Does Bluez allow an a2dp sink to report its playback delay to the a2dp 
> source via the org.bluez.MediaTransport1 Delay property?  Is there some 
> other way to communicate this delay back to the audio source for proper 
> lip-sync with video?
> 
> Regards,
> Ethan
> 

-- 
Pauli Virtanen





[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux