PDA

View Full Version : looking for voice contol mp3 solution for blind friend



NeedHelp
May 2nd, 2005, 10:53 AM
Hi, I'm new and know nothing about anything. :D

I am looking to convert my friends cd collection to mp3 and then give him a way to voice activate.

i.e. "Play 1985"
"Play U2"
"Play Jazz"
"Play List 9"
etc

I read an old forum thread talking about this but it ended nowhere.

Can anyone tell me the best solution? I think it's fine to have partial control of the system via remote control.... like click the button to pause the music and activate the voice listener, then give the new voice command.... along with volume up, down, skip.

Thanks

birty
May 2nd, 2005, 01:35 PM
there is a speech plugin which you should be able to use to get events into girder, you can then pass these events on to a mediaplayer of your choice

NeedHelp
May 2nd, 2005, 04:16 PM
Based on this post

http://www.promixis.com/phpBB2/viewtopic.php?t=6995&highlight=blind

It seems there is a lot more to it than just the speech plugin....

Will the speech plugin do what I described? Do I have to write a program to make it do it?

Thanks

birty
May 3rd, 2005, 12:43 AM
there will still be some work to do to control the media player but it is definately possible, i would suggest getting the speech plugin working first

Treetop
May 3rd, 2005, 01:56 AM
Whoa... that thread brings back memories :)

While its true... the plug-in itself does need some modification (ie.. TopLevel Grammar to the wayside), the main problems found in that thread were due to its nature... huge mp3 database, noisy environment, type of microphone, etc...

The main hurdle.... writing a VB/LUA/etc script that will crawl through a folder (and sub-folders) and place all the song titles into the GirderSpeech.xml file format. Note: The plug-in is the short stop in this field as it only supports top-level grammar.

After that... its all up to the VR engine itself...

There are so many variables, and VR just isnt there...yet, it can be done.

What software? What hardware? Playlists vs. Specific songs. .... Size of collection?

It'd be much easier to setup playlists... say by genre (Artist, etc), and just use the word "next" if you wanted to skip a song (within that playlist)...
So, your friend says "Jazz", and a playlist of 250 songs begins (shuffle mode, of course)... if he doesnt like a particular song... "Next!"

Of course, controlling the media player is the easy part..... its handling the media itself that gets tricky.

VR is a great tool, and will one day be the way everyone communicates with computers/robots... but today is not that day. Doable..YES! On the cheap... not so much

There are so many things that go into creating a "workable" VR system. Its not all about software, in fact, most of it has to do with the hardware.

The PZM (http://www.automatedoutlet.com/product.php?productid=380&cat=68&page=1) microphone is a nice wall mounted unit. Bluetooth headsets (or Badges (http://www.cocoontech.com/index.php?showtopic=1634&st=0&#entry11344)) are another route.

A good microphone (whether it be whole room array, or a headset) is the first thing to figure out (depending on budget). Then you will need to decide if the mics will be multi-room (zoned or not). Next, Music software. This list goes on...

One last thing to consider is feedback: What "voices" you will want to respond to you.. Since your friend is blind, verbal feedback is a huge plus. The free and generic voices are alright if your on a tight budget, but MUCH better voices are available.

There are so many different ways to approach this. Your friend should really sit down with Custom installer/designer and figure out what he needs/wants with regards to VR and playback (multizone). Music selection is not that in depth in terms of all the other things he could do with VR, but as stated earlier... the tech is not all thats its cracked up to be... yet. But, the hardware will make a huge difference.

Good Luck. I wish you and your friend well.

Treetop

NeedHelp
May 3rd, 2005, 04:53 AM
:o

Ok, great info, but lets take a step back...

What's the easiest thing we can do to make the system minimally usable by a blind person?

He currently has a 200 cd changer and no way to tell what number it's on or anything. He finds cds by trial and error - but they are somewhat grouped into sections, and has a good memory for what comes after what.

Can we start with something easy and then gradually work our way up to where we are writing programs? Where do we start?

Thanks

NeedHelp
May 3rd, 2005, 06:42 AM
another question...

How do we find a custom installer designer who might put together a deluxe solution for us? I'm pretty sure the guys at best buy aren't up to the challenge. :lol:

father of monstermagnet
May 3rd, 2005, 09:51 AM
It's not perfect but if you use "good" folder names this is better than using the speech plugin. (less resources and no event learning).

Install MSAgent

If you need more options i'm shure Mike C or Mark can help you...

Tested with 400 Albums at 50:50 matching.

BTW: There's a windows mediaplayer addon for pocket pc and maybe also for the XP tablet edition.


--Speech recognition using msagent by FOMM
--requires LuaWindowsFunctions Plugin
--Sort your musicfolder like D:\\MP 3\\AC-DC Flick of the switch, D:\\MP 3\\AC-DC Highway to hell ...
--Don't use brackets or other special characters in foldernames
--Speak fast if folder name contains spaces
--Say:Goodby Genie kills the object

WINAMP = ("C:\\Progra~1\\Winamp\\winamp.exe")
MUSICFOLDER = ("D:\\MP 3")

if not luacom then
UnloadLuaCom ()
end
LoadLuaCom ()

MyAgentEvents = {}

function
MyAgentEvents:Command (UserInput)
--MyAgent.Characters("Genie"):Speak ("Did you say: "..UserInput.Name)
ShellExecuteEx (WINAMP,'"'..MUSICFOLDER..[[\]]..UserInput.Name..'"',2)
if (UserInput.Name == "Goodby Genie") then
MyAgent.Characters:Unload "Genie"
MyAgent = nil
playlist = nil
MUSICFOLDER = nil
WINAMP = nil
collectgarbage ()
end
end

function MyAgentInitialize ()
if not MyAgent then
MyAgent = luacom.CreateObject ("Agent.Control")
luacom_Connect(MyAgent,MyAgentEvents)
MyAgent.Connected = 1
MyAgent.Characters:Load ("Genie","Genie.acs")
MyAgent.Characters("Genie").LanguageID = ("&H0409")
end
end

function MyAgentAppear ()
MyAgent.Characters("Genie"):Show ()
MyAgent.Characters("Genie"):Speak ("Hello")
end

function ScanFolder ()
local infolder = (MUSICFOLDER.."\\*.*")
playlist = {}
local ret, handle, fd = FindFirstFile(infolder)
if (ret >= 0) then
repeat
if ((fd.Filename ~= ".") and (fd.Filename ~= "..") and (fd.FileAttributes == bor (fd.FileAttributes,16))) then
tinsert(playlist, fd.Filename)
end
ret, fd = FindNextFile(handle)
until (ret == 0)
end
FindClose(handle)
sort (playlist)
end

function MyAgentCommands ()
MyAgent.Characters("Genie").Commands:Add ("Goodby Genie", "Goodby Genie", "Goodby Genie", 1, 1)
for i = 1, getn (playlist) do
MyAgent.Characters("Genie").Commands:Add (playlist[i],playlist[i],playlist[i], 1, 1)
end
end

MyAgentInitialize ()
MyAgentAppear ()
ScanFolder ()
MyAgentCommands ()

Treetop
May 3rd, 2005, 12:07 PM
He currently has a 200 cd changer

Does it have a serial port? What make/model?

NeedHelp
May 3rd, 2005, 05:11 PM
It's a Sony, few years old... plays cdr's...

He has it hooked up to little bose speakers and I think its going thru the computer too... so maybe it does have some kind of port

jwilson56
May 3rd, 2005, 05:30 PM
Might be best to rip all 200 CD's to the hard drive and use JRMC so he can have playlists with any song and not have to wait for the CD changing.

John

NeedHelp
May 3rd, 2005, 05:35 PM
JRMC?

Please assume that I know nothing.

Yes, we are looking to convert to mp3 both for finding stuff and because he has too many CD's for the machine.

NeedHelp
May 4th, 2005, 07:31 AM
ok I searched and found JRMC = J. River Media Center

I need something that will talk at least, even if it won't accept voice commands.

NeedHelp
May 4th, 2005, 01:08 PM
:o

jsl
May 4th, 2005, 02:10 PM
I haven't played around with this much, but here is another option to consider:
http://www.microsoft.com/windowsxp/using/windowsmediaplayer/expert/bridgman_november19.mspx
About halfway down the page it talks about Voice Command. I tried to use it with Windows Media Center with limited success, but using it directly with Media Player may work better.

You could combine it with Girder and a remote control to activate/deactivate it depending on his needs.

Good luck,
John

Treetop
May 4th, 2005, 02:42 PM
I need something that will talk at least

DVDSpy and the Say plug-in may be one approach.

In the Say plug-in Phrase box, put something like [title]. You can use the Say plug-in along with payloads [pld1] to have the puter say anything you might want it to.

Rob H
May 4th, 2005, 03:32 PM
And I would strongly recommend using better voices than the standard Microsoft ones.

www.nextup.com sells suitable voices - I prefer the NeoSpeech voices as they sound much better, although they require a fair bit of disk space and CPU power. If your friend's computer is a bit on the slow side or is limited in memory then the Cepstral voices are probably a better choice. They're also cheaper.

NeedHelp
May 4th, 2005, 05:06 PM
We're at the beginning... haven't built the computer yet.... not until we understand what we need.

My friend is used to crappy voices, it's not a big deal. If it's easy to get a nice voice then that's cool.

I'm still lost. I'm hearing so many things listed it's making my head spin :o and I dont know where to begin.

Would be nice to find a guide the goes step by step. I checked out the Voice Command in MS XP Plus and emailed the woman who wrote it asking a few questions.

We'll see

NeedHelp
May 5th, 2005, 09:58 AM
another question...

How do we find a custom installer designer who might put together a deluxe solution for us? I'm pretty sure the guys at best buy aren't up to the challenge. :lol:

And how much will it cost? parts/services/etc

NeedHelp
May 6th, 2005, 05:46 AM
:o

Treetop
May 6th, 2005, 12:38 PM
And how much will it cost? parts/services/etc

Don't know, as I'm more of a DIY'er, but I can guess that it won't be cheap. Most CI's won't touch someones personal computer, as service calls would be a pita. They would probably try to to steer you towards a hardware mp3 play, maybe an ELAN system, and then take it from there. It really depends on the products that the Installer uses. You would also have to take into account the wiring, microphones, etc. The total can get pretty high, pretty quickly.

You may be able to find a CI through Cedia. This would probably fall under Home Automation (as far as the search choices go).
http://www.cedia.net/homeowners/finder.php

If you do find someone in your area, feel free to contact them, but realize that they probably wont give you a list of the products they will use, over the phone, as they won't want someone to use their time for free, just so they can go out and buy the stuff on the internet after they find out what they'll need.

It can't hurt to talk to them though, and I'd strongly suggest doing so, for this particular project.

Edit: You can ask some CI's in this forum (Ask the Professionals sub-forum). They may be able to give you some good info.
http://www.integrationpros.com/modules.php?name=Forums&file=index

That said,
Have your downloaded Girder yet? Its really not that bad once you get your feet wet.

Just for fun, try it on your system, say using Winamp. If you get stuck, post back some specifics.

Treetop

Mastiff
May 6th, 2005, 12:50 PM
How about a much simpler solution: A numerical keyboard (they have a point on the 5, so you'll always know where you are), with a LUA script I'm using. It allows you to press from one to four digits and start playback of the album that has this number. It also allows for going to next album or previous album (with the + and - keys), and it's no problem to have buttons to go for instance 5, 10 or 20 albums back and forth (the * and / keys for instance).

Having the albums ripped in JRMC and sorted alphabetically he would only have to memorize a few of them to know approximately where the correct album is. Then, pressing the digits on the numerical keyboard, he could start a play list and then go back and forth according to where he is: "OK, that's Iron Maiden. Then I need to go forward a few albums to get to Judas Priest." If he's using a multimedia keypad, like Logitech's DiNovo Media Desktop he will have a bluetooth wireless keypad with transport controls on separate buttons.

I'm using this in my car, and the kids play their music with it, so it's pretty reliable.

NeedHelp
May 8th, 2005, 06:23 PM
Thanks for all the info guys...

Can Girder do this:

Blind user with keyboard presses ___ to start script
user types "Love" and Enter
script runs a windows explorer search of the mp3 directory for "Love" (not sure if it can search all the mp3 tags or just the file name. Maybe we need to put all the tags in the filename)
script starts playing the list of all the songs it found.

Or is there an mp3 player program that could do something like this?

My friend has software that makes that lets the computer speak.

Thanks

NeedHelp
May 9th, 2005, 06:50 AM
:o

NeedHelp
May 10th, 2005, 11:30 AM
:o

Mastiff
May 10th, 2005, 11:57 AM
Total silence usually means that you have asked for something nobody knows how to do, but everybody's to embarassed to admit it...in case they say "that can't be done", and then somebody (usually Mike, Rob, Marcel or Mark) drops in five minutes later and says: "Yes, of course it can be done." :wink:

NeedHelp
May 12th, 2005, 05:40 AM
:cry:

Promixis
May 12th, 2005, 05:48 AM
Almost anything is doable and having girder get tracks based on a search query can be done. Its just going to take a fair bit of work to get there.

Mastiff
May 12th, 2005, 12:15 PM
Told you so! :wink:

Treetop
May 12th, 2005, 11:19 PM
:o

Mastiff
May 13th, 2005, 01:46 AM
I'm straying here, but I don't think I have ever seen a thread where that many messages has been a smiley, and nothing more! 8)

NeedHelp
May 16th, 2005, 07:23 AM
:o :o

wrybread
May 30th, 2005, 03:58 AM
You might also check out the Rockbox operating system for Archos MP3 players. It's a 3rd party open source operating system that runs on the ARchos Recorder, and it has great voice feedback. It'll even read the songs and folders if you set it up right.

But yeah, I realize it doesn't run on a PC so it might not be what you're looking for, but who knows, maybe it'll do. They're discontinued but there's plenty available on ebay. Note that the 15 gig models aren't USB2, but the 20s are. Also note that the Studio has a much cheaper build quality, so I'd highly recommend the Recorder 20. Also note that, unlike an ipod, these use standard laptop harddrives and it's an easy operaiton to swap it out. Mine's got a 100 gig hardrive.

There's a bunch of blind users posting in the forums there as well.

http://rockbox.org

AlCapone
October 31st, 2005, 07:35 AM
All I would like to do, is to recognize some simple commands (words etc.)

could somebody please reduce the script to a necessary minimum ?

thanks.