Commit graph

139 commits

Author SHA1 Message Date
J. Nick Koston
0f29fd3e10
Switch to using fast cached_property implementation in propcache (#127339) 2024-10-03 13:11:02 -05:00
epenet
2699eb62bd
Rename DOMAIN_DATA HassKey constants to DATA_COMPONENT (#126746)
* Rename DOMAIN_DATA HassKey constant to DATA

* DATA -> DATA_COMPONENT
2024-09-25 15:53:58 +02:00
epenet
d40464e5d3
Use HassKey in tts (#126327)
* Use HassKey in tts

* Also migrate DATA_TTS_MANAGER
2024-09-21 13:14:27 +02:00
Michael Hansen
4ecc6555bf
Add support for sample bytes in preferred TTS format (#125235) 2024-09-04 13:42:41 -04:00
Erik Montnemery
ef1d53c207
Include engine name in TTS WS responses (#124683) 2024-08-27 11:14:41 +02:00
Erik Montnemery
715f4bd2c3
Set deprecated flag on TTS engines replaced by entities in WS list (#124676) 2024-08-27 10:09:49 +02:00
Paulus Schoutsen
156948c496
Fix defaults for cloud STT/TTS (#121229)
* Fix defaults for cloud STT/TTS

* Prefer entity over legacy provider

* Remove unrealistic tests

* Add tests which show cloud stt/tts entity is preferred

---------

Co-authored-by: Erik <erik@montnemery.com>
2024-08-26 19:39:09 +02:00
Sid
e2141dc208
Add _attr class attributes to TextToSpeechEntity (#115684) 2024-07-07 16:21:04 +02:00
epenet
960d1289ef
Avoid references to websocket_api.const in core and other components (#119285) 2024-06-10 13:49:44 +02:00
J. Nick Koston
ee535ee611
Ensure test async_create_task eager start behavior matches production (#115517) 2024-04-13 15:58:52 -05:00
Michael Hansen
6fafb9c9b4
Filter preferred TTS format options if not supported (#114392)
Filter preferred format options if not supported
2024-03-28 11:09:15 -05:00
J. Nick Koston
1697b116e4
Combine tts cache init executor jobs (#114271) 2024-03-26 23:58:46 -04:00
J. Nick Koston
8f33bad4ef
Move legacy tts setup to use tracked tasks (#113717)
* Move legacy tts setup to a tracked task

* comment

* fix test

* fix test

* fix more tests

* tweak
2024-03-18 13:11:22 +01:00
Sid
82a60fe8ad
Enable Ruff RSE (#113695) 2024-03-18 00:40:38 +01:00
Marc Mueller
062cc4bfce
Add empty line after module docstring [t-v] (#112705) 2024-03-08 10:35:23 -05:00
Erik Montnemery
84e74e4c74
Reverse component path (#104087)
* Reverse component path

* Update translations helper

* Fix

* Revert incorrect change of PLATFORM_FORMAT

* Fix use of PLATFORM_FORMAT in tts

* Fix ios
2023-12-05 08:43:58 +01:00
Michael Hansen
9c2febc72e
Small code clean up (#103603) 2023-11-07 20:52:58 +01:00
Michael Hansen
ae516ffbb5
Automatically convert TTS audio to MP3 on demand (#102814)
* Add ATTR_PREFERRED_FORMAT to TTS for auto-converting audio

* Move conversion into SpeechManager

* Handle None case for expected_extension

* Only use ATTR_AUDIO_OUTPUT

* Prefer MP3 in pipelines

* Automatically convert to mp3 on demand

* Add preferred audio format

* Break out preferred format

* Add ATTR_BLOCKING to allow async fetching

* Make a copy of supported options

* Fix MaryTTS tests

* Update ESPHome to use "wav" instead of "raw"

* Clean up tests, remove blocking

* Clean up rest of TTS tests

* Fix ESPHome tests

* More test coverage
2023-11-06 15:26:00 -05:00
Erik Montnemery
b254218dd6
Remove base_url configuration option from tts (#94905) 2023-06-21 11:20:33 +02:00
Erik Montnemery
334dacc322
Change Entity.name default to UNDEFINED (#94574)
* Change Entity.name default to UNDEFINED

* Update typing

* Update Pylint plugin

* Update TTS test
2023-06-15 11:09:53 +02:00
Erik Montnemery
30d9d7d905
Minor adjustment of tts typing (#93450) 2023-05-24 21:02:55 +02:00
Bram Kragten
75f8ea48f4
Add tts get engine ws command (#92336)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-11 10:51:00 +02:00
Michael Hansen
257944c3b7
Allow numbers in TTS engine part of cache key (#92031) 2023-04-26 00:33:45 -04:00
Erik Montnemery
8e70446ef8
Tweak a couple of stt and tts related asserts (#92012)
Tweak a couple of stt and tts related asserts
2023-04-25 11:50:37 -05:00
Erik Montnemery
792ea92e55
Remove fuzzy language matching from stt and tts (#92002)
* Remove fuzzy language matching from stt and tts

* Update tests
2023-04-25 17:54:42 +02:00
Erik Montnemery
1c3e1d2e13
Don't resolve default tts engine in assist pipelines (#91943)
* Don't resolve default tts engine in assist pipelines

* Set tts engine when creating default pipeline

* Update tests
2023-04-24 14:40:11 +02:00
Paulus Schoutsen
1eef4af493
Use configured voice in TTS output for assist pipeline (#91878) 2023-04-22 22:01:32 -04:00
Erik Montnemery
9a0de43f98
Add name to tts voices (#91814)
* Add name to tts voices

* Add new file
2023-04-21 20:41:14 -04:00
Martin Hjelmare
1a18dc7425
Add tts entity (#91692)
* Add tts entity

* Allow passing engine id to url view

* Update async_resolve_engine

* Add and update more tests

* Fix assist pipeline tests temporarily

* Move fixtures

* Update notify platform

* Complete legacy tests

* Update media source tests

* Update async_get_text_to_speech_languages

* Address comment

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-20 22:55:46 -04:00
Erik Montnemery
79de27a4a9
Include matching languages in WS tts/engine/list (#91732)
* Include matching languages in WS tts/engine/list

* Allow specifying country
2023-04-20 08:56:50 -04:00
Erik Montnemery
6d619579b4
Add WS API for listing languages supported by a full assist pipeline (#91669)
* Add WS API for listing languages supported by a full assist pipeline

* Address review comments, change logic
2023-04-20 08:55:17 -04:00
Erik Montnemery
f3e6d6dfc0
Add async_get_supported_voices to tts.Provider (#91649)
* Add async_get_supported_voices to tts.Provider

* Update WS API
2023-04-19 13:47:49 +02:00
Michael Hansen
f96515b90a
Use language util in stt/tts (#91521)
* Use language util in stt/tts

* Test language util in stt/tts

* Fix common in TTS

* Update snapshot
2023-04-17 23:23:43 -04:00
Erik Montnemery
e32dacc62d
Add WS API to tts (#91330)
* Add WS API to tts

* Use language util, change from entity_id to engine_id

* Fix rebase mistake
2023-04-17 22:52:19 +02:00
Martin Hjelmare
9bd12f6503
Move legacy tts (#91538)
* Move legacy tts

* Add error log on unknown platform

* Add legacy tests and delint all tests

* Consolidate log format

* Add more legacy tests

* Test default legacy provider attributes

* Remove test generated files

* Clean up after merge conflict
2023-04-17 13:01:50 -04:00
Erik Montnemery
b597415b01
Make it non-optional to implement supported_languages in tts.Provider (#91347) 2023-04-17 10:59:21 -04:00
epenet
c40836b49f
Fix lingering timers in tts (#90834)
* Fix lingering timers in tts

* Improve

* Use HassJob with cancel_on_shutdown
2023-04-13 15:27:13 +02:00
Paulus Schoutsen
86e9f6643f
Allow TTS requests to resolve in the background (#90944) 2023-04-06 10:42:55 -05:00
Paulus Schoutsen
8018be28ee
TTS: allow resolving engine and test supported options (#90539)
TTS: allow resolving engine
2023-03-31 13:34:42 -05:00
epenet
94a52d5cca
Adjust tts default_options type hints (#90053)
* Adjust tts default_options type hints

* Improve other components

* Adjust

* Revert component changes

* Adjust get_tts_audio in amazon_polly
2023-03-27 11:00:23 +02:00
Paulus Schoutsen
9b9ed21dc4
Update hass-nabucasa to 0.62.0 (#90085) 2023-03-22 13:24:28 +01:00
Franck Nijhof
9030ca05b1
Enable Ruff SIM118 (#87772) 2023-02-15 12:39:12 +01:00
Marc Mueller
6397138589
Update Optional typing (1) [Py310] (#86417)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-23 09:56:10 +01:00
Franck Nijhof
cf5fca0464
Code styling tweaks to core entity components (#85460) 2023-01-08 13:40:08 -10:00
Franck Nijhof
8819634b61
String formatting and max line length - Part 6 (#84525) 2022-12-24 13:19:51 +01:00
Erik Montnemery
ae2b2acab5
Fix grammar in tts service description (#81916) 2022-11-10 17:25:42 +01:00
Franck Nijhof
8bc9aa9ea4
Update mutagen to 1.46.0 (#80004)
* Update mutagen to 1.46.0

* Ignore untyped call
2022-10-11 20:49:58 +03:00
Paulus Schoutsen
697e7b3a20
TTS Cleanup and expose get audio (#79065) 2022-09-25 20:53:20 -04:00
epenet
55e59b778c
Add type hints to TTS provider (#78285)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2022-09-12 23:29:55 +02:00
epenet
5c8e8e4860
Use new media player enums (#78264) 2022-09-12 20:06:27 +02:00