[mary-dev] adding new NLPs to the system
fxavier at ircam.fr
fxavier at ircam.fr
Mon Jun 20 14:40:16 CEST 2011
Thanks,
Now I just tried to play with the french NLP component, locale fr. Here's
what's on the server.log file:
2011-06-20 13:24:11,926 [I/O dispatcher 2] INFO marytts.R 18 New request
(input type "RAWMARYXML", output type "PHONEMES", effect "", audio "AU")
2011-06-20 13:24:11,928 [I/O dispatcher 2] WARN marytts.Voice Could not
find default voice for locale fr
2011-06-20 13:24:11,928 [I/O dispatcher 2] INFO marytts.server Read:
<?xml version="1.0" encoding="UTF-8"?> <maryxml
xmlns="http://mary.dfki.de/2002/MaryXML"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="0.5"
xml:lang="fr"> <p> salut dB </p> </maryxml>
2011-06-20 13:24:11,929 [I/O dispatcher 2] ERROR marytts.server Processing
failed.
java.lang.UnsupportedOperationException: No known way of generating output
from input -- no processing path through modules.
at marytts.server.Request.processOneChunk(Request.java:513)
at marytts.server.Request.processOrLookupOneChunk(Request.java:394)
at marytts.server.Request.process(Request.java:341)
at
marytts.server.http.SynthesisRequestHandler.process(SynthesisRequestHandler.java:286)
at
marytts.server.http.SynthesisRequestHandler.handleClientRequest(SynthesisRequestHandler.java:112)
at
marytts.server.http.BaseHttpRequestHandler.handle(BaseHttpRequestHandler.java:150)
at
org.apache.http.nio.protocol.BufferingHttpServiceHandler$RequestHandlerAdaptor.handle(BufferingHttpServiceHandler.java:193)
at
org.apache.http.nio.protocol.SimpleNHttpRequestHandler.handle(SimpleNHttpRequestHandler.java:55)
at
org.apache.http.nio.protocol.AsyncNHttpServiceHandler.processRequest(AsyncNHttpServiceHandler.java:454)
at
org.apache.http.nio.protocol.AsyncNHttpServiceHandler.inputReady(AsyncNHttpServiceHandler.java:320)
at
org.apache.http.nio.protocol.BufferingHttpServiceHandler.inputReady(BufferingHttpServiceHandler.java:135)
at
org.apache.http.impl.nio.DefaultNHttpServerConnection.consumeInput(DefaultNHttpServerConnection.java:179)
at
org.apache.http.impl.nio.DefaultServerIOEventDispatch.inputReady(DefaultServerIOEventDispatch.java:145)
at
org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:153)
at
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:314)
at
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:294)
at
org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:256)
at
org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:96)
at
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:556)
at java.lang.Thread.run(Thread.java:679)
2011-06-20 13:24:11,930 [I/O dispatcher 2] INFO marytts.server Request
couldn't be handled successfully.
2011-06-20 13:24:12,040 [I/O dispatcher 2] INFO marytts.server Connection
closed: [closed]
and my fr.config file:
##########################################################################
# Copyright 2000-2011 DFKI GmbH.
# All Rights Reserved. Use is subject to license terms.
#
# This file is part of MARY TTS.
#
# MARY TTS is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##########################################################################
# MARY TTS configuration file tr.config
##########################################################################
name = fr
fr.version = 4.3.0
provides = a-language
requires = \
marybase
###########################################################################
############################## The Modules ###############################
###########################################################################
modules.classes.list = \
marytts.language.fr.PhonemiserFR \
marytts.language.fr.getPOSorPhonemFR \
marytts.language.fr.preprocessFR \
marytts.language.fr.ProsodyFR \
marytts.language.fr.preprocess.abrev2alpha \
marytts.language.fr.preprocess.date2alpha \
marytts.language.fr.preprocess.devis2alpha \
marytts.language.fr.preprocess.dur2alpha \
marytts.language.fr.preprocess.heur2alpha \
marytts.language.fr.preprocess.mesu2alpha \
marytts.language.fr.preprocess.sms2alpha \
As you can see, all my classes are included in the fr.config file. I send
the request with the proper input, output and locales. So there shouldn't
be any errors. My RAWMARYWML input is:
<?xml version="1.0" encoding="UTF-8"?>
<maryxml xmlns="http://mary.dfki.de/2002/MaryXML"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="0.5"
xml:lang="fr">
<p>
salut dB
</p>
</maryxml>
So everything should be ok, even if my NLP component doesn't work. At
least I shouldnt get this kind of exception. I precise that my class
PhonemiserFR extends INternalModule and my constructor is
public PhonemiserFR()
{
super("FrenchPhonemiser",
MaryDataType.RAWMARYXML,
MaryDataType.PHONEMES,
Locale.FRENCH);
}
Florent
More information about the Mary-dev
mailing list