package: pipewire-pulse severity: important tags: accessibility x-debbugs-cc: debian-accessibility@lists.debian.org Hi. I use emacspeak, a screen reader/desktop on top of emacs for access to terminal applications. I noticed that the upgrade from pipewire 0.59 to pipewire 0.63 broke speech. I'd get the initial output from emacspeak but not anything else. After some digging around, I've reduced things to a much simpler use of libespeak-ng. Emacspeak will generate streams that underrun frequently. In particular, it generates audio only when it it has something to say. That used to work. In particular, under pipewire 0.59, the following program says 'begin' and 'end now' a few seconds later. However under pipewire 0.63, I only get the 'begin' message. // link against -lespeak-ng #include <string.h> #include <assert.h> #include <unistd.h> #include <espeak-ng/speak_lib.h> const char * a_str = "Begin"; const char * b_str = "end now"; int main() { unsigned int unique_identifier = 0; espeak_Initialize(AUDIO_OUTPUT_PLAYBACK, 512, NULL, 0); assert(espeak_SetParameter(espeakRATE, 550, 0) == EE_OK); espeak_Synth(a_str, strlen(a_str)+1, 0, POS_CHARACTER, 0, espeakCHARS_UTF8 , &unique_identifier, NULL); sleep(3); espeak_Synth(b_str, strlen(b_str), 0, POS_CHARACTER, 0, espeakCHARS_UTF8 , &unique_identifier, NULL); sleep(3); } ________________________________________ I've also filed an upstream issue with libespeak-ng: https://github.com/espeak-ng/pcaudiolib/issues/23 And there's a thread on debian-accessibility starting at https://lists.debian.org/debian-accessibility/2022/12/msg00054.html
Attachment:
signature.asc
Description: PGP signature