gnuspeech-contact
[Top][All Lists]
Advanced

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

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


From: David Hill
Subject: [gnuspeech-contact] Re: what's the status?
Date: Fri, 10 Feb 2006 22:05:01 -0800

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



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






reply via email to

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