Re: [g-a-devel]Another draft of gnome-speech IDL



Hi Marc,

On Fri, 2002-06-28 at 01:58, Marc Mulcahy wrote:
> 5. To complement the driverInit function, there is now a
> driverShutdown function.  Does this seem useful?

	What are they for ? why would the client possibly be interested in an
un-initialized object to talk to ? surely the object should be
initialized as soon as it is exposed to the user ?

> 6. I have not yet addressed the issue of how audio should be handled.
> I.E., how should one set the audio format and output device, etc.
> Since we plan to support external synthesizers, is there a good
> general way to support this?  Comments welcome.

	External synthesisers etc. would seem to me to be very much a separate
layer / interface. But presumably, it'd be possibly to simply proxy this
interface

> I have not adopted Draghi's proposal concerning shifting gnome-speech to a 
> speaker-based approach because I don't think it is as straightforward and 
> implementable as this proposal.  Comments welcome, but I propose moving 
> forward with this engine-centric proposal.

	I had a thought; which may be interesting - a robustness thing.

	Really you need to be able to detect if a client dies - and you need to
be able to associate a client with each request - so for example if
client A says 'pause' and the segv's - that we can still have speech
output from someone else.

	Then again multi-client stuff is quite hard. Perhaps it is adequate to
simply quit the server when all the 'SpeechEventCallback's are noticed
to have died.

	To that effect I would add:

	void deregisterSpeechEventCallback (in SEC cb);

	And I would re-name 'Callback' to 'Listener' - that seems more
standard. [ it seems you left a 'long detail' on the end of the method
somehow ].

	I'd also counsel that if you invoke a CORBA method, there is little
point scrimping with a 'long detail' - just put a string in and do an
atof for the integer parts.

>  If it turns out that 
> Gnopernicus implements useful code on top of gnome-speech that we deem 
> generally useful, we'll re-vamp gnome-speech 2.0 to take advantage of it.

	I think it's very laudable to get something simple, working and robust
out there, and then build complexity on when we fully understand how it
will be (mis) used ;-)

    string getParameterValueDescription (string name, any value)
      raises (DriverNotInitialized, ParameterNotSupported, WrongValueType);

	Why is the description not in the Parameter structure ? and what does
the 'value' connote here ?

    any getParameterValue (in string name)
      raises (DriverNotInitialized, ParameterNotSupported);

	I really would bin un-intialized drivers - it really, really doesn't
seem to make that much sense to me / be useful. I mean - what can the
end API user possibly do about that except call 'initialize' ? - it
just seems pointlessly pedestrian.

	That is unless there is some great cost to (re)initialization that I'm
un-aware of.

    /* Voice functions */
    void setCurrentVoice (string name)

	And we're resigned to having only 1 user of the gnome-speech service ?
at least to start with, or at least only 1 person that configures the voice ?

	If the voice configuration is a very different interface - used
infrequently and by a different (configuration?) client - it's
important to split this functionality into a different interface.
Indeed - using GConf for it sounds altogether better to me.

	Anyway, I hope some of that helps,

	Regards,

		Michael.

-- 
 mmeeks gnu org  <><, Pseudo Engineer, itinerant idiot




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