示例#1
0
    def test_shift(self):
        a = Note(100, 15, 250)
        shift = 100
        score = Score([copy(a)])
        score.shift_all_notes(shift)
        for i in [140, 199, 201, 449, 450, 451, 550]:
            self.assertEquals(0, len(score.starts_at(i)))
        self.assertEquals(1, len(score.starts_at(200)))

        for i in [140, 199, 200, 201, 449, 451, 550]:
            self.assertEquals(0, len(score.ends_at(i)))
        self.assertEquals(1, len(score.ends_at(450)))

        for i in [150, 199, 450, 451, 550]:
            self.assertEquals(0, len(score.sounding_at(i)))
        for i in [200, 201, 449]:
            self.assertEquals(1, len(score.sounding_at(i)))

        notes = score.starts_at(200)
        for n in notes:
            self.assertEquals(n.delay, a.delay + shift)
示例#2
0
    # user_input
    if args.midi:
        user_input = USER_INPUTS[args.input](args.midi)
    else:
        user_input = USER_INPUTS[args.input]()
    # reference input
    if args.reftype == "none":
        score = Score([])
    elif args.reftype == "midi":
        composition = MidiFileIn.MIDI_to_Composition(args.file)
        score = Score.from_track(composition[0].tracks[args.track],
                                 bpm=args.bpm)
    elif args.reftype == "ssv":
        score = SSVParse(args.file, 50)

    score.shift_all_notes(1000)

    # audio
    if args.audio == "none":
        sequencer = DummySequencer(score)
    elif args.audio:
        sequencer = FluidSynthSequencer(score)
        fluidsynth.init(args.soundfont, args.audio)

    #
    validator = Validator(score, margin=200)
    midi_player = MidiPlayer(validator)

    step = 1 / 100.0
    puntos = 0