43#include "EST_cutils.h"
44#include "EST_string_aux.h"
46#include "EST_wave_aux.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 = inext(k))
69 wave_subwave(a,
sig, start, end-start);
87 for (k =
keylab.head(); k; k = inext(k))
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()),
107 (
int)(length *(
float)
sig.sample_rate()));
116 ns =
sig.num_samples() - offset;
120 if ((offset+
ns) >
sig.num_samples())
122 cerr <<
"Subset past end of signal\n";
144 if ((key.
tail())->F(
"end") < (
fv.t(
fv.num_frames() - 1)))
146 cerr <<
"Key file must extend beyond end of EST_Track\n";
147 cerr <<
"key end: " << key.
tail()->
F(
"end") <<
" EST_Track end: "
148 <<
fv.t(
fv.num_frames() - 1) <<
endl;
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)
162 for (
j = 0;
j <
fv.num_channels(); ++
j)
165 if (
fv.t(i) > k->
F(
"end"))
174 n = (int)(length / (
float)
fv.shift()) + 2;
const float F(const EST_String &name) const
void set_num_frames(int n, bool preserve=1)
void set_name(const EST_String &n)
set name of track - redundant use access to features
void resize(int num_frames, int num_channels, bool preserve=1)
void fill_time(float t, int start=1)
void clear()
clear waveform and set size to 0.
void set_name(const EST_String n)
Sets name.