43 #include "EST_cutils.h"
44 #include "EST_string_aux.h"
46 #include "EST_wave_aux.h"
47 #include "EST_Track.h"
48 #include "ling_class/EST_Relation.h"
49 #include "ling_class/EST_item_aux.h"
52 float offset,
float length);
63 for (k = keylab.
head(); k; k = k->next())
69 wave_subwave(a, sig, start, end-start);
87 for (k = keylab.
head(); k; k = k->next())
91 if (key_file_name == file)
93 wave_subwave(part, sig, start, end-start);
98 cerr <<
"Couldn't locate file fragment " << file <<
" in keylab file\n";
104 float offset,
float length)
106 return wave_subwave(subsig, sig, (
int)(offset *(
float)sig.
sample_rate()),
122 cerr <<
"Subset past end of signal\n";
128 sig.sub_wave(subwave, offset, ns, 0, EST_ALL);
130 subsig.copy(subwave);
139 float kstart, length;
146 cerr <<
"Key file must extend beyond end of EST_Track\n";
147 cerr <<
"key end: " << key.
tail()->
F(
"end") <<
" EST_Track end: "
156 length = end(*k) - kstart;
157 n = (int)(length / (
float) fv.
shift()) + 2;
160 for (i = 0, l = 0; i < fv.
num_frames(); ++i, ++l)
165 if (fv.
t(i) > k->
F(
"end"))
170 kstart = k->
F(
"end");
173 length = k->
F(
"end") - kstart;
174 n = (int)(length / (
float) fv.
shift()) + 2;