All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anoop Rajan <anoop@librewireless.com>
To: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>
Subject: Support for Synchronous Audio
Date: Fri, 17 Apr 2015 08:07:54 +0000	[thread overview]
Message-ID: <1429258074046.61439@librewireless.com> (raw)

Hi All,


My self Anoop, an audio frame work developer, but a newbie to linux ALSA.

We have requirements to play synchronous multi-room audio with very minimal node to node latency(<100 us).( Node to node latency: How much one speaker is out of sync with other).  Right now we have logic in  user space to synchronize the audio using time stamps derived from a common clock, but the node to node latency is over 1ms. Though I make sure that I start the PCM  from user layer synchronously, the actual I2S out is out of sync(in consistent values ranging from 100 to 1ms). I beleive the un-deterministic path delay from user to ALSA buffer, big ALSA buffer(8k Samples), scheduling variances(high priority/interrupt preemption)   all might have added to this increased latency.

Rather than fine tuning the above discrepancies , I was thinking about some designs to pass the audio frames with time stamps  to kernel layer and to implement some logic in kernel (before pushing to DMA) to present the audio at exact stamped time to have a better node to node latency.

Before doing that I was trying to find out what ALSA supports for this requirement and from web could see various comments regarding this (proposal to  snd_pcm_start_at()<http://mailman.alsa-project.org/pipermail/alsa-devel/2014-October/082091.html>) and further proposed discussions on Audio mini summit, but I couldn't find further information's on it.

Would you please guide me. Does ALSA provides some means to achieve minimal Node to Node latency? would you please provide some pointers/documents to me to understand better.

Thanks,

Anoop

             reply	other threads:[~2015-04-17  8:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-17  8:07 Anoop Rajan [this message]
2015-04-17  9:07 ` Support for Synchronous Audio Clemens Ladisch
2015-04-17 10:28   ` Anoop Rajan
2015-04-18 10:36     ` Clemens Ladisch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1429258074046.61439@librewireless.com \
    --to=anoop@librewireless.com \
    --cc=alsa-devel@alsa-project.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.