speechd-discuss
[Top][All Lists]
Advanced

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

Audio output in libao and Pulse (was: the libao driver)


From: Halim Sahin
Subject: Audio output in libao and Pulse (was: the libao driver)
Date: Mon, 11 Oct 2010 21:11:41 +0200

Hi,
On Mon, Oct 11, 2010 at 04:15:18PM +0100, Rui Batista wrote:
> Hi,
> Neither volume setting... I only know how to change speech-dispatcher
> volume in pulseaudio using the pulseaudio control application. Last time
> I checked, the pulseaudio simple API had no way to set volume.

Hmm, this was not a big problem for me.
The synths do volume adjustments and using pulseaudio to control
individual volumes is one of the power features :-).

> Moreover, with the corrent pulseaudio driver (and  supose, libao), we
> can not handle latency changes and so on in pulseaudio. When routing

Yes, this is the only difference between libao and the pulseaudio driver
in speech-dispatcher.
The latency-setting could be added to libao (which is more easy) than
rewriting from scratch.
Don't forget that the new approach to pulse works and is well usable.
Maybe we should prepare a small patch for libao's pulse plugin to add
the missing feature.

> speech-dispatcher sound to a pulseaudio server on the netowrk this is
> noticiable (I tried that.).

Yes I have tested this as well.


> I think the current driver drains the stream when stopping... but anyway
> it is CPU consumming sending 256 bytes at each time. We should send
> whatever we can and stop if needed. There is a way to do this without
> copying any data to pulseaudio internal buffers, so it is not dependent
> on the size of the buffer.

Well the problem is not the driver that sends much data. The problem is
pulseaudio resamples afaik all incoming audio samples which is cpu
consuming.
I see not a noticable cpu consumtion on my netbook using libao->alsa.
Giving pulseaudio larger buffers would result in bigger latencies (see
the old driver).

> I'm talking from what I recall of pulseaudio API, if I'm wrong in
> something please correct me.

After libao started working I spent no time to pulseaudio.

> I can  notice some differences in speed from my corei7 to my netbook.
> You say: ok, one has 4 cores the other has one. But under eavy workloads
> in the netbook I notice that speech+pulseaudio are consumming a good
> ammount of CPU.

:-(.


> I?m not a big fan of libao, at least regarding to pulseaudio. It's
> another extra layer and, if we need better control when dealing with
> pulseaudio, it is not that flexible. For alsa output it seems better
> than the current situation.

Well the working and usable pulse driver wouldn't be possible if we
don't cloned it from libao.
Sure there are some finetuning stuff missing, but it should be added to
libao and used in speechd by additional parameters to the library.

> IMO libao is not not the "one-feetsall" soluction for speech-dispatcher
> but having a driver for it like we have now works better for some
> people.

NACK. It's the most stable and usable one which is available for
speech-dispatcher
It's,alsa oss support works really well and the pa stuff could be easily
added. As i can remember it was only one different parameter to
pulse-sijmple api which the pulseaudio driver in speechd uses
differently.

CIAO.
halim




reply via email to

[Prev in Thread] Current Thread [Next in Thread]