diff --git a/tts/text/pipeline/english_pipeline_v1.py b/tts/text/pipeline/english_pipeline_v1.py index 1d4f1c1..dbf8967 100644 --- a/tts/text/pipeline/english_pipeline_v1.py +++ b/tts/text/pipeline/english_pipeline_v1.py @@ -1,13 +1,11 @@ from typing import List from tts.text.pipeline.base_pipeline import BasePipeline from tts.text.pipeline_components.input_parsing.parser import ArpabetSequence, GraphemeSequence, ParsedSequence, parse_grapheme_and_arpabet_sequence -from tts.text.pipeline_components.normalization.english_normalization import EnglishNormalization +from tts.text.pipeline_components.normalization.english_normalization import normalize_english from tts.text.pipeline_components.phonetization.cmudict import DEFAULT_CMUDICT_PATH, CMUDict from tts.text.pipeline_components.phonetization.english_phonetization import EnglishPhonetization from tts.text.pipeline_components.sequencing.english_symbols_v1 import SPACE_INTEGER_ENCODING, arpabet_to_sequence, symbols_to_sequence -_ENGLISH_NORMALIZER = EnglishNormalization() - _ENGLISH_DICTIONARY = CMUDict(DEFAULT_CMUDICT_PATH) _ENGLISH_PHONETIZER = EnglishPhonetization(_ENGLISH_DICTIONARY) @@ -27,7 +25,7 @@ class EnglishPipelineV1(BasePipeline): for i in range(len(parsed_sequence)): subsequence = parsed_sequence[i] if isinstance(subsequence, GraphemeSequence): - normalized = _ENGLISH_NORMALIZER.normalize(subsequence.sequence) + normalized = normalize_english(subsequence.sequence) parsed_sequence[i] = GraphemeSequence(normalized) diff --git a/tts/text/pipeline_components/normalization/base_normalization.py b/tts/text/pipeline_components/normalization/base_normalization.py deleted file mode 100644 index fbce993..0000000 --- a/tts/text/pipeline_components/normalization/base_normalization.py +++ /dev/null @@ -1,4 +0,0 @@ -class BaseNormalization: - - def normalize(self, raw_input_text: str) -> str: - return raw_input_text \ No newline at end of file diff --git a/tts/text/pipeline_components/normalization/english_normalization.py b/tts/text/pipeline_components/normalization/english_normalization.py index 0c97724..f79120e 100644 --- a/tts/text/pipeline_components/normalization/english_normalization.py +++ b/tts/text/pipeline_components/normalization/english_normalization.py @@ -1,17 +1,14 @@ -from tts.text.pipeline_components.normalization.base_normalization import BaseNormalization from tts.text.pipeline_components.normalization.common_cleaners import collapse_whitespace from tts.text.pipeline_components.normalization.common_cleaners import convert_to_ascii from tts.text.pipeline_components.normalization.common_cleaners import lowercase -class EnglishNormalization(BaseNormalization): +def normalize_english(raw_input_text: str) -> str: + text = convert_to_ascii(raw_input_text) + text = lowercase(text) - def normalize(self, raw_input_text: str) -> str: - text = convert_to_ascii(raw_input_text) - text = lowercase(text) + # TODO: Expand abbreviations + # TODO: Expand numbers - # TODO: Expand abbreviations - # TODO: Expand numbers + text = collapse_whitespace(text) - text = collapse_whitespace(text) - - return text + return text diff --git a/tts/text/pipeline_components/normalization/spanish_normalization.py b/tts/text/pipeline_components/normalization/spanish_normalization.py index 56d6712..5d6db2a 100644 --- a/tts/text/pipeline_components/normalization/spanish_normalization.py +++ b/tts/text/pipeline_components/normalization/spanish_normalization.py @@ -1,6 +1,14 @@ -from tts.text.pipeline_components.normalization.base_normalization import BaseNormalization +from tts.text.pipeline_components.normalization.common_cleaners import collapse_whitespace +from tts.text.pipeline_components.normalization.common_cleaners import convert_to_ascii +from tts.text.pipeline_components.normalization.common_cleaners import lowercase -class SpanishNormalization(BaseNormalization): +def normalize_spanish(raw_input_text: str) -> str: + text = convert_to_ascii(raw_input_text) + text = lowercase(text) - def normalize(self, raw_input_text: str) -> str: - return raw_input_text + # TODO: Expand abbreviations (Spanish) + # TODO: Expand numbers (Spanish) + + text = collapse_whitespace(text) + + return text diff --git a/tts/text/pipeline_components/normalization/test_english_normalization.py b/tts/text/pipeline_components/normalization/test_english_normalization.py index ecf0d7a..ada715e 100644 --- a/tts/text/pipeline_components/normalization/test_english_normalization.py +++ b/tts/text/pipeline_components/normalization/test_english_normalization.py @@ -1,13 +1,11 @@ -from tts.text.pipeline_components.normalization.english_normalization import EnglishNormalization +from tts.text.pipeline_components.normalization.english_normalization import normalize_english class TestEnglishNormalization: def test_whitespace_collapse(self): - normalizer = EnglishNormalization() - output = normalizer.normalize(" \t \n normalized \n \t ") + output = normalize_english(" \t \n normalized \n \t ") assert output == " normalized " def test_lowercase(self): - normalizer = EnglishNormalization() - output = normalizer.normalize("This is a test of Normalization.") + output = normalize_english("This is a test of Normalization.") assert output == "this is a test of normalization."