All of lore.kernel.org
 help / color / mirror / Atom feed
* proposal: snd_pcm_start_at()
@ 2014-10-02 14:34 Tim Cussins
  2014-10-02 17:41 ` Pierre-Louis Bossart
  0 siblings, 1 reply; 12+ messages in thread
From: Tim Cussins @ 2014-10-02 14:34 UTC (permalink / raw)
  To: alsa-devel

Hi all,

I'm Tim: I work at Linn Products Ltd - we make Network Music Players,
amongst other things.

As you might imagine, synchronised-start is important when multiple
devices on the network are rendering the same audio. We'd be interested
in contributing a small expansion of the alsa-lib API to support
synchronised start.

Assuming we can synchronise the audio clocks (I'm aware this is not
trivial - It's not the topic of this post), we'd propose something like:

    int snd_pcm_start_at(snd_pcm_t* pcm, snd_htimestamp_t* tstamp);

and playback would begin as close to tstamp as possible. If tstamp is in
the past, it would should return an error.

Recent work by Takashi Iwai enables client code to set the clock type of
timestamps using snd_pcm_sw_params_set_tstamp_type(). This context could
quite naturally extend to tstamp argument of snd_pcm_start_at().

Before I get stuck into working up the details under the hood, it'd be
good to get some feedback/objections regarding this approach.

Thanks in advance!
Tim

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2014-10-10 19:50 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-02 14:34 proposal: snd_pcm_start_at() Tim Cussins
2014-10-02 17:41 ` Pierre-Louis Bossart
2014-10-03 12:00   ` Tim Cussins
2014-10-03 22:24     ` Pierre-Louis Bossart
2014-10-06  9:45       ` Takashi Iwai
2014-10-07 12:48         ` Tim Cussins
2014-10-08 14:18         ` Mark Brown
2014-10-08 15:29           ` Takashi Iwai
2014-10-08 16:09             ` Tim Cussins
2014-10-08 20:16               ` Mark Brown
2014-10-09  9:20                 ` Tim Cussins
2014-10-10 19:50                   ` Nick Stoughton

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.