gnuspeech-contact
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gnuspeech-contact] Re: what's the status?


From: David Hill
Subject: Re: [gnuspeech-contact] Re: what's the status?
Date: Sun, 12 Feb 2006 23:29:50 -0800

Hi Robert & Eric,

I think the most important manual for someone receiving a NeXT and just wanting to run the system with software that's already loaded, and would like to network it on a LAN so files can be transferred, printed, etc would be the "NeXTSTEP NETWORK AND SYSTEM ADMINISTRATION" book for Release 3 of NeXTSTEP (Addison-Wesley, First Printing1992, ISBN 0-201-63254-3). The User Guide from the same set of books would probably also be useful. Thanks for the offer Robert.

Any other manuals can be sent if Eric finds he needs info he doesn't have. I can also answer questions by email, of course.

To Robert: it sounds as though you ran a NeXT and are now running a Mac, and are knowledgeable about the things they have in common. It is always a privilege for us and much appreciated support when someone makes a commitment to help out, so I very much value your participation offer.

It is clear that a working real-time Monet (basically allowing a synthesis service for arbitrary text) with decent rhythm and intonation would have been a great help to your Mother. This is certainly one of the areas we were aiming at enabling. At one point, with the close cooperation of my graduate students, implemented my design for a system with a custom overlay of texture (lines, columns ...) for a touch pad which allowed a visually disabled person to have tactile access to a "visual" space to provide a more natural approach to document and book access. It used an earlier (formant filter based) speech synthesis system we had developed to speak the text accessed through the pad using touch and proprioception to "understand" the space in a way analogous to the way sighted readers see documents. It was written up in the IEEE Transactions on Systems, Man & Cybernetics and gets a short summary in the "Give us the tools ..." paper on my U website which also provides the reference to the full paper.

Your information concerning the ubiquity of GNUstep surprised me. I am still digesting it and thinking of the real possibilities it opens up.

You are the second person in just a few days to express an interest in working on what is essentially "real-time Monet". Given GNUstep, the bits are all there in the interactive Monet that Steve Nygard (with some preliminary work by Adam Fedor) ported from the NeXT version. However, there is quite a bit of work involved in stripping out the interactive/GUI-oriented stuff to get the core needed to simply translate text into speech output using the existing databases (or any future databases that are developed).

There is a diagram on the home web page of the gnuspeech project that gives an overview of the bits involved, and you may have seen the note I sent to Robert Brewer recently.

As you know, I am working from the other end to get the "Synthesizer" app ported -- basically an interactive front end to the raw tube model to be used a s a tool for language development, but also useful for understanding the tube model.

I'll get back to both of you again asap.

Many thanks for your interest and the information.

All good wishes.

david
------
On Feb 11, 2006, at 12:11 PM, Robert Slover wrote:

Greetings, David & Eric,

David, if you can tell me which manuals Eric will need, I can probably supply them. I have duplicates of some and at least one complete set of NeXT documentation. Most of this was going to be donated soon to a coworker of mine who is an avid NeXT collector, and who has much more space to spare for memorabilia than I do. If some actual use can be made of it, that's a better outcome after having kept it for over a decade.

I am very interested in seeing this stuff brought over to Mac OS X and GNUStep. I have a near future goal of starting a project which will need a speech synthesis engine. My mother was diagnosed with ALS (Amyotrophic Lateral Sclerosis http://www.alsa.org ) a little less than a year ago. The disease progressed very quickly and she lost her ability to speak very soon after she was diagnosed. We had her on a waiting list to receive a speech assistance device but were told it would take a while. After some failed attempts getting usable speech out of a PC laptop I had, someone on a hardware rescue list I subscribe to sent me an old 68k based PowerBook. I was able to find an ancient hypercard stack that was meant to allow persons with limited motor function to select or compose phrases and have the computer speak them. After getting that going, I sent it home with my younger brother. Unfortunately, I never got to see Mom use it -- my brother says she did though. She passed away in mid November, still on the waiting list. We've since donated the machine to the state ALS organization, hoping someone else could use it. But I would like to do better than that -- I'd like to create a similar piece of completely free software that could run on any available computer with sound capability.

GNUStep is a good choice for that purpose as well. The code is directly portable to OS X, and GNUStep itself runs on Linux, Unix, and MS Windows. There's even a fork for Zaurus portables. It is in my best interest though if as much as possible of the complete GNUSpeech system can be built on OS X and/or GNUStep first, since I have very little free time to invest -- I'd rather put my effort into getting the described piece of software working than into working out build issues.

So, let me know if I can help with any of the NeXT stuff, or otherwise.

Best regards,


--Robert

P.S. GNUStep does indeed build on OS X, though it is actually one of the more problematic environments due to the presence of Apple's customized GCC compiler (which can't currently build GNUStep). It is better though to use the native libraries for that platform, IMO.


On Feb 11, 2006, at 1:05 AM, David Hill wrote:

Hi Eric,

Sorry! I am the one sending confusing messages. It is not clear that GnuStep is complete enough yet to do Monet. However, Mac's "Cocoa" is so close to GnuStep that I am working on a Mac using Xcode 2.2 and Cocoa on the grounds that when GnuStep is complete, the port should be almost a matter of re-compiling. Greg Casamento has already done some of the additional conditional compilation code on the Monet system that was ported to Mac by Steve Nygard to move towards allowing the source to compile on either system (single source, and simply set a condition so it compiles for whichever you want). That is the source that's on the savannah gnuspeech site. To some extent, the way to see how complete GnuStep is we have to see how well Monet compiles under it, which is what Greg is supposedly doing (Is that accurate Greg?)

I did read somewhere that there is a straight Objective C system that runs under Linux, but it may simply be someone referring to GnuStep. A non-GnuStep Objective C would probably be useful for non-interactive stuff, but if it didn't meet the GnuStep/Cocoa standards, it would not help with the interactive-intensive stuff. However, real-time Monet doesn't need all the interactive stuff, but it will be quite an exercise stripping out what's needed from the existing Monet for the "real-time Monet" package.

I haven't heard from Greg for a while. He's a GnuStep "guru" -- he's worked on it extensively.

I am porting "Synthesizer" because it is a basic tool for improving speech quality (something I am very interested in doing) and developing datasets for new languages (I've had enquiries), and it is of interest to you, of course). It is also something to get me working towards a real-time Monet, and become familiar with everything I need to be familiar with to work more effectively on any part of the overall system.

I notice that your reply is a reply to a message I sent to Rob Brewer.

More below ...

On Feb 10, 2006, at 7:51 AM, Eric Zoerner wrote:

David,

I am not clear now on the target of the port you are working on. You are working on a Mac but porting to GNUstep? Are you using GNUstep on Mac OS X then?

Cocoa and GnuStep are very similar by design. GnuStep is (AFAIK) not yet complete.


I am at a point now where I would like to seriously start working with gnuspeech and get everything (particularly Monet and the Synthesizer App) working on the Mac (but I'm confused now about whether it would be quicker to run it as a GNUstep app or not -- I didn't realize until now that GNUstep runs on a Mac.

See above.

I've noticed that there are a number of things that aren't working in the Mac version of Monet that I have. The most obvious problem is that changing the intonation contour doesn't seem to have any effect on the output. The only synthesized output I seem to be able to get has a flat intonation contour.

To get intonation, you have to bring up the Intonation Parameters under the Tools menu, "check" the "Intonation" box, and also "check" which components you want (use all until you understand what is going on). "Macro" gives the basic intonation pattern according to Halliday's system, but with no smoothing. "Smooth" provides a much better intonation contour that mimics nature better. "Micro" is a fundamental effect of pitch changes due to pressure changes due to constrictions in the tube so it not only adds naturalness, but provides some addtional segmental information. "Drift" allows the contour to vary a little from utterance to utterance so that repeated utterances of the same phonetic content are not monotonously repeated. You can see the actual intonation contour in the "Intonation Window" -- also under tools.

Then, when you synthesize, you get intonation.


I would really like to see how everything is supposed to work in order to know how to fix them on the Mac. You stated previously that right now everything only works on the NeXT hardware. I would like to take you up on your offer to loan me your backup NeXT box. When we have everything working on the Mac I would ship your NeXT box back to you.

I'd appreciate you paying the shipping, and would not necessarily need to have it back, especially if it allows you to make a contribution, and you continued to find it useful. It is a Turbo (33MHz) NeXT box. It goes onto a LAN very easily, for print access, file transfers etc. If you eventually decided you didn't need it/want it, I rather have it back than have it junked.

I have the original boxes for shipping. Fedex (by air) is likely the best way to ship. You might have to pay some duty, but it should be much, given the going price for such equipment. The shipping could be fairly expensive -- I'll try to get an estimate ahead of time.

There is the question of manuals. I might be able to help there too. Rob Blessin likely has some manuals. I can let you know which would be most useful -- basically the system manual to help with networking.


Please let me know if that offer is still there. If not, then I will probably look into purchasing a NeXT box from the vender you mentioned previously.

Thanks,
Eric Zoerner






Ar 4 Feabh 2006, ag 07:37, scríobh David Hill:

Hi Rob,

This an initial response to the second part of your email.

On Feb 2, 2006, at 11:20 PM, Robert Brewer wrote:

David,


[snip]


My timescale is pretty flexible.  :)

Join the club!

Even so, I might
be willing to help out with separating out a batch
version of the real-time Monet.  I guess I'm trying
to feel out what that would involve.  Though I am
quite competent with C++, I have never touched
ObjC or GNUstep.

Somewhat hurried -- its late.

Objective C is not so different from C++.  IMHO, it is cleaner.
Not being a C++ guru I hesitate to comment to fully, but
one important difference is the absence of multiple
inheritance.  The cognoscenti say that there is only a requirement
for multiple inheritance if you don't do the OO design properly in the
first place.  In fact, "Protocols" in Objective C allow much the
same sort of effects to be achieved, but in a cleaner way.

The easiest way to get a handle on the stuff is to read some code.

There's a useful book by Aaron Hillegass that serves as an intro
("Cocoa programming for Mac OS X -- Addison Wesley 2004
ISBN 0-321-21314-9) and the book "Cocoa Programming" by
Anguish, Buck and Yacktman (SAMS 2003 ISBN 0-672-32230-7)
provides more detail, but has the slight disadvantage that it predated the Mac Xcode system that replaced Project Builder, though that is minor).

These books are useful because there is Mac code up on the savannah site
for gnuspeech (see under "Current").  Stephen Kochan's book:
"Programming in Objective-C" (SAMS "Developers Library 2004
ISBN 0-672-32586-1) is not tied to the Mac, but gives an idea of
the universality of the various flavours of Objective C and is a very good book. AFAIK you could develop using Objective-C under GNU/ Linux without worrying about GnuStep (or Mac stuff) because if you stuck to a non-interactive system, you wouldn't need all the Interface Builder stuff, which is why the port of the interactive apps is such a much more difficult job and requires the equivalent of all the NeXTSTEP/ OpenStep
Interface Building stuff to make it reasonably doable.

You'd have to look in the Monet code to see just what modules need
to be extracted and sewn together.  There's the (awful-and-needing-
redoing) letter-to-sound module -- OK for now, and the dictionary. There's the parsing for the text input, and the application of the rules to the parsed input to produce the parameters needed by the TRM synthesiser, and tube.c which converts he parameters into audio files. The diagram on the savannah gnuspeech web
home page gives an idea of the real-time Monet core.

Obviously I'm working in Xcode/Cocoa and aiming at GnuStep, but I believe there's a straight Objective-C system under Linux from recent comments I've seen. Greg Casamento was working on making the Mac source compile under GnuStep, but without the need for the GUIs, I am sure something independent of GnuStep could
be done for GNU/Linux.  I haven't heard from Greg for a while.

I'll do some more digging and get back to you. Sorry I'm not up to speed on this.

Probably someone reading this list can provide some better info.

All good wishes.

david

If I were to strip some part
of the codebase down to the barebones batch
engine (text file in, sound file out), I would have ObjC code
which relies on GNUstep, right?  Do you know off-hand
in what file I would look to see the text input?
I think I cant start tracing the code if I have someplace
to grab on.

I checked out the manuals on your site and they helpde
me understand what's going on a bit better.

Thanks.

-Rob
--
Robert W. Brewer


_______________________________________________
gnuspeech-contact mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/gnuspeech-contact


[snip duplicate addresses]




reply via email to

[Prev in Thread] Current Thread [Next in Thread]