Good morning MacartySounds like you have completed something pretty cool! I'll sit back watch and read to figure out exactly what it can do and how it will work as new messages hit the pipeline.
Congratulations on the success after all the hard work! Rick Farmington Mich. USA----- Original Message ----- From: "Brent Harding" <bharding@xxxxxxxxxx>
To: <programmingblind@xxxxxxxxxxxxx> Sent: Monday, November 26, 2007 10:14 PM Subject: Re: SSIP for Windows -- beta almost ready for release
Wow! This seems cool! How would we get SSIP support into JFW and other PC screen readers? Would JFW allow us to install extra speech drivers that they don't normally support?----- Original Message ----- From: "Sina Bahram" <sbahram@xxxxxxxxx>To: <programmingblind@xxxxxxxxxxxxx> Sent: Monday, November 26, 2007 8:42 PM Subject: RE: SSIP for Windows -- beta almost ready for releaseBecause chant does not, nor do they have plans to support SSIP.I talked with their CEO and owner when we had dinner together in California, last time I was on the west coast, and while he is extremely glad that MikeGrace and I, over at NC State university are using chant like this, he isquite content to offer us a one time license and allow all of our users, andall of the users of our program, to benefit from the sapi abstraction in java and other languages that chant provides, while at the same timeallowing us to drive and be driven by the SSIP protocol. This is truely thebest of both worlds, since it also means that the SSIP components can be free and open source.Stay tuned for more on this stuff, once we integrate with jay, get our sitetogether, and do some release engineering, but the short version is, a completely transparent, self voicing, and easy to use way of using linuxscreen readers in a VNC connection on a PC, or even using a PC screen reader like jaws from a VNC or RDP, RDesktop on Linux, connection in gnome, and allsorts of other combinations. Take care, Sina -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Ken Perry Sent: Monday, November 26, 2007 9:32 PM To: programmingblind@xxxxxxxxxxxxx Subject: RE: SSIP for Windows -- beta almost ready for release Why exactly would you use your Java class over something like chant.net other than the small cost of the chant libraries? Ken -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Macarty, Jay {PBSG} Sent: Monday, November 26, 2007 3:18 PM To: programmingblind@xxxxxxxxxxxxx Subject: RE: SSIP for Windows -- beta almost ready for release Thanks Inthane and Sina! Made a fair amount of progress on writing up the code for the SSIPClient for java today. Should be able to include a SSIPClient1.0.jar with the release of the server.As far as the server itself, I have added a few return codes that weren't in the original specs (such as "210 OK - API SET TO [{0}]" and I have to finishup adding those to the response Dictionary object. Also, the LIST VOICES command is working as far as being able to get the listing of the synthesizer voices from SAPI, but I don't have the code/response added to the parser. FYI...From a java interface perspective, the client code might look somethinglike this: 1. You would start the SSIPVoiceServer.exe program on your workstation.2. Since the default for the client is "localhost port 3891", you could usethe empty constructor in your java application as follows: SSIPClient voice = new SSIPClient(); try { voice.connect(); } catch (SSIPException e) { // do something }3. To speak the phrase "this is a test.", you could code something like thistry { voice.sayString("This is a test."); } catch (SSIPException e) { // do something }There will be methods to start the speak operation, queue new text, and endthe queuing/trigger the speech in order to map to the protocol but thesaystring method will serve as a convenience method to speak a single stringof text. 4. When you are done, your code can exit the SSIP session by calling the close() method on the client. The SSIPClient interface will handle all the socket traffic, encoding therequests, and decoding the responses. some method calls will map directly tothe SSIP commands they represent such as setAPI, setRate, setVoice, or setClientName. The convenience methods, such as sayString, may map to multiple SSIP commands. Should have something ready in the next day or 2. -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Sina Bahram Sent: Monday, November 26, 2007 4:38 PM To: programmingblind@xxxxxxxxxxxxx Subject: RE: SSIP for Windows -- beta almost ready for release Sounds like a plan ... thanks Inthane. Take care, Sina -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of inthaneelf Sent: Monday, November 26, 2007 5:34 PM To: programmingblind@xxxxxxxxxxxxx Subject: Re: SSIP for Windows -- beta almost ready for releasethis is one time I wish I had gotten up "earlier" instead of my normal time, ah well, since Sina has an interest in this, I'll just ask if I can link tothe page for this when you get it ready. regards, inthane. For Blind Programming assistance, Information, Useful Programs, and Linksto Jamal Mazrui's Text tutorial packages and Applications, visit me at: http://grabbag.alacorncomputer.com . to be able to view a simple programming project in several programming languages, visit the Fruit basket demo site at: http://fruitbasketdemo.alacorncomputer.com ----- Original Message ----- From: "Macarty, Jay {PBSG}" <Jay.Macarty@xxxxxxxx> To: <programmingblind@xxxxxxxxxxxxx> Sent: Monday, November 26, 2007 9:25 AM Subject: RE: SSIP for Windows -- beta almost ready for release Sina, Thanks for the feedback and the offer! I'll take you up on that and will contact you off list to discuss the details. -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Sina Bahram Sent: Monday, November 26, 2007 11:17 AM To: programmingblind@xxxxxxxxxxxxx Subject: RE: SSIP for Windows -- beta almost ready for releaseJay, look no further for hosting, my friend. Since this project is directlyrelated to the Remote Access Bridge, please allow me to offer you SVNaccess, if you like, site hosting, databases, and so on ... It's no problemfor me to set that up, so just contact me off list.Glad to see there is now a .net parser for SSIP as well. This will open upsome oppertunities. Take care, Sina -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Macarty, Jay {PBSG} Sent: Monday, November 26, 2007 12:13 PM To: programmingblind@xxxxxxxxxxxxx Subject: SSIP for Windows -- beta almost ready for release All, Some of you may be aware that I have been working for some time now on a server for the Speech Synthesis Interface Protocol, SSIP, for the windows platform. I started out trying to implement the server in Auto-It but couldn't get the multi-threading functionality or object oriented capabilities I wanted. I then switched to ruby but the 1.8 version didn't have the interface and abstract class support I wanted and the executable packaging wasn't quite what I wanted either. I have now switched thedevelopment over to C# and found the capabilities I wanted. There is still a little clean-up of the initial beta release and I'll have to find a websiteto host the download installer, but here is a description of the initial release. SSIP is a non-synthesizer specific protocol for producing speech output. The specs haven't been updated in a while but can be found at the URL http://www.freebsoft.org/doc/speechd/ssip.htmlSSIP uses a simple socket connection and a text command syntax. To producethe spoken output "this is a test." a calling client program might send these commands: set client_name j.macarty:demo:test1 speak this is a test. . The set client_name command simply identifies this client session for tracking purposes since the server supports multiple client sessionsconcurrently. The speak command tells the server to start receiving text to be spoken. The text input is terminated by a line containing a single dot. this also triggers the server to send the text to the output speech channel.The SSIP for windows server supports output to JAWS, window-Eyes or SAPI. The SpeechManager class uses an interface named ITextToSpeech with implementation classes written for each of these 3 output channels. The server was written with C# 2.0, instead of 3.x, because some corporate builds, including ours here at work, are still using Dot Net 2.0. Rather than attempting to set up the COM interface for SAPI and Window-Eyes, I decided to use the tlbimp utility and build assemblies for them. Thisallowed for simply creating the objects like SpVoice for SAPI and SpeakClassfor Window-Eyes. Also, once the assemblies were built, it was easier toexamine them using the ildasm tool to see the method calls and signatures.The current server supports multiple client connections. I tried it out with3 clients; one speaking thru JAWS, one speaking thru Window-Eyes, and one speaking thru SAPI. The SAPI interface also supports the SET RATE, SETVOICE, and SET VOLUME SSIP commands. The server also supports the SSIP CHARcommand for immediately speaking a single character. The SSIP BLOCK structure command set and the Speech Synthesis Markup Language, SSML, support are not included in this release but will be added. The install includes a small Auto-It program called SSIPVoiceClient whichallows one to test out the server. The client contains an input text field where you can enter SSIP commands to send to the server and an output textarea which echoes back the server response codes.I'll post another update when I have arranged for a download host and havefinished packaging up the install program. I'm hoping to provide a java client API for the SSIP server, if Sina hasn't already developed one, and some client examples in other languages as well. __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind__________View the list's information and change your settings at //www.freelists.org/list/programmingblind
__________View the list's information and change your settings at //www.freelists.org/list/programmingblind