Return a list of intervals::

        [(b_1, e_1), (b_2, e_2), ..., (b_k, e_k)]

        where ``b_i`` is the time when the ``i``-th interval begins,
        and ``e_i`` is the time when it ends.

        :param bool speech: if ``True``, return speech intervals,
                            otherwise return nonspeech intervals
        :param bool time: if ``True``, return :class:`~aeneas.exacttiming.TimeInterval` objects,
                          otherwise return indices (int)
        :rtype: list of pairs (see above)

def intervals(self, speech=True, time=True):
        """
        Return a list of intervals::

        [(b_1, e_1), (b_2, e_2), ..., (b_k, e_k)]

        where ``b_i`` is the time when the ``i``-th interval begins,
        and ``e_i`` is the time when it ends.

        :param bool speech: if ``True``, return speech intervals,
                            otherwise return nonspeech intervals
        :param bool time: if ``True``, return :class:`~aeneas.exacttiming.TimeInterval` objects,
                          otherwise return indices (int)
        :rtype: list of pairs (see above)
        """
        self._ensure_mfcc_mask()
        if speech:
            self.log(u"Converting speech runs to intervals...")
            intervals = self.__speech_intervals
        else:
            self.log(u"Converting nonspeech runs to intervals...")
            intervals = self.__nonspeech_intervals
        if time:
            mws = self.rconf.mws
            intervals = [TimeInterval(
                begin=(b * mws),
                end=((e + 1) * mws)
            ) for b, e in intervals]
        self.log(u"Converting... done")
        return intervals