示例#1
0
<?php 
    $new = 'tmp/~' . rand() . '.mid';
    if (isset($p['up'])) {
        $midi->transpose(12);
    }
    if (isset($p['down'])) {
        $midi->transpose(-12);
    }
    if (isset($p['double'])) {
        $midi->setTempo($midi->getTempo() / 2);
    }
    if (isset($p['half'])) {
        $midi->setTempo($midi->getTempo() * 2);
    }
    if (isset($p['solo'])) {
        $midi->soloTrack($p['soloTrackNum']);
    }
    if (isset($p['delete'])) {
        $midi->deleteTrack($p['delTrackNum']);
    }
    if (isset($p['insert'])) {
        $midi->insertMsg(0, "0 On ch=10 n=39 v=127");
        $midi->insertMsg(0, "120 On ch=10 n=39 v=127");
        $midi->insertMsg(0, "240 On ch=10 n=39 v=127");
    }
    $midi->saveMidFile($new);
    $midi->playMidFile($new, 1, 1, 0, $plug);
    if (isset($p['show'])) {
        echo '<hr>' . nl2br($midi->getTxt());
    }
}
    } else {
        $new = $save_dir . rand() . '.mid';
        if (isset($_POST['up'])) {
            $midi->transpose(12);
        }
        if (isset($_POST['down'])) {
            $midi->transpose(-12);
        }
        if (isset($_POST['double'])) {
            $midi->setTempo($midi->getTempo() / 2);
        }
        if (isset($_POST['half'])) {
            $midi->setTempo($midi->getTempo() * 2);
        }
        if (isset($_POST['solo'])) {
            $midi->soloTrack($_POST['soloTrackNum']);
        }
        if (isset($_POST['delete'])) {
            $midi->deleteTrack($_POST['delTrackNum']);
        }
        if (isset($_POST['insert'])) {
            $midi->insertMsg(0, "0 On ch=10 n=39 v=127");
            $midi->insertMsg(0, "120 On ch=10 n=39 v=127");
            $midi->insertMsg(0, "240 On ch=10 n=39 v=127");
        }
        $midi->saveMidFile($new, 0666);
        $midi->playMidFile($new, $visible, $autostart, $loop, $player);
        ?>
<br /><br /><input type="button" name="download" value="Save as SMF (*.mid)" onclick="self.location.href='download.php?f=<?php 
        echo urlencode($new);
        ?>