コード例 #1
0
ファイル: untested_utils.py プロジェクト: brigittebigi/sppas
    def test_Shift(self):
        transcription = Transcription()
        new_tier1 = TierUtils.Select(self.tier, lambda x: overlaps(self.a, x))
        new_tier2 = TierUtils.Select(self.tier, lambda x: overlaps(self.a, x))
        transcription.Append(new_tier1)
        transcription.Append(new_tier2)
        TrsUtils.Shift(transcription, 0.5)

        self.assertEqual(transcription[0][0].BeginValue, self.a1.BeginValue - 0.5)
        self.assertEqual(transcription[0][1].BeginValue, self.a2.BeginValue - 0.5)
        self.assertEqual(transcription[0][2].BeginValue, self.a3.BeginValue - 0.5)
        self.assertEqual(transcription[0][3].BeginValue, self.a4.BeginValue - 0.5)

        self.assertEqual(transcription[0][0].EndValue, self.a1.EndValue - 0.5)
        self.assertEqual(transcription[0][1].EndValue, self.a2.EndValue - 0.5)
        self.assertEqual(transcription[0][2].EndValue, self.a3.EndValue - 0.5)
        self.assertEqual(transcription[0][3].EndValue, self.a4.EndValue - 0.5)

        self.assertEqual(transcription[1][0].BeginValue, self.a1.BeginValue - 0.5)
        self.assertEqual(transcription[1][1].BeginValue, self.a2.BeginValue - 0.5)
        self.assertEqual(transcription[1][2].BeginValue, self.a3.BeginValue - 0.5)
        self.assertEqual(transcription[1][3].BeginValue, self.a4.BeginValue - 0.5)

        self.assertEqual(transcription[1][0].EndValue, self.a1.EndValue - 0.5)
        self.assertEqual(transcription[1][1].EndValue, self.a2.EndValue - 0.5)
        self.assertEqual(transcription[1][2].EndValue, self.a3.EndValue - 0.5)
        self.assertEqual(transcription[1][3].EndValue, self.a4.EndValue - 0.5)
コード例 #2
0
ファイル: untested_utils.py プロジェクト: brigittebigi/sppas
    def test_overlaps(self):
        new_tier = TierUtils.Select(self.tier, lambda x: overlaps(self.a, x))

        self.assertEqual(len(new_tier), 4)
        self.assertEqual(new_tier[0].Time, self.a1.Time)
        self.assertEqual(new_tier[1].Time, self.a2.Time)
        self.assertEqual(new_tier[2].Time, self.a3.Time)
        self.assertEqual(new_tier[3].Time, self.a4.Time)
コード例 #3
0
ファイル: wavseg.py プロジェクト: drammock/sppas
    def create_trsunits(self, trstracks):
        """
        Create a list of transcription units from tracks.
        @param trstracks
        @return list of Transcription objects
        """
        if trstracks is None:
            raise Exception("No tracks found.\n")

        if self.trsinput is None:
            raise Exception("No trsinput found.\n")

        trs_list = []
        trsunits_size = len(self.trsunits)
        for i, track in enumerate(trstracks):
            from_pos = track[0]
            to_pos = track[1]
            if self.trsunits and i > trsunits_size:
                raise Exception("Error: bad number of tracks.\n")

            # Create a new Transcription with speech
            start = float(from_pos) / float(self.audiospeech.get_framerate())
            end = float(to_pos) / float(self.audiospeech.get_framerate())
            a = Annotation(TimeInterval(TimePoint(start, 0.001), TimePoint(end, 0.001)))
            new_trs = Transcription(self.trsinput.GetName())

            new_trs.SetMinTime(start)
            new_trs.SetMaxTime(end)

            for tier in self.trsinput:
                new_tier = TierUtils.Select(tier, lambda x: trsutils.overlaps(a, x))
                if new_tier is not None:
                    if new_tier[0].GetLocation().IsInterval():
                        new_tier[0].GetLocation().SetBeginMidpoint(start)
                        new_tier[-1].GetLocation().SetEndMidpoint(end)
                    new_trs.Append(new_tier)

            trsutils.TrsUtils.Shift(new_trs, new_trs.GetBegin())
            trs_list.append(new_trs)

        return trs_list