All of lore.kernel.org
 help / color / mirror / Atom feed
* pcm_rate API  question
@ 2013-09-27 11:59 Rob Sykes
  2013-09-27 12:38 ` Clemens Ladisch
  0 siblings, 1 reply; 6+ messages in thread
From: Rob Sykes @ 2013-09-27 11:59 UTC (permalink / raw)
  To: alsa-devel@alsa-project.org

Hello alsa devs,

There's an ongoing attempt to see if libsoxr-lsr can be used as a plug-in replacement for libsamplerate in pulseaudio and in alsa (libsoxr-lsr is designed with this usage in mind).

With pulseaudio, it seems to 'just work', but with alsa, it looks like there is a buffering problem.  Progress reports for this are here:

http://blog.ivitera.com/pavel/linux-audio/pulseaudio-with-ld_preloading-libsoxr-lsr

http://blog.ivitera.com/pavel/linux-audio/simple-use-of-libsoxr-lsr-in-alsa-using-ld_preload


AFAICT, the problem with alsa relates to the use of this function in pcm_rate.h:

typedef struct snd_pcm_rate_ops {
...
        void (*convert_s16)(void *obj, int16_t *dst, unsigned int dst_frames,
                            const int16_t *src, unsigned int src_frames);

Is there documentation available regarding the use of this function? For example, is the plugin obliged always to consume src_frames and generate dst_frames samples?  If so, how is the plugin expected to comply (say, if it's not been given enough input to generate that amount of output)?

TIA,
Rob

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

end of thread, other threads:[~2013-09-30 14:16 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-27 11:59 pcm_rate API question Rob Sykes
2013-09-27 12:38 ` Clemens Ladisch
     [not found]   ` <1380295697.44147.YahooMailNeo@web171405.mail.ir2.yahoo.com>
2013-09-28  9:58     ` Rob Sykes
2013-09-30  8:59       ` Clemens Ladisch
2013-09-30 11:15         ` Rob Sykes
2013-09-30 14:16           ` Clemens Ladisch

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.