Speech Recognition?
Moderator: ScummVM Team
-
- Posts: 5
- Joined: Tue Jan 07, 2014 7:18 pm
Speech Recognition?
Some older games had text-based interfaces. Would it be possible to use speech recognition with newer games too? Perhaps as a ScummVM add-on or feature?
Are there any speech recognition or standardized keyboard inputs/shortcuts for ScummVM or the supported games?
Are there any speech recognition or standardized keyboard inputs/shortcuts for ScummVM or the supported games?
To be honest, this has been on my personal task list for a while... With SDL providing sound capture function, we should be able to add a simple voice command backend to emulate keyboard and mouse control... maybe based on CVoiceControl: http://www.kiecza.net/daniel/linux/
Not sure how functional the result would be, but could be an interesting experiment for someone... or maybe as a future GSoC task.
Not sure how functional the result would be, but could be an interesting experiment for someone... or maybe as a future GSoC task.
https://arjo129.wordpress.com/experiments/%C2%B5speech/ could also provide a lightweight basis for a limited vocabulary command recogniser...
- icanntspell
- Posts: 95
- Joined: Mon May 18, 2009 12:14 pm
- Location: The Netherlands
- Contact:
Android seems to have something build in for this.
http://developer.android.com/reference/ ... nizer.html
It sounds like a nice idea, but I don't see myself playing LSL using this At least not in public
http://developer.android.com/reference/ ... nizer.html
It sounds like a nice idea, but I don't see myself playing LSL using this At least not in public
I was mainly going to try doing this for general code twiddling fun, but I wondered about the utility for profoundly physically disabled gamers ie. using a http://tetramouse.com/ say...
I was intending to allow "MOUSE-HOLD. UP. DOWN. LEFT. RIGHT. SMALL. CLICK. RIGHT-CLICK. DRAG. RELEASE. MOUSE-RELEASE." as a commandset for controlling mouse movement and control by a limited vocab recogniser and then keyboard control by "KEYBOARD-ON. KEYBOARD-OFF" and a more general purpose recogniser and/or a way of voice-typing.
I was intending to allow "MOUSE-HOLD. UP. DOWN. LEFT. RIGHT. SMALL. CLICK. RIGHT-CLICK. DRAG. RELEASE. MOUSE-RELEASE." as a commandset for controlling mouse movement and control by a limited vocab recogniser and then keyboard control by "KEYBOARD-ON. KEYBOARD-OFF" and a more general purpose recogniser and/or a way of voice-typing.
-
- Posts: 5
- Joined: Tue Jan 07, 2014 7:18 pm
It's possible to control the mouse with things like VoiceFinger or Windows Speech Recognition macros. Though, my experience is that doing so is quite slow. "A New Beginning" does have a very helpful keyboard shortcut to show all hotspots (space bar). When used with WSR or VF it's possible to play without very slowly scanning the screen hunting for hotspots.
Given the limited vocabulary necessary for most adventure games it seems possible to leverage Windows Speech Recogition (on Windows) or other speech engines since the verbs, hotspot names, and objects should be known to ScummVM. Perhaps there could be a module or plugin system to work with different speech systems.
Even just adding keyboard input or shortcuts for verbs and objects would be a big help. Those can often be spoken using WSR or SphinxKeys.
AbleGamers is an organization with some great guidelines for tips to improve accessibility.
Given the limited vocabulary necessary for most adventure games it seems possible to leverage Windows Speech Recogition (on Windows) or other speech engines since the verbs, hotspot names, and objects should be known to ScummVM. Perhaps there could be a module or plugin system to work with different speech systems.
Even just adding keyboard input or shortcuts for verbs and objects would be a big help. Those can often be spoken using WSR or SphinxKeys.
AbleGamers is an organization with some great guidelines for tips to improve accessibility.
- DrMcCoy
- ScummVM Developer
- Posts: 595
- Joined: Sat Dec 17, 2005 1:33 pm
- Location: Braunschweig, Germany
- Contact:
That's highly game/engine specific. Some engines do, some probably don't. And there's nothing in ScummVM to abstract that, to bind the hotspot concepts of different engine together and pass it somewhere.FlvZ2gWPdj9w71Fd97it wrote:since the verbs, hotspot names, and objects should be known to ScummVM
For example, for the gob games, ScummVM (or rather, the gob engine in ScummVM; the info doesn't get passed to any common code) only knows about general hotspots. When the mouse enters a hotspot, when it leaves a hotspot, or when a mouse button is clicked inside a hotspot, a script is triggered. Those scripts then do things like displaying the hotspot name. Opaquely, without the engine code knowing anything about that from a high-level perspective. The engine code doesn't know what those hotspot are, what they mean to the game.
Potentially, an engine could go even further: the scripts could just periodically query the current mouse position and state. Where the hotspots are could also be handled by the scripts. I don't know if any of our engines does that already, but it's certainly possible.
-
- Posts: 5
- Joined: Tue Jan 07, 2014 7:18 pm
Thanks for the quick reply. I didn't realize ScummVM had isolated engine code. Though, I don't think the problem is insurmountable. Creating such an abstraction to work with the most widely used engine would be my first step. Unfortunately my day job leaves my hands too tired to get into the source at this time.
Regardless, I look forward to whatever future accessibility improvements do get incorporated.
Regardless, I look forward to whatever future accessibility improvements do get incorporated.
-
- Got a warning
- Posts: 173
- Joined: Thu Feb 25, 2010 7:44 am
-
- Got a warning
- Posts: 173
- Joined: Thu Feb 25, 2010 7:44 am