<feed xmlns='http://www.w3.org/2005/Atom'>
<title>TaSTT.git/GUI, branch v0.12.0</title>
<subtitle>Free self-hosted STT for VRChat.</subtitle>
<id>https://git.yummers.dev/TaSTT.git/atom?h=v0.12.0</id>
<link rel='self' href='https://git.yummers.dev/TaSTT.git/atom?h=v0.12.0'/>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/'/>
<updated>2023-05-31T02:13:25+00:00</updated>
<entry>
<title>Finish translation for Western European language speakers</title>
<updated>2023-05-31T02:13:25+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-31T02:01:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=0bda49279ec80187d49a922ff2a47141ffb2fd8f'/>
<id>urn:sha1:0bda49279ec80187d49a922ff2a47141ffb2fd8f</id>
<content type='text'>
NLLB needs its input to be split up into sentences. I use the
sentence_splitter Python package to do this. It supports ~20 Western
European languages, but notably, no Asian languages.

* Sort spoken language list. English is still at the top.
* Remove 'Translation source' dropdown. Infer this from the spoken
  language.
* Add lang_compat.py to map language codes between the various libraries
  (whisper, nllb, sentence_splitter).
* Fix bug where old text would appear in textbox when you first bring it
  up.
</content>
</entry>
<entry>
<title>Add ability to translate into 200 languages</title>
<updated>2023-05-26T05:00:56+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-26T04:45:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=84f09e1fdf15644d1ea5f955889581932e4f6a8e'/>
<id>urn:sha1:84f09e1fdf15644d1ea5f955889581932e4f6a8e</id>
<content type='text'>
Use Meta's No Language Left Behind (NLLB) algorithm to provide
translation capabilities into 200 languages. Obviously most are very
untested.

This requires either 4.1 or 7.1 GB of RAM and significiantly increases
transcription latency.
</content>
</entry>
<entry>
<title>Add more text filters</title>
<updated>2023-05-25T06:07:07+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-25T06:07:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=eed2e8915d83796679c0b7a3ea9121d329ceddab'/>
<id>urn:sha1:eed2e8915d83796679c0b7a3ea9121d329ceddab</id>
<content type='text'>
Add 3 filters:
* Remove trailing period
* Convert to uppercase
* Convert to lowercase

All may be composed. Upper/lower just overwrite each other so just use
one.
</content>
</entry>
<entry>
<title>All transcription panel fields now persist across app restart</title>
<updated>2023-05-25T05:44:34+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-25T05:44:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=3dd5e839449f5056ca9493c0eab6a3e02fe1e86e'/>
<id>urn:sha1:3dd5e839449f5056ca9493c0eab6a3e02fe1e86e</id>
<content type='text'>
I forgor to put them into ApplyConfigToInputFields.

The reason this is necessary: we need to create the text field where we
log things before we can deserialize the config. To keep the code
structure "clean" I just wrote another function to apply the config
(ApplyConfigToInputFields). However I have to remember to update it when
I add new fields.
</content>
</entry>
<entry>
<title>Add UI toggle for uwu filter</title>
<updated>2023-05-25T05:34:55+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-25T05:34:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=ebab21e22dea7931a8a7db05ff26d60cec4f5b5b'/>
<id>urn:sha1:ebab21e22dea7931a8a7db05ff26d60cec4f5b5b</id>
<content type='text'>
UI now has a checkbox for the uwu filter. Does not materially affect
resource usage or latency when enabled.
</content>
</entry>
<entry>
<title>Begin work on uwu filter</title>
<updated>2023-05-25T01:39:27+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-25T01:39:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=156a592f35ced01008516e559b62db8829baa787'/>
<id>urn:sha1:156a592f35ced01008516e559b62db8829baa787</id>
<content type='text'>
Use UwwwuPP to translate your boring old speech into uwu-ified version.

Still need to add a UI toggle for this.
</content>
</entry>
<entry>
<title>Automatically set up virtual env</title>
<updated>2023-05-23T19:28:01+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-23T19:28:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=0f08da58a59a126f5307395e822fd140f15f8b36'/>
<id>urn:sha1:0f08da58a59a126f5307395e822fd140f15f8b36</id>
<content type='text'>
Remove the button. This is a big source of confusion for new users. Now
it happens automatically upon starting any task that needs it.

* Begin removing CPP implementation of Whisper. faster-whisper is a much
  easier/better solution.
* Flip default of `clear OSC configs` from false to true.
</content>
</entry>
<entry>
<title>Add keyboard toggle</title>
<updated>2023-05-22T11:04:09+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-22T10:59:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=8fafea9d026b2b65599456e70d3f5aa61ef073d1'/>
<id>urn:sha1:8fafea9d026b2b65599456e70d3f5aa61ef073d1</id>
<content type='text'>
Users can now configure a keybind to start/stop/dismiss the STT when in
desktop mode. The default keybind is ctrl+x, since by default VRC
doesn't use 'x' for anything.
</content>
</entry>
<entry>
<title>Enable selecting specific GPU when transcribing</title>
<updated>2023-05-22T04:27:50+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-05-22T04:27:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=2d544407e64bed9328ee493d3daa095b20445b52'/>
<id>urn:sha1:2d544407e64bed9328ee493d3daa095b20445b52</id>
<content type='text'>
Useful on devices with multiple GPUs, such as gaming laptops.

* Update GUI/README.md.
</content>
</entry>
<entry>
<title>Restore string matching, remove affinity mask</title>
<updated>2023-04-25T21:27:23+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2023-04-25T21:27:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=8534d17ab00de729867bb482ab204854127ed2a1'/>
<id>urn:sha1:8534d17ab00de729867bb482ab204854127ed2a1</id>
<content type='text'>
Affinity mask no longer affects performance. String matching is still
needed for temporal stability in fast-paced long-form transcription
tasks.
</content>
</entry>
</feed>
