Comments (8)
Приветствую!
Периодически(!) возникает проблема парсинга SSML.
Причем возникает без какой-либо закономерности.Exception in ASGI application Traceback (most recent call last): File "/usr/local/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 407, in run_asgi result = await app( # type: ignore[func-returns-value] File "/usr/local/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 78, in __call__ return await self.app(scope, receive, send) File "/usr/local/lib/python3.10/site-packages/uvicorn/middleware/message_logger.py", line 86, in __call__ raise exc from None File "/usr/local/lib/python3.10/site-packages/uvicorn/middleware/message_logger.py", line 82, in __call__ await self.app(scope, inner_receive, inner_send) File "/usr/local/lib/python3.10/site-packages/fastapi/applications.py", line 270, in __call__ await super().__call__(scope, receive, send) File "/usr/local/lib/python3.10/site-packages/starlette/applications.py", line 124, in __call__ await self.middleware_stack(scope, receive, send) File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 184, in __call__ raise exc File "/usr/local/lib/python3.10/site-packages/starlette/middleware/errors.py", line 162, in __call__ await self.app(scope, receive, _send) File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 79, in __call__ raise exc File "/usr/local/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 68, in __call__ await self.app(scope, receive, sender) File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in __call__ raise e File "/usr/local/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__ await self.app(scope, receive, send) File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 706, in __call__ await route.handle(scope, receive, send) File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 276, in handle await self.app(scope, receive, send) File "/usr/local/lib/python3.10/site-packages/starlette/routing.py", line 66, in app response = await func(request) File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 235, in app raw_response = await run_endpoint_function( File "/usr/local/lib/python3.10/site-packages/fastapi/routing.py", line 161, in run_endpoint_function return await dependant.call(**values) File "/usr/app/app/handlers.py", line 44, in process audio_file = get_tts_file(text, speaker, settings.sample_rate, sox_params=settings.sox_param) File "/usr/app/app/tts.py", line 41, in get_tts_file model.save_wav(ssml_text=text, speaker=speaker, audio_path=temp_file_path, sample_rate=sample_rate) File "<torch_package_0>.multi_acc_v3_package.py", line 366, in save_wav audio = self.apply_tts(text=text, File "<torch_package_0>.multi_acc_v3_package.py", line 316, in apply_tts sentences, clean_sentences, break_lens, prosody_rates, prosody_pitches, sp_ids = self.prepare_tts_model_input(input_text, File "<torch_package_0>.multi_acc_v3_package.py", line 61, in prepare_tts_model_input clean_text_list = self.process_ssml(text) File "<torch_package_0>.multi_acc_v3_package.py", line 113, in process_ssml raise ValueError(f"Failed to parse SSML: {e}") ValueError: Failed to parse SSML: invalid literal for int() with base 10: 'двадцать0' Start text processing: <speak>Текущее время двадцать часов <break time='100ms'/> двадцать одна минута <break time='двадцать0ms'/></speak>
Изначально - <break time='200ms'/>
Думал, что HA чудит, перепробовал многие варианты кавычек и экранирования. Но закономерности так и не уловил.
А что там на вход попадает ?
from silero-tts-service.
<speak>Текущее время двадцать часов <break time='100ms'/> двадцать одна минута <break time='200ms'/></speak>
<break time='200ms'/>
превращаются в <break time='двадцать0ms'/>
from silero-tts-service.
<speak>Текущее время двадцать часов <break time='100ms'/> двадцать одна минута <break time='200ms'/></speak>
<break time='200ms'/>
превращаются в<break time='двадцать0ms'/>
Вы с HA передаёте текст в теге <speak></speak>
?
from silero-tts-service.
Нет, конечно. Простите. Ошибся
Текущее время двадцать часов <break time='100ms'/> двадцать одна минута <break time='200ms'/>
Вот лог Rhysspy
rhasspytts_cli_hermes: ['bash', '-c', ' curl -sS -X GET -G --output - --data-urlencode INPUT_TYPE=TEXT --data-urlencode OUTPUT_TYPE=AUDIO --data-urlencode AUDIO=WAVE --data-urlencode LOCALE= --data-urlencode INPUT_TEXT="$0" http://192.168.1.210:9898/process --data-urlencode VOICE=baya', "Текущее время 20 <d>час</d> <break time='100ms'/> 21 <d>минута</d> <break time='200ms'/>"]
from silero-tts-service.
Нет, конечно. Простите. Ошибся
Текущее время двадцать часов <break time='100ms'/> двадцать одна минута <break time='200ms'/>
Вот лог Rhysspy
rhasspytts_cli_hermes: ['bash', '-c', ' curl -sS -X GET -G --output - --data-urlencode INPUT_TYPE=TEXT --data-urlencode OUTPUT_TYPE=AUDIO --data-urlencode AUDIO=WAVE --data-urlencode LOCALE= --data-urlencode INPUT_TEXT="$0" http://192.168.1.210:9898/process --data-urlencode VOICE=baya', "Текущее время 20 <d>час</d> <break time='100ms'/> 21 <d>минута</d> <break time='200ms'/>"]
Я сейчас закончу работу над системой авто обновления и перейду к решению этой проблемы. Я догадываюсь от куда ноги растут у проблемы.
from silero-tts-service.
Ok.
Если найду закономерность, то сообщу.
from silero-tts-service.
Ok.
Если найду закономерность, то сообщу.
Причину ошибки я уже нашел. Буду теперь её решать.
from silero-tts-service.
Текущее время 20 час 21 минута
Всё ошибка исправлена.
from silero-tts-service.
Related Issues (18)
- Thanks! HOT 3
- Выводить данные о скачивание и установки зависимостей в лог докера HOT 13
- Использование памяти HOT 23
- Инструкция: Как вывести звук на bluetooth колонку? HOT 2
- HA assist HOT 4
- У меня было 15 <d>яблоко</d> HOT 6
- Добавить управление громкостью HOT 1
- Голос valeria не работает на ru языке HOT 1
- Start with CUDA HOT 7
- Расширить до мультивойса ? HOT 1
- Не видит пути при запуске через вирт. окружение venv\conda python. HOT 1
- Обновить образ HOT 2
- Проблема со стартом образа HOT 6
- Could not initialize NNPACK! HOT 3
- Согласование склонений HOT 3
- .HA_FIX contains true HOT 9
- SAMPLE_RATE: 16000 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from silero-tts-service.