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

[hts-users:03151] Re: Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT


Hi,
 
I think the error is due to the setting of F0_RANGE.
Could you attach the Makefile in the data directory?
Or, provided that you are using Snack instead of STRAIGHT pitch tracker, could you try the STRAIGHT+ADAPT demo?
--
Xingyu Na (那兴宇)
Beijing Institute of Technology
naxy(at)bit.edu.cn
asr.naxingyu(at)gmail.com
naxingyu at {facebook, twitter, linkedin}
At 2012-01-14 02:22:30,winkler@xxxxxxxxxxxxx wrote:

Also a good catch, and it probably would be an issue for my install if it got a little farther, but it isn't the reason for the error I'm seeing. When I run it with the correct argument name as follows:

./configure --with-tcl-search-path=/home/machine/hts/ActiveTcl/bin --with-hts-search-path=/home/machine/hts/htk/HTKTools --with-fest-search-path=/usr/share/festival/examples --with-sptk-search-path=/home/machine/hts/SPTK-3.5/programs --with-hts-engine-search-path=/home/machine/hts/hts_engine_API-1.06/bin ADAPTSPKR=rms SPEAKER=rms TRAINSPKR='bdl clb jmk rms slt'

I still get the error "shift: 35: can't shift that many". Should my configure line above be working, or does anyone know if there another error in it? Any idea what "shift: 35: can't shift that many" is about? Thanks!

On Jan 13, 2012, at 12:05 PM, Piccand, Sebastien wrote:

Ah yes you are right, you can specify the environment variables after the ./configure line.
Could it just be a typo? I am using ADAPTSPKR instead of ADAPTSPK. (Configure won’t complain if you use a wrong name for the environment variables)
 
Seb
 
----------------------------------------------------------------------------
Sébastien Piccand, Researcher
Service Research Group
DOCOMO Communications Laboratories Europe GmbH
Landsberger Strasse 312
80687 Munich, Germany
Phone:  +49-89-56824-247
----------------------------------------------------------------------------
Managing Directors (Geschaeftsfuehrer):
Dr. Masami Yabusaki, Kazuo Sugiyama, Moriya Kumasaki
Amtsgericht Muenchen, HRB 132976
 
From: winkler@xxxxxxxxxxxxx [mailto:winkler@xxxxxxxxxxxxx] 
Sent: Freitag, 13. Januar 2012 00:42
To: hts-users@xxxxxxxxxxxxxxx
Subject: [hts-users:03147] Re: Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT
 
 
Hi,
 
Thanks for your suggestion. In the file INSTALL that is in the root directory of the demo, it instructs that the environment variables that are listed in ./configure -help should be passed via ./configure as arguments, excerpted:
 
 
   You can change various parameters such as speech analysis conditions and model training conditions
   through ./configure arguments.  For example
 
   % ./configure MGCORDER=34 GAMMA=0 FREQWARP=0.0              (34-th order cepstrum)
   % ./configure MGCORDER=34 GAMMA=0 FREQWARP=0.55             (34-th order Mel-cepstrum)
 
   % ./configure MGCORDER=12 GAMMA=1 FREQWARP=0.0  LNGAIN=0    (12-th order LSP,     linear gain)
   % ./configure MGCORDER=12 GAMMA=1 FREQWARP=0.0  LNGAIN=1    (12-th order LSP,     log gain)
   % ./configure MGCORDER=12 GAMMA=1 FREQWARP=0.55 LNGAIN=1    (12-th order Mel-LSP, log gain)
   % ./configure MGCORDER=12 GAMMA=3 FREQWARP=0.55 LNGAIN=1    (12-th order MGC-LSP, log gain)
 
   % ./configure NSTATE=7 NITER=10 WFLOOR=5   (# of HMM states=7, # of EM iterations=10, mix weight floo$
 
 
When I try the same three approaches with the variable settings, but this time exporting the environment variables before running ./configure just as you suggested instead of putting them at the end of ./configure, I get exactly the same results (that is, when I train with all voices I get the "can't shift that many" error and when I train with a subset of the voices either with or without sending a new voice order via F0_RANGES, I get the "Order of speakers in ALLSPKR (slt) doesn't match to that in F0_RANGES (rms)!" error). 
 
I think the issue may be more related to the "can't shift that many" error which may be occurring with an otherwise-good ./configure line for a reason as-yet unknown, or maybe that I am not setting F0_RANGES correctly, but I think that the environment variables are being passed through to the scripts whether they are exported before running ./configure or when added to ./configure as arguments, or I wouldn't see the same respective results when I use different environment variables as arguments as when I export them. 
 
Could anyone share with me a known-working ./configure line for adapting to rms as a sanity check? Any advice on how to troubleshoot/solve "can't shift that many"?
 
On Jan 12, 2012, at 12:57 PM, Piccand, Sebastien wrote:


Hi,
 
I think the problem comes from the fact that you are confusing arguments and variables.
ADAPTSPKR, SPEAKER, TRAINSPKR are environment variables.
You can either set them previous to the call to the ./configure command with:
>> export ADAPTSPKR=rms
>> export TRAINSPKR=’bdl clb jmk slt’
>> …
>> ./configure –allyouroptions
 
Or if you want to put them in the same command line, you have to set them before calling ./configure, e.g:
>> ADAPTSPKR=rms; TRAINSPKR=’bdl clb jmk slt’; …; ./configure –options
 
Regards,
Seb
----------------------------------------------------------------------------
Sébastien Piccand, Researcher
Service Research Group
DOCOMO Communications Laboratories Europe GmbH
Landsberger Strasse 312
80687 Munich, Germany
Phone:  +49-89-56824-247
----------------------------------------------------------------------------
Managing Directors (Geschaeftsfuehrer):
Dr. Masami Yabusaki, Kazuo Sugiyama, Moriya Kumasaki
Amtsgericht Muenchen, HRB 132976
 
From: winkler@xxxxxxxxxxxxx [mailto:winkler@xxxxxxxxxxxxx] 
Sent: Donnerstag, 12. Januar 2012 00:22
To: hts-users@xxxxxxxxxxxxxxx
Subject: [hts-users:03145] Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT
 
 

Hello,

When I run the HTS-demo_CMU-ARCTIC-ADAPT demo on Ubuntu 11.10 Desktop, 32-bit using the following ./configure arguments for adaptation with rms instead of slt:

./configure --with-tcl-search-path=/home/machine/hts/ActiveTcl/bin --with-hts-search-path=/home/machine/hts/htk/HTKTools --with-fest-search-path=/usr/share/festival/examples --with-sptk-search-path=/home/machine/hts/SPTK-3.5/programs --with-hts-engine-search-path=/home/machine/hts/hts_engine_API-1.06/bin ADAPTSPK=rms SPEAKER=rms TRAINSPKR='bdl clb jmk rms slt'

After many hours of error-free work successfully extracting MGC coefficients from the raw audio it always eventually fails in the script phase "Extracting log f0 sequence from raw audio" with this error repeating for every raw file:

F0 search range: bdl [40-210]
Extracting f0 from raw/bdl/cmu_us_arctic_bdl_a0001.raw
Unable to open mixer /dev/mixer
[....] 
Extracting f0 from raw/slt/cmu_us_arctic_slt_b0539.raw
Unable to open mixer /dev/mixer

In the middle of this, there is one specific file that gets another specific error as follows:
 
Extracting f0 from raw/jmk/cmu_us_arctic_jmk_a0501.raw
x2x : error: input data is over the range of type 'short'!
 
and when all of the raw files have gotten the 'Unable to open mixer /dev/mixer' error, there is this fatal error at the end:

shift: 35: can't shift that many
make[1]: *** [lf0] Error 2
make[1]: Leaving directory `/home/machine/hts/voices/ADAPT/data'
make: *** [data] Error 2
 
running 'tail log -f' after this gives the following output:
 
tail log -f
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice31.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice32.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice33.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice34.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice35.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice36.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice37.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice38.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice39.lab using hts_engine...done.
Synthesizing a speech waveform from /home/machine/hts/HTS-demo_CMU-ARCTIC-ADAPT/data/labels/gen/slt/cmu_us_arctic_slt_alice40.lab using hts_engine...done.

A search for "can't shift that many" in the last year gives the following results, but I wasn't able to pin down the issue in this case other than the fact that it might be shell-related:

http://www.google.com/search?q=%22can't+shift+that+many#q=%22can%27t+shift+that+many&hl=en&tbs=clue:1,qdr:y

I've repeatedly re-read ./configure -help and I've been looking for a mistake in my configure arguments but any changes I've made have resulted in the same or different fatal errors. For instance, if I run with the following ./configure line instead (removing rms from TRAINSPKR, since the default arguments omit slt from TRAINSPKR):
 
./configure --with-tcl-search-path=/home/machine/hts/ActiveTcl/bin --with-hts-search-path=/home/machine/hts/htk/HTKTools --with-fest-search-path=/usr/share/festival/examples --with-sptk-search-path=/home/machine/hts/SPTK-3.5/programs --with-hts-engine-search-path=/home/machine/hts/hts_engine_API-1.06/bin ADAPTSPK=rms SPEAKER=rms TRAINSPKR='bdl clb jmk slt'
 
I get this error at the same script phase:
 
Order of speakers in ALLSPKR (slt) doesn't match to that in F0_RANGES (rms)!
 
I haven't been able to find a definition of ALLSPKR in the configure help or elsewhere, but I see in the script that emits this error that the order should be "bdl clb jmk rms slt" which I guess doesn't correspond to using TRAINSPKR without rms. I decided to try to give an argument for F0_RANGES that puts the voices in what I hope is the correct order:
 
./configure --with-tcl-search-path=/home/machine/hts/ActiveTcl/bin --with-hts-search-path=/home/machine/hts/htk/HTKTools --with-fest-search-path=/usr/share/festival/examples --with-sptk-search-path=/home/machine/hts/SPTK-3.5/programs --with-hts-engine-search-path=/home/machine/hts/hts_engine_API-1.06/bin ADAPTSPK=rms SPEAKER=rms TRAINSPKR='bdl clb jmk slt' F0_RANGES='bdl 40 210 clb 130 260 jmk 50 180 slt 110 280 rms 40 200'
 
But this resulted in the identical "Order of speakers" error.
 
So, I guess my first question is what would be a known-working set of ./configure arguments for doing what I'm trying to do (adapt the demo with rms instead of slt). My second question, only in the event that one of those known-working sets of arguments matches one of the three that I've tried, is where to begin troubleshooting the errors I'm getting when I'm using the right arguments. Thank you!
 




Follow-Ups
[hts-users:03153] Re: Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT, winkler
References
[hts-users:03149] Re: Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT, winkler
[hts-users:03143] Re: HTS ERROR 7220, Umair Anjum
[hts-users:03140] HTS ERROR 7220, Umair Anjum
[hts-users:03142] Re: HTS ERROR 7220, 那兴宇
[hts-users:03144] Re: HTS ERROR 7220, 那兴宇
[hts-users:03145] Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT, winkler
[hts-users:03146] Re: Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT, Piccand, Sebastien
[hts-users:03147] Re: Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT, winkler
[hts-users:03148] Re: Fatal error "can't shift that many" with HTS-demo_CMU-ARCTIC-ADAPT, Piccand, Sebastien