Archives 2014

Seem to need hidden-markov-models for text extraction...

So in order to "seed" listener with text-as-it-would-be-spoken for coding, I've built up a tokenizer that will parse through a file and attempt to produce a model of what would have been said to dictate that text. The idea being that we want to generate a few hundred megabytes of sample statements that can then ...

Continue reading

Project-to-language model almost working

So at this point Listener can generate a language model from a (Python) project and the dictation results from that are reasonable, but by no means perfect, still, you can dictate text as long as you stick to the words and statements already used in the project.  There are some obvious reworks now showing up: ...

Continue reading

Automatic Language Model Creation Started

Since the point of Listener is to allow for coding, the language model needs to reflect how one would dictate code. Further, to get reasonable accuracy I'm hoping to tightly focus the language models so that your language model for project X reflects the identifiers (and operators, etc) you are using in that project. To ...

Continue reading

Create your own virtual keyboard with Python

So at some point I need the voice dictation client to be able to do basic interactions with applications on the desktop (think typing text and the like). So how do I go about doing that? I want to be compatible with Wayland when it shows up, but still work on X (since that's where ...

Continue reading

Listener is Crawling Forward

I spent the day working on Listener. The bulk of the work was just cleanup, getting TODO items set up, fixing the setup script, etc. The actual task of voice dictation didn't get moved very far (I got a trivial "correct that") event working, but it doesn't actually make anything happen.

I also started ...

Continue reading

GStreamer Level Plugin Monitoring

So you have an audio stream where you'd like to get a human-friendly readout of the current audio level. You add a level component, but how do you actually get the level messages it generates?

            bus.add_signal_watch()
            bus.connect( 'message', self.on_level )

It really seems that you *should* be able to use element.connect(), but there doesn't seem ...

Continue reading

wx in a VirtualEnv (for RunSnakeRun)

Since I got asked about this in email I'll post it here for the google-verse. Say you want to allow your developers to use RunSnakeRun running in a virtualenv on an Ubuntu distribution.  You'll recall that normally to run RSR as a utility you do:

$ sudo apt-get install python-wxgtk2.8
$ pip install --user SquareMap ...

Continue reading

Nginx Reverse Proxy with Authentication

So you have an internal device the web-gui of which you want authenticated users to be able to access.  You've got nginx running on the front-end server. You're willing to open up a port on the outside firewall, but all access on that port needs to go through your main web-app's permissions. You setup an ...

Continue reading

RunSnakeRun/Squaremap with wxPython 3.0.0

There is a very minor new release on PyPi to allow Squaremap (and thus RunSnakeRun) to run on wxPython 3.0.0. The only people likely to be affected are those on bleeding-edge distros (Gentoo, Arch) or Windows.  You should be able to

pip install --update SquareMap

To get the latest version. Thanks to Kristof for the ...

Continue reading

PyOpenGL 3.1.0 final is out

After far too long, and way more changes than originally intended, PyOpenGL 3.1.0 final is now out. The big changes are:

  • Generation of wrappers is substantially more automatic and based on Khronos source-files with annotations from the Chromium/regal project
  • Common code-base for Python 2.6, 2.7, 3.3 and 3.4, Python 2.5 is no longer supported, 2to3 ...
  • Continue reading

    Monthly archives

    Previous year

    2013

    Next year

    2015