EST_wave_cuts.cc (speech_tools-2.4-release) | : | EST_wave_cuts.cc (speech_tools-2.5.0-release) | ||
---|---|---|---|---|
skipping to change at line 63 | skipping to change at line 63 | |||
int wave_divide(EST_WaveList &wl, EST_Wave &sig, EST_Relation &keylab, | int wave_divide(EST_WaveList &wl, EST_Wave &sig, EST_Relation &keylab, | |||
const EST_String &ext) | const EST_String &ext) | |||
{ | { | |||
wl.clear(); | wl.clear(); | |||
EST_Wave a; | EST_Wave a; | |||
EST_Item *k; | EST_Item *k; | |||
EST_String filename; | EST_String filename; | |||
float start = 0,end; | float start = 0,end; | |||
for (k = keylab.head(); k; k = k->next()) | for (k = keylab.head(); k; k = inext(k)) | |||
{ | { | |||
a.clear(); | a.clear(); | |||
end = k->F("end",0); | end = k->F("end",0); | |||
if (end < start) | if (end < start) | |||
continue; | continue; | |||
wave_subwave(a, sig, start, end-start); | wave_subwave(a, sig, start, end-start); | |||
filename = (EST_String)k->f("file"); | filename = (EST_String)k->f("file"); | |||
a.set_name(filename + ext); | a.set_name(filename + ext); | |||
wl.append(a); | wl.append(a); | |||
start = end; | start = end; | |||
skipping to change at line 87 | skipping to change at line 87 | |||
} | } | |||
int wave_extract(EST_Wave &part, EST_Wave &sig, EST_Relation &keylab, | int wave_extract(EST_Wave &part, EST_Wave &sig, EST_Relation &keylab, | |||
const EST_String &file) | const EST_String &file) | |||
{ | { | |||
EST_Wave a; | EST_Wave a; | |||
EST_Item *k; | EST_Item *k; | |||
EST_String key_file_name; | EST_String key_file_name; | |||
float start=0, end; | float start=0, end; | |||
for (k = keylab.head(); k; k = k->next()) | for (k = keylab.head(); k; k = inext(k)) | |||
{ | { | |||
end = k->F("end",0); | end = k->F("end",0); | |||
key_file_name = (EST_String)k->f("file"); | key_file_name = (EST_String)k->f("file"); | |||
if (key_file_name == file) | if (key_file_name == file) | |||
{ | { | |||
wave_subwave(part, sig, start, end-start); | wave_subwave(part, sig, start, end-start); | |||
return 0; | return 0; | |||
} | } | |||
start = end; | start = end; | |||
} | } | |||
skipping to change at line 170 | skipping to change at line 170 | |||
{ | { | |||
for (j = 0; j < fv.num_channels(); ++j) | for (j = 0; j < fv.num_channels(); ++j) | |||
a(l, j) = fv(i, j); | a(l, j) = fv(i, j); | |||
if (fv.t(i) > k->F("end")) | if (fv.t(i) > k->F("end")) | |||
{ | { | |||
a.set_num_frames(l + 1); | a.set_num_frames(l + 1); | |||
mtfr.append(a); | mtfr.append(a); | |||
kstart = k->F("end"); | kstart = k->F("end"); | |||
k = k->next(); | k = inext(k); | |||
a.set_name(k->name()); | a.set_name(k->name()); | |||
length = k->F("end") - kstart; | length = k->F("end") - kstart; | |||
n = (int)(length / (float) fv.shift()) + 2; | n = (int)(length / (float) fv.shift()) + 2; | |||
// cout << "n frames: " << n << endl; | // cout << "n frames: " << n << endl; | |||
a.resize(n, fv.num_channels()); | a.resize(n, fv.num_channels()); | |||
a.fill_time(fv.shift()); | a.fill_time(fv.shift()); | |||
// for (j = 0; j < fv.order(); ++j) | // for (j = 0; j < fv.order(); ++j) | |||
// a(0, j) = fv(i, j); | // a(0, j) = fv(i, j); | |||
l = -1; | l = -1; | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added |