mirror of
https://github.com/ankitects/anki.git
synced 2025-09-20 06:52:21 -04:00
Revert backwards incompatible changes to TTSVoice (#2378)
This commit is contained in:
parent
f02aac5818
commit
eec8f9970a
1 changed files with 7 additions and 9 deletions
|
@ -52,7 +52,6 @@ from aqt.utils import tooltip, tr
|
||||||
class TTSVoice:
|
class TTSVoice:
|
||||||
name: str
|
name: str
|
||||||
lang: str
|
lang: str
|
||||||
available: bool | None
|
|
||||||
|
|
||||||
def __str__(self) -> str:
|
def __str__(self) -> str:
|
||||||
out = f"{{{{tts {self.lang} voices={self.name}}}}}"
|
out = f"{{{{tts {self.lang} voices={self.name}}}}}"
|
||||||
|
@ -61,7 +60,7 @@ class TTSVoice:
|
||||||
return out
|
return out
|
||||||
|
|
||||||
def unavailable(self) -> bool:
|
def unavailable(self) -> bool:
|
||||||
return self.available is False
|
return False
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass
|
||||||
|
@ -213,9 +212,7 @@ class MacTTSPlayer(TTSProcessPlayer):
|
||||||
|
|
||||||
original_name = m.group(1).strip()
|
original_name = m.group(1).strip()
|
||||||
tidy_name = f"Apple_{original_name.replace(' ', '_')}"
|
tidy_name = f"Apple_{original_name.replace(' ', '_')}"
|
||||||
return MacVoice(
|
return MacVoice(name=tidy_name, original_name=original_name, lang=m.group(2))
|
||||||
name=tidy_name, original_name=original_name, lang=m.group(2), available=None
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
class MacTTSFilePlayer(MacTTSPlayer):
|
class MacTTSFilePlayer(MacTTSPlayer):
|
||||||
|
@ -519,10 +516,7 @@ if is_win:
|
||||||
# some voices may not have a name
|
# some voices may not have a name
|
||||||
name = "unknown"
|
name = "unknown"
|
||||||
name = self._tidy_name(name)
|
name = self._tidy_name(name)
|
||||||
return [
|
return [WindowsVoice(name=name, lang=lang, handle=voice) for lang in langs]
|
||||||
WindowsVoice(name=name, lang=lang, handle=voice, available=None)
|
|
||||||
for lang in langs
|
|
||||||
]
|
|
||||||
|
|
||||||
def _play(self, tag: AVTag) -> None:
|
def _play(self, tag: AVTag) -> None:
|
||||||
assert isinstance(tag, TTSTag)
|
assert isinstance(tag, TTSTag)
|
||||||
|
@ -560,6 +554,10 @@ if is_win:
|
||||||
@dataclass
|
@dataclass
|
||||||
class WindowsRTVoice(TTSVoice):
|
class WindowsRTVoice(TTSVoice):
|
||||||
id: str
|
id: str
|
||||||
|
available: bool | None = None
|
||||||
|
|
||||||
|
def unavailable(self) -> bool:
|
||||||
|
return self.available is False
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def from_backend_voice(cls, voice: BackendVoice) -> WindowsRTVoice:
|
def from_backend_voice(cls, voice: BackendVoice) -> WindowsRTVoice:
|
||||||
|
|
Loading…
Reference in a new issue