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

[Emacspeak] Re: TTS Problems with Pipewire and Fedora 37



"T.V Raman" <raman(a)google.com> writes:

> Lua is a nice language -- you'll enjoy it.
>
> The lagginess may have been due to the virtualenv.

Yes and I think the distortion may have been as well. Noticed the
virtual volume was maxed out. 

>
> Test with outloud not espeak to avoid portaudio issues and
> complications.
>

Hmm. I've not got outloud installed on this system. This was partially
because I was trying to avoid running a system with mixed 64/32 bit
sound infrastructure. Also, I tried to get outloud working with pipewire
in a virtual system before migrating from Ubuntu to Fedora and was never
able to get it to work (Fedora is not one of the voxin supported
distros).

One of the reasons I moved to Fedora after years on both Ubuntu and
Debian was because I was frustrated with how both those platforms have
been doing mixed and patched hybrid systems. For example, the
debian/ubuntu systemd implementation is still 'modified'. The version of
GNome and other software is a blend of two versions etc. Likewise, their
pipewire/wireplumber versions are behind. However, the
main reason is because in Australia at least, nearly all the servers and
enterprise systems I work with are either Red Hat enterprise or Fedora
based. Familiarity with those platforms has become more important with
the growth in dev ops and use of virtual environments like docker and
kubernetes (though I have to admit, more often than not, all of this is
used unnecessarily and created overly complex environments for no real
benefit - my last 3 contracts have involved 'fixing' such environments
by simplifying them to make the scale match their actual
scale/complexity).


> Dont write any lua scripts yet -- get the basic TTS server working in
> a  default setup; that's how I migrated to pulseaudio six months ago.
>

Funny thing is, I've been using pulsaudio for years. There were some
performance issues early on, but they were resolved years ago. Up until
recently, I've had no issues with pulseaudio at all apart from lack of
support when using the console, but I've not used the Linux console in
years either. I even had a similar configuration to the one you now
have, execpt I achieved it just using pulse audios pavucontrol and/or
pulsemix (terminal) program i.e. sending different output to different
channels, mixing different sources with different volumes etc. 

Now that I have got a TTS working again on my base system by rollling
pipewire back the the previous version, the pressure to get something
working is less and I can now more easily consume the documentation. My
plan is to start by getting a better grip on both pipewire and in
particular wireplumber. I suspect once I can work out how to make it
work, wireplumber will be the critical component. I also think it is how
you will be implementing the more advanced sound stuff you do with
Emacspeak i.e. separate channels for notifications/text, sound scapes
etc.


> Tim Cross writes:
>  > 
>  > I probably wasn't clear.
>  > 
>  > After removing pipewire-pulse, the system was using pipewire-alsa. It
>  > works, but felt a little laggy and the quality sounded a little
>  > distorted. However, it worked fine. Unfortunately, many other apps won't
>  > work without the pipewire-pulse module (I suspect I can probably
>  > configure pipewire for each of them to make them use pipewire-alsa - I
>  > was surprised they didn't do this automatically once pipewire-pulse was
>  > removed). I did do a full reboot, so I know it wasn't due to some things
>  > still being loaded etc.
>  > 
>  > What I want to try and do is configure pipewire to force espeak to use
>  > alsa rather than pulse. If I can do that, I can have the pipewire-pulse
>  > module, so all pulse apps work and have espeak work using alsa
>  > under pipewire. I know this can be done because I briefly did it
>  > accidentally using the CLI tools. Unfortunately, I was not able to
>  > reproduce the config after a reboot. When I did have it working, the
>  > device was reporting as Pipewire Alsa espeak rather than just espeak as
>  > usual. 
>  > 
>  > There are just so many moving parts here - I find it extremely
>  > confusing! I have a reasonable grasp of the basic architecture and
>  > relationship between hardware, ALSA, pipewire and
>  > pipewire-pulse. However, all the different configuration layers, plus
>  > the extensive use of lua by pipewire as the configuration/scripting
>  > language is certainly challenging. I probably need to spend some time
>  > learning lua as I know nothing about it as a language. From what I can
>  > tell, I should be able to define some lua scripts to take the espeak
>  > output and route them to whatever sink I want, so should be able to get
>  > it to bypass pulse.
>  > 
>  > 
>  > "T.V Raman" <raman(a)google.com> writes:
>  > 
>  > > Like I said, look for pipewire-alsa.
>  > >
>  > > Espeak adds another twist in that it uses portaudio and that gives one
>  > > more level of indirection 
>
> -- 
>
> Thanks,
>
> --Raman(I Search, I Find, I Misplace, I Research)
> ♉ Id: kg:/m/0285kf1  🦮


|May 1995 - Last Year|Current Year|


If you have questions about this archive or had problems using it, please contact us.

Contact Info Page