Skip to content
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

Error with profile configuration asigned to the trigger say all and the option Automatic Say All on page load cheked #15784

Open
Carlos-EstebanM opened this issue Nov 15, 2023 · 12 comments
Labels
blocked/needs-info The issue can not be progressed until more information is provided. bug/regression feature/say-all p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.

Comments

@Carlos-EstebanM
Copy link

Steps to reproduce:

  1. Press CTRL + NVDA + B and check the option Automatic Say All on page load.
  2. Open the Configuration profiles dialog.
  3. Create a new profile with the trigger say all.
  4. Activate this profile. Change an option related to the speech, Synthesizer like the pitch, rate, voice, etc.
  5. Deactivate the configuration profile.
  6. Open a new document in browse mode, such as a web page or a PDF document.

Actual behavior:

NVDA announce the title of the Window, but the document is not reading automatically. Is necessary to press the command say all manually. When the trigger for the say all command is disabled, NVDA reads again the document when the load was completed. Note: The NVDA log in debug mode show the lines, but NVDA is not reading.

Expected behavior:

NVDA uses the profile say all normally, and can read the document starting in the first line automatically.

NVDA logs, crash dumps and other attachments:

DEBUG - NVDAObjects.IAccessible.mozilla.Mozilla._get_descriptionFrom (21:54:04.576) - MainThread (4360):
Getting mozilla descriptionFrom
DEBUG - NVDAObjects.IAccessible.mozilla.Mozilla._get_descriptionFrom (21:54:04.576) - MainThread (4360):
description IA2Attribute is:
IO - speech.speech.speak (21:54:04.578) - MainThread (4360):
Speaking [LangChangeCommand ('en_US'), 'NVDA 2023.3 User Guide — Mozilla Firefox', CancellableSpeech (still valid)]
DEBUGWARNING - characterProcessing._getSpeechSymbolsForLocale (21:54:04.578) - MainThread (4360):
No CLDR data for locale en_US
DEBUGWARNING - characterProcessing._getSpeechSymbolsForLocale (21:54:04.578) - MainThread (4360):
No symbol data for locale en_US
DEBUG - treeInterceptorHandler.update (21:54:04.784) - MainThread (4360):
Adding new treeInterceptor to runningTable: <virtualBuffers.gecko_ia2.Gecko_ia2 object at 0x09A9A750>
DEBUG - virtualBuffers.VirtualBuffer._loadBuffer (21:54:04.984) - virtualBuffers.gecko_ia2.VirtualBuffer.loadBuffer (16112):
Buffer load took 0.198 sec, 245640 chars
DEBUG - browseMode.BrowseModeDocumentTreeInterceptor._getInitialCaretPos (21:54:05.018) - MainThread (4360):
No saved caret position for file:///C:/Program%20Files%20(x86)/NVDA/documentation/en/userGuide.html
IO - speech.speech.speak (21:54:05.019) - MainThread (4360):
Speaking [LangChangeCommand ('en_US'), 'NVDA 2023.3 User Guide', CancellableSpeech (still valid)]
DEBUG - config.ConfigManager._triggerProfileEnter (21:54:05.021) - MainThread (4360):
Activating triggered profile Say all
INFO - config.ConfigManager._loadConfig (21:54:05.021) - MainThread (4360):
Loading config: C:\Users\carlo\AppData\Roaming\nvda\profiles\Say all.ini
DEBUG - config.profileUpgrader.upgrade (21:54:05.022) - MainThread (4360):
Current config schema version: 11, latest: 11
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.023) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.023) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.023) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ReviewRoutingMovesSystemCaretFlag, behaviorOfDefault: NEVER
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.023) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ReviewRoutingMovesSystemCaretFlag, behaviorOfDefault: NEVER
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.024) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.024) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.024) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.024) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.024) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.024) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.025) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.025) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.025) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ParagraphNavigationFlag, behaviorOfDefault: APPLICATION
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.025) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ParagraphNavigationFlag, behaviorOfDefault: APPLICATION
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.026) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: WindowsTerminalStrategyFlag, behaviorOfDefault: DIFFING
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.026) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: WindowsTerminalStrategyFlag, behaviorOfDefault: DIFFING
DEBUG - fileUtils.FaultTolerantFile (21:54:05.026) - MainThread (4360):
C:\Users\carlo\AppData\Roaming\nvda\profiles\Say all.ini0eyd_5ok.tmp
INFO - config.ConfigManager._loadConfig (21:54:05.029) - MainThread (4360):
Config loaded (after upgrade, and in the state it will be used by NVDA):
{'schemaVersion': '11', 'speech': {'oneCore': {'pitch': '55'}}}
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.029) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ReviewRoutingMovesSystemCaretFlag, behaviorOfDefault: NEVER
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.029) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.030) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.030) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.030) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.030) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.031) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ParagraphNavigationFlag, behaviorOfDefault: APPLICATION
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:05.031) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: WindowsTerminalStrategyFlag, behaviorOfDefault: DIFFING
DEBUG - synthDriverHandler.SynthDriver.loadSettings (21:54:05.031) - MainThread (4360):
Loaded changed settings for SynthDriver oneCore
DEBUG - braille.BrailleHandler._switchDisplay (21:54:05.034) - MainThread (4360):
Reinitializing 'noBraille' braille display
DEBUG - autoSettingsUtils.autoSettings.AutoSettings._registerConfigSaveAction (21:54:05.034) - MainThread (4360):
registering pre_configSave action: <class 'brailleDisplayDrivers.noBraille.BrailleDisplayDriver'>
DEBUG - autoSettingsUtils.autoSettings.AutoSettings._loadSpecificSettings (21:54:05.038) - MainThread (4360):
loading braille noBraille
INFO - braille.BrailleHandler._setDisplay (21:54:05.038) - MainThread (4360):
Loaded braille display driver 'noBraille', current display has 0 cells.
IO - speech.speech.speak (21:54:05.106) - MainThread (4360):
Speaking [CallbackCommand(name=say-all:lineReached), LangChangeCommand ('en_US'), 'heading', 'level 1', LangChangeCommand ('en'), 'NVDA 2023.3 User Guide', CallbackCommand(name=say-all:lineReached)]
IO - speech.speech.speak (21:54:05.236) - MainThread (4360):
Speaking [LangChangeCommand ('en_US'), 'heading', 'level 2', LangChangeCommand ('en'), 'Table of Contents', CallbackCommand(name=say-all:lineReached)]
IO - speech.speech.speak (21:54:05.255) - MainThread (4360):
Speaking [LangChangeCommand ('en_US'), 'list', 'with 18 items', LangChangeCommand ('en'), '• ', CallbackCommand(name=say-all:lineReached), LangChangeCommand ('en_US'), 'link', LangChangeCommand ('en'), '1. ']
DEBUG - config.ConfigManager._triggerProfileExit (21:54:08.595) - MainThread (4360):
Deactivating triggered profile Say all
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.596) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ReviewRoutingMovesSystemCaretFlag, behaviorOfDefault: NEVER
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.596) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.597) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.598) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.599) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.600) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: BoolFlag, behaviorOfDefault: ENABLED
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.603) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: ParagraphNavigationFlag, behaviorOfDefault: APPLICATION
DEBUG - config.featureFlag._validateConfig_featureFlag (21:54:08.604) - MainThread (4360):
Validating feature flag: DEFAULT, optionsEnum: WindowsTerminalStrategyFlag, behaviorOfDefault: DIFFING
DEBUG - synthDriverHandler.SynthDriver.loadSettings (21:54:08.605) - MainThread (4360):
Loaded changed settings for SynthDriver oneCore
DEBUG - braille.BrailleHandler._switchDisplay (21:54:08.609) - MainThread (4360):
Reinitializing 'noBraille' braille display
DEBUG - autoSettingsUtils.autoSettings.AutoSettings._registerConfigSaveAction (21:54:08.610) - MainThread (4360):
registering pre_configSave action: <class 'brailleDisplayDrivers.noBraille.BrailleDisplayDriver'>
DEBUG - autoSettingsUtils.autoSettings.AutoSettings._loadSpecificSettings (21:54:08.623) - MainThread (4360):
loading braille noBraille
INFO - braille.BrailleHandler._setDisplay (21:54:08.623) - MainThread (4360):
Loaded braille display driver 'noBraille', current display has 0 cells.

System configuration

NVDA installed/portable/running from source:

NVDA installed.

NVDA version:

2023.3

Windows version:

Windows 11 23H2 (build SO 22631.2506)

Name and version of other software in use when reproducing the issue:

n/a

Other information about your system:

Other questions

Does the issue still occur after restarting your computer?

Yes.

Have you tried any other versions of NVDA? If so, please report their behaviors.

Yes, NVDA 2023.2 works correctly with the say all profile.

If NVDA add-ons are disabled, is your problem still occurring?

Yes.

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

Yes.

@seanbudd seanbudd added p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority feature/say-all triaged Has been triaged, issue is waiting for implementation. labels Nov 21, 2023
@seanbudd seanbudd added this to the 2024.1 milestone Nov 21, 2023
@Adriani90
Copy link
Collaborator

Adriani90 commented Nov 24, 2023

It seems it works after you press nvda+ctrl+c to save the configuration. I get following error written to the log when i do this:

IO - inputCore.InputManager.executeGesture (15:49:30.368) - winInputHook (14684):
Input: kb(laptop):NVDA+control+c
DEBUG - autoSettingsUtils.autoSettings.AutoSettings._saveSpecificSettings (15:49:30.369) - MainThread (6056):
Saved settings for NVDAHighlighterSettings
DEBUG - autoSettingsUtils.autoSettings.AutoSettings._saveSpecificSettings (15:49:30.369) - MainThread (6056):
Saved settings for ScreenCurtainSettings
DEBUG - fileUtils.FaultTolerantFile (15:49:30.370) - MainThread (6056):
C:\Users\adria\AppData\Roaming\nvda\nvda.iniqn8tlrrj.tmp
INFO - config.ConfigManager.save (15:49:30.377) - MainThread (6056):
Base configuration saved
DEBUG - fileUtils.FaultTolerantFile (15:49:30.377) - MainThread (6056):
C:\Users\adria\AppData\Roaming\nvda\profiles\Say all.ini412q20bs.tmp
INFO - config.ConfigManager.save (15:49:30.378) - MainThread (6056):
Saved configuration profile Say all
ERROR - unhandled exception (15:49:30.378) - MainThread (6056):
Traceback (most recent call last):
  File "wx\core.pyc", line 3427, in <lambda>
  File "gui\blockAction.pyc", line 72, in funcWrapper
  File "gui\__init__.pyc", line 205, in onSaveConfigurationCommand
  File "config\__init__.pyc", line 713, in save
KeyError: 'Sayall'

cc: @seanbudd, @CyrilleB79

@seanbudd
Copy link
Member

seanbudd commented Dec 8, 2023

I couldn't reproduce this with 2023.3.
Rather than copying and pasting a log snippet, could you please upload a full log file of the behaviour as a file? This will include your current config in full. Ensure your log level is set to debug in general preferences.

@seanbudd seanbudd added blocked/needs-info The issue can not be progressed until more information is provided. p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority and removed p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority labels Dec 8, 2023
@Carlos-EstebanM
Copy link
Author

Carlos-EstebanM commented Dec 8, 2023

Hi all.
I send the log file. Also, I decided to show the problem with a video recorded with OBS Studio, because it's strange that the log showes the second line but NVDA is not reading.
nvda.log

2023-12-08.01-01-37.mp4

@Adriani90
Copy link
Collaborator

nvda_say-all.txt

Here is the complete log file, it seems sometimes NVDA does not trigger the synth voice for the say all profile correctly. When I press f5, the page is loaded so NVDA should directly start to read with the onecore voice but instead it reads with the eSpeak voice. I don't know why the error does not occur everytime, but the settings for the synth are definitely not always triggered when triggering the say all profile automatically.
I had to turn the say all profile manually on and off and afterwards the automatic triggering worked as expected.

This issue does not occur everytime but you have to change the window back and forth. It seems it occurs more often when "volume of NVDA sounds follow voice volume" is enabled in audio settings category.

Since this setting is related to WASAPI, maybe @jcsteh has any idea as well.

@seanbudd
Copy link
Member

@Adriani90 I can reproduce the problem you describe of the synth not correctly switching, using the config from your log.

@Carlos-EstebanM - when using your config I can only reproduce Adriani's issue: that the profile doesn't switch correctly.
I still get say all occurring automatically, just with the wrong profile.
I noticed in your log that there is a freeze after activating the profile, which causes say all to be cancelled:

DEBUG - watchdog._waitUntilNormalCoreAliveTimeout (01:01:51.266) - watchdog (3960):
Potential freeze, waiting up to 10 seconds.
DEBUG - watchdog._waitUntilNormalCoreAliveTimeout (01:01:51.778) - watchdog (3960):
Recovered from potential freeze after 1.0116606000000008 seconds.
DEBUG - config.ConfigManager._triggerProfileExit (01:01:59.423) - MainThread (4736):
Deactivating triggered profile Say all

I also noticed a large number of add-ons in your log. Can you confirm that this can be reproduced with add-ons disabled?
Considering I cannot reproduce your issue with your config, my inclination is that an add-on is causing the freeze killing say all.

@seanbudd seanbudd removed this from the 2024.1 milestone Dec 19, 2023
@seanbudd
Copy link
Member

@Adriani90 - is the issue your describing a regression in 2023.3, or can it be reproduced in 2023.2?

@Carlos-EstebanM
Copy link
Author

@seanbud Yes, I can reproduce this with addons disabled. Also, I test now with a portable copy of NVDA 2024.1 beta1 created from the installer file, and this problem is present.
In case of the user guide, the log shows the heading table of contends, but I am not listening this heading, only the first heading of level one with the tytle of the document.
nvda 2024.1 beta1.log

@Adriani90
Copy link
Collaborator

@seanbudd don't know what happened but I cannot reproduce the issue with the wrong synth anymore in the last alpha. I will create a new one if I can reproduce reliably.

@Carlos-EstebanM I tested in more detail.
Did you make sure that you enabled the setting in the NVDA profile for the browser? I guess you are using Firefox?

So if you enabled the setting on the standard profile and the say all profile is triggered upon another profile (i.e. Firefox), you have to also enable the say all on page load for the Firefox profile.

So in conclusion it seems I cannot reproduce your issue as well when this setting is enabled for all my profiles.

@Adriani90
Copy link
Collaborator

@Carlos-EstebanM are you still having this issue in NVDA 2024.1 or NVDA 2024.2 Beta 1?

@seanbud
Copy link

seanbud commented May 18, 2024

@Carlos-EstebanM i believe you've tagged me, instead of @seanbudd, but good luck!

@Adriani90
Copy link
Collaborator

We didn't hear any update from the user upon request since almost one year, and I cannot reproduce this issue. I am closing as works for me. If you are still having this issue, please open a new one with updated steps to reproduce, or comment on this one and we can reopen.

@github-actions github-actions bot added this to the 2025.1 milestone Dec 12, 2024
@CyrilleB79
Copy link
Collaborator

I cannot reproduce with the exact steps in the initial description. But opening a webpage and pressing F5 to update the page, NVDA+upArrow to read current line and NVDA+downArrow for say all several times and in various order, I end up with an unexpected result such as:

  • say all uses normal profile instead of its dedicated one
  • or say all profile use when it should not, e.g. reading the current line

Note, I have done this tests starting from a brand new config, thus with "Allow skim reading in Say All" disabled.

Thus I'll reopen for investigation.

@CyrilleB79 CyrilleB79 reopened this Dec 13, 2024
@CyrilleB79 CyrilleB79 removed this from the 2025.1 milestone Dec 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked/needs-info The issue can not be progressed until more information is provided. bug/regression feature/say-all p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Projects
None yet
Development

No branches or pull requests

5 participants