New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NVDA speech cuts off at end of lines #2140
Comments
Comment 1 by jteh on 2012-03-03 03:57 |
Comment 2 by challsworth2 on 2012-03-03 11:33 |
Comment 3 by parham on 2012-03-03 12:08 What I do to get around this is to play an audio file with my media player and lower the volume to 0 so I don't hear the audio file. Then nothing is cut off. I didn't personally report this because I suspect it might be an audio card issue; this doesn't happen with Realtek High-definition audio. |
Comment 4 by jteh on 2012-03-04 21:45 As a matter of interest, if you make NVDA play a beep (e.g. turn on playing of mouse audio coordinates and then move the mouse), does the issue go away? There is a bug in NVDA where the audio device is kept open after a tone is played, but this bug is useful for the purposes of this test. :) |
Comment 5 by challsworth2 on 2012-03-04 22:15 |
Comment 6 by parham (in reply to comment 4) on 2012-03-05 05:47
Well, for me at least, when I turn on progress bar beeps, they also get cut off. Not sure if the same bug exists in that case, or only when using the mouse. |
Comment 7 by jteh (in reply to comment 6) on 2012-03-05 06:55
So it doesn't fix the speech truncation? That's concerning, since the audio device is kept open in that case, which I thought was why playing something from another application fixed it. This means that keeping the audio device open for longer is not going to fix this issue. Can someone experiencing this please install espeak SAPI 5 and test with that? I'm curious as to whether it happens there too. |
Comment 8 by parham (in reply to comment 7) on 2012-03-05 08:05
As the original reporter has reported, this doesn't happen with SAPI5 synths, even ESpeak (although I'm not using the Max variant in the SAPI5 version if that helps). |
There are also cases where the start of utterances are truncated; e.g. when using certain headsets where nothing else has the audio device open. Things to investigate:
CC @Camlorn, @michaelDCurran, @feerrenrut. In looking at this, we should also consider tones (#400). |
The easiest fix for this is probably going to be to just append 100MS of zeros to the end of the audio. The following Python list comprehension produces the right amount of data:
Where I think this is doable, but it's been a while since I looked at it. This can probably just be done by the method whose name I believe is If audio is being cut off at the beginning, this is just something else to add to the "do we need an audio settings dialog?" discussion. There is no other way to fix this that I am aware of besides adding latency. There is a process called convolution which most audio people will be familiar with. If you want to make a latency free convolution effect, you can do it by dropping the first samples and dealing with some artifacts on device open. I personally think this is a horrible idea, but I could see some enterprising programmer somewhere going "I know!" and doing it. So even though I haven't seen it, I could believe in it happening for someone. Holding the device open may be sufficient for Vista and later, but may not work for XP. Appending the zeros should, and has the added advantage of building in the waiting without much further work. This is something that can probably also be improved with #5096, so I'm mentioning that ticket here. |
@challsworth2 is this still an issue? @michaelDCurran your thoughts are very apprecaited, thanks. |
@camlorn any updates on this? |
Reported by challsworth2 on 2012-03-02 17:25
Using Espeak, NVDA speech cuts off at the end of lines. This does not happen with Microsoft Speech API version 5.
The text was updated successfully, but these errors were encountered: