|
18 | 18 | import speechDictHandler |
19 | 19 | import extensionPoints |
20 | 20 | import synthDrivers |
| 21 | +from synthDrivers.silence import SynthDriver as SilenceSynthDriver |
21 | 22 | import driverHandler |
22 | 23 | from autoSettingsUtils.driverSetting import BooleanDriverSetting, DriverSetting, NumericDriverSetting |
23 | 24 | from autoSettingsUtils.utils import StringParameterInfo |
@@ -409,7 +410,7 @@ def getSynthList(): |
409 | 410 | continue |
410 | 411 | try: |
411 | 412 | if synth.check(): |
412 | | - if synth.name == "silence": |
| 413 | + if synth.name == SilenceSynthDriver.name: |
413 | 414 | lastSynth = (synth.name, synth.description) |
414 | 415 | else: |
415 | 416 | synthList.append((synth.name, synth.description)) |
@@ -475,14 +476,15 @@ def setSynth(name: Optional[str], isFallback: bool = False): |
475 | 476 | synthChanged.notify(synth=_curSynth, audioOutputDevice=_audioOutputDevice, isFallback=isFallback) |
476 | 477 | return True |
477 | 478 | # As there was an error loading this synth: |
478 | | - elif prevSynthName: |
| 479 | + elif prevSynthName and not prevSynthName == SilenceSynthDriver.name: |
| 480 | + # Don't fall back to silence if speech is expected |
479 | 481 | log.info(f"Falling back to previous synthDriver {prevSynthName}") |
480 | 482 | # There was a previous synthesizer, so switch back to that one. |
481 | 483 | setSynth(prevSynthName, isFallback=True) |
482 | 484 | else: |
483 | 485 | # There was no previous synth, so fallback to the next available default synthesizer |
484 | 486 | # that has not been tried yet. |
485 | | - log.info(f"Searching for next synthDriver") |
| 487 | + log.info("Searching for next synthDriver") |
486 | 488 | findAndSetNextSynth(name) |
487 | 489 | return False |
488 | 490 |
|
|
0 commit comments