[pulseaudio-discuss] Pulseaudio latency

Harish Gaddameedi harish.gaddameedi at smartron.com
Tue Jul 31 05:26:25 UTC 2018


+Georg Chini <georg at chini.tk>

On Tue, Jul 31, 2018 at 10:40 AM Harish Gaddameedi <
harish.gaddameedi at smartron.com> wrote:

> Hi Georg,
>
> As i told module-loopback is giving overall latency around 300ms from the
> time when i started the sequence, and *latency of module-loopback doesn't
> grow at any point of time*. On saturday and sunday, we have kept a
> continuous streaming for 2 days, expecting that the delay will be further
> increased, but the delay is constant with 4-5 secs, and *there are no
> errors in the logs*. Are there any chances like alsa-sink is filling
> somewhere and blocking the source to send the audio chunks into the
> memblockq?
>
> *module-loopback output is like this:*
> *Tue Jul 31 10:15:37 2018 user.debug pulseaudio[4370]: (47917.422|
>  0.020) [alsa-sink-I2S cx2072x-dsp-0] alsa-sink.c: Wakeup from ALSA!*
> *Tue Jul 31 10:15:37 2018 user.debug pulseaudio[4370]: (47917.443|
>  0.020) [pulseaudio] module-loopback.c: Loopback overall latency is 0.02 ms
> + 244.43 ms + 54.55 ms = 298.89 ms*
> *Tue Jul 31 10:15:37 2018 user.debug pulseaudio[4370]: (47917.443|
>  0.000) [pulseaudio] module-loopback.c: Loopback latency at base rate is
> 298.42 ms*
> *Tue Jul 31 10:15:37 2018 user.debug pulseaudio[4370]: (47917.443|
>  0.000) [pulseaudio] module-loopback.c: [alsa_output.0] Updated sampling
> rate to 44053 Hz.*
>
> *pactl list sources:*
> *Source #1*
> * State: RUNNING*
> * Name: bluez_source*
> * Description: AP 🙏*
> * Driver: module-bluez5-device.c*
> * Sample Specification: s16le 2ch 44100Hz*
> * Channel Map: front-left,front-right*
> * Owner Module: 17*
> * Mute: no*
> * Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100%
> / 0.00 dB*
> *         balance 0.00*
> * Base Volume: 65536 / 100% / 0.00 dB*
> * Monitor of Sink: n/a*
> * Latency: 45876 usec, configured 39512 usec*
> * Flags: HARDWARE DECIBEL_VOLUME LATENCY *
> * Properties:*
> * bluetooth.protocol = "a2dp_source"*
> * device.description = "AP 🙏"*
> * device.string = "AC:C1:EE:69:A6:02"*
> * device.api = "bluez"*
> * device.class = "sound"*
> * device.bus = "bluetooth"*
> * device.form_factor = "phone"*
> * bluez.path = "/org/bluez/hci0/dev_AC_C1_EE_69_A6_02"*
> * bluez.class = "0x5a020c"*
> * bluez.alias = "AP 🙏"*
> * device.icon_name = "audio-card-bluetooth"*
> * Ports:*
> * phone-input: Phone (priority: 0, available)*
> * Active Port: phone-input*
> * Formats:*
> * pcm*
>
> *pactl list sinks:*
> *Sink #0*
> * State: RUNNING*
> * Name: alsa_output.0*
> * Description: ipq4019_snd_card*
> * Driver: module-alsa-sink.c*
> * Sample Specification: s16le 2ch 48000Hz*
> * Channel Map: front-left,front-right*
> * Owner Module: 5*
> * Mute: no*
> * Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100%
> / 0.00 dB*
> *         balance 0.00*
> * Base Volume: 65536 / 100% / 0.00 dB*
> * Monitor Source: alsa_output.0.monitor*
> * Latency: 0 usec, configured 26000 usec*
> * Flags: HARDWARE DECIBEL_VOLUME LATENCY *
> * Properties:*
> * alsa.resolution_bits = "16"*
> * device.api = "alsa"*
> * device.class = "sound"*
> * alsa.class = "generic"*
> * alsa.subclass = "generic-mix"*
> * alsa.name <http://alsa.name> = ""*
> * alsa.id <http://alsa.id> = "I2S cx2072x-dsp-0"*
> * alsa.subdevice = "0"*
> * alsa.subdevice_name = "subdevice #0"*
> * alsa.device = "0"*
> * alsa.card = "0"*
> * alsa.card_name = "snd_card"*
> * alsa.long_card_name = "snd_card"*
> * alsa.driver_name = "snd_card"*
> * device.string = "dmixer"*
> * device.buffering.buffer_size = "383040"*
> * device.buffering.fragment_size = "4032"*
> * device.access_mode = "mmap+timer"*
> * device.description = "snd_card"*
> * device.icon_name = "audio-card"*
> * Formats:*
> * pcm*
>
>
>
>
>
>
> On Sun, Jul 29, 2018 at 9:37 PM Georg Chini <georg at chini.tk> wrote:
>
>> On 29.07.2018 18:03, Georg Chini wrote:
>>
>> On 29.07.2018 12:44, Harish Gaddameedi wrote:
>>
>> Hi Georg,
>>
>> I was working on simple Openwrt Platform, and Source device is Android
>> phone Bluetooth with Youtube app 24 hrs live streaming video and alsa
>> device is speaker, which is hardwired
>>
>> The 12 hrs testing which i did on pulseaudio-11.1 are without my
>> modification. The basic modification which i made in the previous
>> pulseaudio-8.0 is with the idle state of bluez_source card (i.e., card is
>> vanishing when the song is in the pause state) and did some changes to
>> buffers of pulseaudio to reduce the latency. But in pulseaudio-11.1 i
>> didn't do all the changes as i didn't find any initial latency. but
>> periodic latency after 12hrs still exists. The issue is reproducible with
>> Gstreamer also.
>>
>> I haven't worked on microphone scenarios, I'm just working on music
>> player and speaker.
>>
>> Let me clear you some test scenarios for better understanding,
>> Case 1: Android phone as source (bluez_source) and device with internal
>> speaker (alsa-sink as sink for pulseaudio) -------> delay after 12hrs
>> exists.
>> Case 2: Device with Gstreamer as source and same device with internal
>> speaker (pulsesink with alsa card as sink for pulseaudio) ---------->
>> delay after 12 hrs exists.
>> Case 3: Device with Gstreamer as source and External Bluetooth speaker
>> (pulsesink with bluez_sink card) -----------> No delay after 12 hrs.
>>
>> What output does module-loopback give when you run with debugging?
>> Do you see the growing latency there? Does it show up with pactl list
>> sinks
>> or pactl list sources? Any error messages in the PA log?
>>
>> Regards
>>              Georg
>>
>> One more comment: It may well be worth trying 12.2 because the bluetooth
>> thread
>> function has changed.
>>
>
>
> --
> Regards,
> Harish Gaddameedi
>


-- 
Regards,
Harish Gaddameedi
Software Engineer
Mobile: +91- 9246040475
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20180731/5b1ca962/attachment.html>


More information about the pulseaudio-discuss mailing list