<feed xmlns='http://www.w3.org/2005/Atom'>
<title>TaSTT.git/osc_ctrl.py, branch master</title>
<subtitle>Free self-hosted STT for VRChat.</subtitle>
<id>https://git.yummers.dev/TaSTT.git/atom?h=master</id>
<link rel='self' href='https://git.yummers.dev/TaSTT.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/'/>
<updated>2022-12-18T01:51:12+00:00</updated>
<entry>
<title>Finish python virtual env</title>
<updated>2022-12-18T01:51:12+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-12-18T01:51:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=ee8213d1d2c2008d2d996929500c9e87dac325a3'/>
<id>urn:sha1:ee8213d1d2c2008d2d996929500c9e87dac325a3</id>
<content type='text'>
GUI can now download all TaSTT dependencies and install them into a
virtual environment.

* Add buttons to check embedded python version &amp; install dependencies
* Add class to wrap interacting with embedded Python
* Put all TaSTT python scripts into a folder
</content>
</entry>
<entry>
<title>Add emotes</title>
<updated>2022-11-27T01:13:36+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-27T01:08:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=480463b0578407a8f5a6585eb7018933e6ec7186'/>
<id>urn:sha1:480463b0578407a8f5a6585eb7018933e6ec7186</id>
<content type='text'>
Add emotes.py. It accepts a list of images and creates a texture with 64 total
embedded images.

The shader knows how to draw these into fixed 6-character-wide slots. Each slot
must be aligned to a 6-character boundary. osc_ctrl has to pad with spaces
to make this work.

This whole patch is a little more complicated than it has any right to be, but
my brain feels fuzzy and I don't know where to start fixing it, so I'm going to
leave it shitty-but-functional for now.

There's also some bug where writing a character into the 11th slot causes it to
show up at the end of the board. I'll figure that out later, idk.

I didn't include any of the emotes I use since I couldn't find any info on
their licenses. I'm just banking on having a good workflow later on so
people can add their own.
</content>
</entry>
<entry>
<title>Tweak speech indicator</title>
<updated>2022-11-23T20:25:05+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-23T20:24:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=ae9ac5ba5942447f47d8d996d2d340381e730c33'/>
<id>urn:sha1:ae9ac5ba5942447f47d8d996d2d340381e730c33</id>
<content type='text'>
Use a single indicator with 3 states:
  1. green: actively speaking
  2. orange: waiting for paging
  3. red: up-to-date

Use slightly nicer colors.
</content>
</entry>
<entry>
<title>Shorten audio window to 10 seconds</title>
<updated>2022-11-23T03:01:01+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-23T03:01:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=9f87674d1b484a2e61e87ad53d8ebcf9985dce6b'/>
<id>urn:sha1:9f87674d1b484a2e61e87ad53d8ebcf9985dce6b</id>
<content type='text'>
This helps with temporal stability in long-running transcriptions, and
lets us get rid of that hack where we refuse to update old pages.
</content>
</entry>
<entry>
<title>Rework input controls</title>
<updated>2022-11-23T02:13:18+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-22T23:36:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=bd8b63a357bb374f5875f0fedf2d677589419810'/>
<id>urn:sha1:bd8b63a357bb374f5875f0fedf2d677589419810</id>
<content type='text'>
Press joystick once to start recording, again to stop. When you start
recording, any previous text on the board is cleared.

Add 2 visual indicators: one to indicate speech, another to indicate
that audio is paging.
</content>
</entry>
<entry>
<title>Fix reset button</title>
<updated>2022-11-12T23:02:34+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-12T23:02:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=9921697816c9f9473bac54444793f702e54d24a6'/>
<id>urn:sha1:9921697816c9f9473bac54444793f702e54d24a6</id>
<content type='text'>
Board would lock up if you reset after the first page. osc_ctrl.clear()
was assigning the wrong member :)

Tweak continuous transcription logic: now we only commit if the
transcription remains identical for N seconds.
</content>
</entry>
<entry>
<title>Clicking the left joystick resets the board.</title>
<updated>2022-11-12T22:14:49+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-12T22:14:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=3b038d23ec7621e0164c1901b416bf77a27d8cf3'/>
<id>urn:sha1:3b038d23ec7621e0164c1901b416bf77a27d8cf3</id>
<content type='text'>
* Increase no speech probability threshold. This is what was preventing
  short transcriptions from working. We rely more on the avg logprob
  filter now.
* Remove string matching logic from transcribe. Now when we get 2
  consecutive identical transcriptions, we commit the transcription.
  This *could* cause words to get cut off but in practice it doesn't seem to
  happen.
* Fix steamvr joystick click detection. Moving the joystick would also
  fire the event, which is not correct.
* Combine locks in transcribe.py.
* Remove "clear" vocal control.
* osc_ctrl.clear() resets last_message_encoded
* Remove osc_ctrl.sendMessage (unused)
</content>
</entry>
<entry>
<title>License scrub</title>
<updated>2022-11-11T05:21:07+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-11T05:21:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=772b44806a5f5da11cca74c99b59c3cf7d5ceae5'/>
<id>urn:sha1:772b44806a5f5da11cca74c99b59c3cf7d5ceae5</id>
<content type='text'>
Begin auditing dependencies' licenses.
</content>
</entry>
<entry>
<title>Fix osc_ctrl diffing</title>
<updated>2022-11-08T01:39:19+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-08T01:39:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=0769b77e94b1069d07e6c2691e60348135ff5e97'/>
<id>urn:sha1:0769b77e94b1069d07e6c2691e60348135ff5e97</id>
<content type='text'>
Now we actually maintain an ongoing buffer with what we think is on the
display. When we send a new cell, we update only that cell instead of
overwriting the entire prefix up to that cell.
</content>
</entry>
<entry>
<title>Update README</title>
<updated>2022-11-07T05:22:54+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2022-11-07T05:22:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/TaSTT.git/commit/?id=629c0f611de1622131bb0fa364c170219f6252ed'/>
<id>urn:sha1:629c0f611de1622131bb0fa364c170219f6252ed</id>
<content type='text'>
</content>
</entry>
</feed>
