'If t is a time, returns true if t is between the start and
the end of the clip. t can be expressed in seconds (15.35),
in (min, sec), in (hour, min, sec), or as a string: \'01:03:05.35\'.
If t is a numpy array, returns False if none of the t is in
theclip, else returns a vector [b_1, b_2, b_3...] where b_i
is true iff tti is in the clip.'

@convert_to_seconds(['t'])
def is_playing(self, t):

    if isinstance(t, np.ndarray):
        (tmin, tmax) = (t.min(), t.max())
        if ((self.end is not None) and (tmin >= self.end)):
            return False
        if (tmax < self.start):
            return False
        result = (1 * (t >= self.start))
        if (self.end is not None):
            result *= (t <= self.end)
        return result
    else:
        return ((t >= self.start) and ((self.end is None) or (t < self.end)))
