Wednesday, November 8, 2006

Voice controlled music players

Lately I've been contemplating how to voice control our audio players. The VR part will be HAL. The link from HAL will be scripts that issue xPL commands to the Rio Receivers and SliMP3s/Squeezebox. I will write a script to build the voice commands for playlists/artists/etc, but I have two options to use. I can build them into HAL tasks using my scripts, or build the commands into Tell Me, a HALi app. I think it might be easier to build and update the Tell Me database, but I'm not sure how stable the app is.

One of the problems I'm grappling with will be the size of the command database. I won't be voice activating every artist/album/track/playlist/genre, just the ones we use the most. With 7 players, we have 7 zones and I can easily see the number of voice commands exploding ("Play Metallica in the garage", "Play Metallica in the family room", etc). If I have 1000 playlists/albums/artists then there would be 7000 recognition phrases, but this would be the easiest to generate and requires no logic at all. Which would make it perfect to put in Tell Me, but would it bog down with that many commands?

Or, I can create some tasks to set a zone ("Set zone to garage", etc.) and then issue the play command ("Play Angels & Airwaves"). Then, I'd have 7 zone commands and 1000 playlist/album/artist commands. That's a lot less, but I'd need to keep track of the zone for the subsequent play command. That seems like it would be better suited for HAL since Tell Me can't access variables, and the zone would probably be stored in a variable. However, HAL cannot issue shell commands with variables as parameters, so I would need to link to starCOM via HALi and have sC issue the commands to the music players.

Decisions, decisions... I need to spend some time experimenting with Tell Me.

No comments:

Post a Comment