Organising gnuspeech source(s)

View: New views
6 Messages — Rating Filter:   Alert me  

Parent Message unknown Organising gnuspeech source(s)

by David Hill-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

The exchange between myself and another project team member copied below represents an initial foray changing the way we handle the gnuspeech source.  It seems appropriate to ask list members for their input before making any changes, so please consider yourselves asked and post replies to the list.

David Hill
Project admin
--------


Hi David,

On 5-Nov-08, at 4:54 PM, David Hill wrote:

Hi Dalmazio,

On Nov 5, 2008, at 11:31 AM, Dalmazio Brisinda wrote:

[...]

What do you think? Two separate development branches? Yea or nea?


Your arguments make good sense, but I feel it would be a bad move to separate into two branches:

1. There would then be two different sets of code to maintain and -- as far as possible -- synchronise which could get increasingly onerous & therefore not done, or at least not done well;

The problem with keeping them as one is the all-or-nothing approach to development. It might be difficult to find resources that would allow for work on *both* the GNUSTEP and OS X versions to occur in parallel. Tying them together like this may create obstacles to further progress. If they were separated, development has a higher chance of proceeding, on one platform or the other, and changes made on one platform could be rolled into the other platform when someone who was so inclined came along. And there would be two functioning versions of the software at all times. But, yes, it's true, it might not get done right away...



2. This is supposed to be a GNU project, not a Mac project; and

I understand. What if I reworded myself to say that the GNUSTEP version is the reference implementation, and the OS X version is the experimental branch implementation, for which programmer resources are currently available? It should be a relatively straightforward matter for someone who was serious enough to port an existing system from one platform to the other. But more difficult to develop them in parallel.


3. It is a good discipline to have one source for both environments because (for example) resolving the Core Audio issue is probably best done by making a new audio back end that will run in either and avoids the complexity of Core Audio (and one less thing for Apple to mess with and break our system) so a single source is a useful incentive to make such moves.

That's true -- just tossing out CoreAudio in favor of NSSound (the newer 10.5 NSSound has some additional features for playback) might be best for the time being. That's what I did to get Monet synthesis to work on 10.5.5 (bypassed CoreAudio) as I couldn't get CoreAudio to work -- very cryptic + something is changed/broken. But it comes back to that all-or-nothing approach. If you can't have a solution that works on both platforms for the time being, would you settle for a solution that works on one platform only, where changes could be ported later? And it's not like the software would be broken on one platform, it would just lag behind a bit as far as features etc.



The point about all those conditional compilation macros is a good one though.  Perhaps worth some auxiliary tool that allows you to view the code based on whichever conditional compilation you are currently expanding/debugging -- not as simple as it sounds, I realise.

Do you agree with me?

Yes, and no. I hear your concerns. I guess it depends on what your priorities are. For example, no interface changes can be made presently without breaking the GNUSTEP interface, as it uses gorm files instead of nib/xib. Also, the existing Monet nib files are broken on the lastest Xcode (won't open in Interface Builder). I've corrected this and am now using the newer (XML-based) .xib format.

Here, this excerpt from Robert Slover helps illustrates my point, but related to project structure:

A related issue was the need to do some refactoring to arrange 
GNUspeech so that it builds more like an ordinary set of libraries.  My 
understanding is that the current arrangement exploits Xcode's ability 
to pull together files that are spread throughout a project in order to 
build a particular target, something that is much more difficult to 
pull off with ordinary makefiles. 

Eventually, there will be changes that will need to be made to the project structure as well, making not just having one source difficult, but also having one project structure difficult.

Thoughts?

Best,
dalmazio



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

Re: Organising gnuspeech source(s)

by Marcelo Yassunori Matuda :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

Two branches or two directories/modules?

My R$0,02:

I think it depends on your long-term goals. GnuSpeech is a very
interesting project. You may expect sub-projects in the future, like a
GnuSpeech server ("Real-time Monet"). How about developing it in the
next Google Summer of Code? There could be versions in ObjC, C, C++ or
even Java.

Another possibility is a rewrite in C++/Qt (example). And don't forget
that GnuSpeech may be modified/expanded. This could be in an
"experimental" directory.

In other words, I think you may need more than two directories/modules.

But if you are talking about two branches, that's another thing.

Cheers!
Marcelo


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

Re: Organising gnuspeech source(s)

by David Hill-14 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Marcelo,

On Nov 6, 2008, at 8:36 AM, Marcelo Yassunori Matuda wrote:

Hi,

Two branches or two directories/modules?

My R$0,02:

I think it depends on your long-term goals. GnuSpeech is a very
interesting project. You may expect sub-projects in the future, like a
GnuSpeech server ("Real-time Monet"). How about developing it in the
next Google Summer of Code? There could be versions in ObjC, C, C++ or
even Java.

Great idea.  I'll have to look into that carefully


Another possibility is a rewrite in C++/Qt (example). And don't forget
that GnuSpeech may be modified/expanded. This could be in an
"experimental" directory.

A C++ rewrite is probably not on because of the heavy dependence on the interface stuff, but Real-time Monet (a,k,a the TextToSpeech Server) could probably be done in a variety of languages


In other words, I think you may need more than two directories/modules.

Thanks.  Fair comment.


But if you are talking about two branches, that's another thing.

I'm feeling my way on this, really.  I am definitely concerned about having multiple sets of source code for the same tasks all needing to be kept up-to-date.  I'd really like to see a GNUStep version of the TTS Server running and it ought easily to run on the Mac too if the audio back end can be sorted out in a reasonably platform independent way.

Is there a good source of information on these kinds of issues?  CVS does seem to have some disadvantages, but maybe that's because I don't know CVS as well as I should.  I have Fogel & Bar "Open Source Development with CVS" (2nd edition).

Dalmazio wrote about a month ago saying:

Also, have you considered registering your text-to-speech project with SourceForge.net? All the software on this site is free and open-source software, with usually some flavour of the GNU license, and it gets a *lot* of visibility. Just doing a search on 'speech synthesis' for example shows a dozen or so open-source projects related to speech synthesis. But perhaps it would be too much work to maintain two separate sites for this.

which also seems worth considering and might get some more people interested & involved.

All good wishes.

david


Cheers!
Marcelo


_______________________________________________
gnuspeech-contact mailing list




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

Re: Organising gnuspeech source(s)

by Marcelo Yassunori Matuda :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

> Dalmazio wrote about a month ago saying:
>
> Also, have you considered registering your text-to-speech project with
> SourceForge.net? All the software on this site is free and open-source
> software, with usually some flavour of the GNU license, and it gets a *lot*
> of visibility. Just doing a search on 'speech synthesis' for example shows a
> dozen or so open-source projects related to speech synthesis. But perhaps it
> would be too much work to maintain two separate sites for this.
>
> which also seems worth considering and might get some more people interested
> & involved.

I think that freshmeat.net is better in this case, it's just for announcements.

You could put some screenshots of GnuSpeech running in MacOS X on the
site, and make available a binary package for MacOS X in the
"Download" menu in Savannah. And more sound samples would be nice too.

And there is no article about Gnuspeech in Wikipedia, see:
http://en.wikipedia.org/wiki/Gnuspeech
http://en.wikipedia.org/wiki/Articulatory_synthesis

Regards,
Marcelo


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

Parent Message unknown Re: Organising gnuspeech source(s)

by David Hill-14 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks for the suggestion [in the email below] Gerold.  The savannah site supports a variety of Version Control Systems, including Subversion.  It is possible to convert the current CVS repository to Subversion.

Yavor Doganov tells me other possibilities are GNU Arch, Git and Mercurial -- GNU Bzr is in testing phase and not yet officially supported (thanks Yavor).

Comments anyone, please?

david
---------
David Hill, Project Administrator

Simplicity, patience, compassion. These three are your greatest treasures  (Tao Te Ching #67)
---------

On Nov 10, 2008, at 3:14 AM, geroldr@... wrote:

Hi,

Please consider Subversion as a replacement to CVS.

Subversion was started by a team of developers who had worked on CVS to fix all of the CVS "wrinkles". 

Directories and files  are versionable objects in subversion. It supports atomic commits and changesets. Subversion 
uses an efficient database model to  branch and merge files, which is faster and less painful than in CVS.

See "Pragmatic Version Control using Subversion" by Mike Mason, 2005, ISBN 0-9745140-6-3


Thanks,

Gerold

----Message d'origine----
Date: 2008.11.09 03:05
À: "Marcelo Yassunori Matuda"<marcelo.matuda@...>
Copie: "gnuspeech"<gnuspeech-contact@...>, "Dalmazio Brisinda"<dbrisinda@...>
Objet: Re: [gnuspeech-contact] Organising gnuspeech source(s)

Hi Marcelo,

On Nov 6, 2008, at 8:36 AM, Marcelo Yassunori Matuda wrote:

Hi,

Two branches or two directories/modules?

My R$0,02:

I think it depends on your long-term goals. GnuSpeech is a very
interesting project. You may expect sub-projects in the future, like a
GnuSpeech server ("Real-time Monet"). How about developing it in the
next Google Summer of Code? There could be versions in ObjC, C, C++ or
even Java.

Great idea.  I'll have to look into that carefully


Another possibility is a rewrite in C++/Qt (example). And don't forget
that GnuSpeech may be modified/expanded. This could be in an
"experimental" directory.

A C++ rewrite is probably not on because of the heavy dependence on  
the interface stuff, but Real-time Monet (a,k,a the TextToSpeech  
Server) could probably be done in a variety of languages


In other words, I think you may need more than two directories/ 
modules.

Thanks.  Fair comment.


But if you are talking about two branches, that's another thing.

I'm feeling my way on this, really.  I am definitely concerned about  
having multiple sets of source code for the same tasks all needing to  
be kept up-to-date.  I'd really like to see a GNUStep version of the  
TTS Server running and it ought easily to run on the Mac too if the  
audio back end can be sorted out in a reasonably platform independent  
way.

Is there a good source of information on these kinds of issues?  CVS  
does seem to have some disadvantages, but maybe that's because I  
don't know CVS as well as I should.  I have Fogel & Bar "Open Source  
Development with CVS" (2nd edition).

Dalmazio wrote about a month ago saying:

Also, have you considered registering your text-to-speech project  
with SourceForge.net? All the software on this site is free and  
open-source software, with usually some flavour of the GNU  
license, and it gets a *lot* of visibility. Just doing a search on  
'speech synthesis' for example shows a dozen or so open-source  
projects related to speech synthesis. But perhaps it would be too  
much work to maintain two separate sites for this.

which also seems worth considering and might get some more people  
interested & involved.

All good wishes.

david


Cheers!
Marcelo


_______________________________________________
gnuspeech-contact mailing list



_______________________________________________
gnuspeech-contact mailing list










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

Re: Organising gnuspeech source(s)

by David Hill-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Marcello,

Good suggestions all.  Many thanks.

I have put an entry to Gnuspeech into the Wikipedia and changed some references into internal links.  I have also extended my university web site to make the Gnuspeech material more readily available by collecting it all in a section devoted to it.  I have put the existing sound samples right at the top of the section, so they can't be missed (they were somewhat buried before, and maybe you missed them).  The Wikipedia article includes a link to that site as well as other useful stuff.

Let me know if you think this meets some of your suggestions adequately, and feel free to offer more of your excellent suggestions.

I'll work on some more stuff immediately, including putting an earlier compiled version of Monet on the savannah site -- but not as a release, only as a Beta.  Dalmazio has recently incorporated the helper Beta app (unfortunately also called Gnuspeech) that translated text into the Monet input syntax into Monet itself.  I have yet to try it out, but the original helper app did not deal with all the text that could be put in (unlike the pre-parser that was part of the TextToSpeech Server -- the daemon that provided text-to-speech conversion as a service on the NeXT and which Dalmazio is now working on.

This is just to keep everyone up-to-date.

I also need to produce a second edition of both the Monet and Synthesizer manuals that use illustrations from the Mac OS X version, rather than the NeXT, though the NeXT versions will be pretty close for when it is up and running under GnuStep.

All for now.

All good wishes and many thanks.

david
--------
David Hill
--------
 The only function of economic forecasting is to make astrology look respectable. (J.K. Galbraith)
--------


On Nov 9, 2008, at 7:57 AM, Marcelo Yassunori Matuda wrote:

Hi,

Dalmazio wrote about a month ago saying:

Also, have you considered registering your text-to-speech project with
SourceForge.net? All the software on this site is free and open-source
software, with usually some flavour of the GNU license, and it gets a *lot*
of visibility. Just doing a search on 'speech synthesis' for example shows a
dozen or so open-source projects related to speech synthesis. But perhaps it
would be too much work to maintain two separate sites for this.

which also seems worth considering and might get some more people interested
& involved.

I think that freshmeat.net is better in this case, it's just for announcements.

You could put some screenshots of GnuSpeech running in MacOS X on the
site, and make available a binary package for MacOS X in the
"Download" menu in Savannah. And more sound samples would be nice too.

And there is no article about Gnuspeech in Wikipedia, see:

Regards,
Marcelo


_______________________________________________
gnuspeech-contact mailing list




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