By Maarten Bennis, Bart Carels and Stijn Gooskens



To the next generation of computer users, the keyboard and mouse will probably look as ridiculous and obsolete as out-of-date accessories like a data-recorder and, as yet to a lesser extent, a floppy drive do to ours. That is because in a few years from now (the exact number is still heavily debated among computer theorists), we will be able to make our wishes known to the computer simply by pronouncing them. The future, in other words, is with speech-recognition. So although none of us had any prior experience with the subject, it seemed interesting to do something with it for our project, and see if we could integrate it with an already existing application.

The initial plan was to create a voice-controlled flying game. We would design an airplane and make it speech-controlled using SAPI, after which we would transfer it to a 3D-environment. The problem with that idea however, was that in a flying game you always have to deal with at least two types of commands: one for accelerating the flying device, and one for steering it into the desired direction. To have both commands handled by voice simultaneously, we figured, would be virtually impossible. The other option was to use a keyboard for the acceleration part and make just the steering voice-controlled. But in that case the thrill of being able to play a game with just a microphone would be gone.

So instead we decided to ‘vocalize’ not a flying game, but a game that virtually everybody knows: Tetris. In Tetris you have multiple commanding options as well, but they are all of the ‘steering’ type; because it is tumbling blocks that one controls, the ‘acceleration’ part is already taken care of by gravity. This makes the game perfectly fit for being 100% voice-controlled. Furthermore, although it is played by people allover the world, as far as we could find out no voice-controlled version of the game was yet available. So by creating it ourselves, we concluded, we would thereby greatly enhance the playability of the game for normal users, and even make it available for those who could not play it before due to some physical handicap.

The result of our endeavors is called VoiceTetris, and has been created using C++, openGL and SAPI. All commands that are possible in regular Tetris have been substituted by voice-commands. This means that the tumbling blocks can be moved left (“left!”) and right (“right!”), rotated (“up!”), and dropped all the way to the bottom (“down!”) using nothing more than a microphone. (More logical commands for the rotate-function such as “turn!” or “rotate!” were not well distinguished by SAPI, which is why we decided to use “up!” instead, which it recognizes almost flawlessly.) Furthermore, the game can be paused saying “stop!” – after all, Tetris can be quite an intense and demanding experience. We hope that it will be even more so in the future now that it has been updated using the technologies of today.


Our personal websites:

Maarten Bennis:

Bart Carels:

Contact us