-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathduration.php
executable file
·61 lines (56 loc) · 1.99 KB
/
duration.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
error_reporting(E_ALL);
$PHP_SELF = $_SERVER['PHP_SELF'];
srand((double)microtime()*1000000);
$save_dir = 'tmp/';
#$file=(isset($_FILES['mid_upload'])&&$_FILES['mid_upload']['tmp_name']!='')?$_FILES['mid_upload']['tmp_name']:'';
if (isset($_FILES['mid_upload'])){
$file = $save_dir.rand().'.mid';
$tmpFile=$_FILES['mid_upload']['tmp_name'];
@move_uploaded_file($tmpFile,$file) or die('problems uploading file');
@chmod($file,0666);
}elseif (isset($_POST['file'])){
$file=$_POST['file'];
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>Duration</title>
<link rel="stylesheet" type="text/css" href="css/midi.css" />
</head>
<body>
<form enctype="multipart/form-data" action="<?=$PHP_SELF?>" method="post" onsubmit="if (this.mid_upload.value==''){alert('Please choose a mid-file to upload!');return false}">
<div>
<input type="hidden" name="MAX_FILE_SIZE" value="1048576" /><!-- 1 MB -->
MIDI file (*.mid) to upload: <input type="file" name="mid_upload" />
<br /><br />
<input type="submit" value=" send " />
</div>
</form>
<?php
if (@$file){
/****************************************************************************
MIDI CLASS CODE
****************************************************************************/
require('./classes/midi_duration.class.php');
$midi = new MidiDuration();
$midi->importMid($file);
echo '<div style="margin-top:20px">Duration [sec]: '.$midi->getDuration().'</div>';
# $midi = new Midi();
# $midi->importMid($file);
#
# $maxTime=0;
# foreach ($midi->tracks as $track){
# $msgStr = $track[count($track)-1];
# list($time)=explode(" ", $msgStr);
# $maxTime=max($maxTime,$time);
# }
# $duration=$maxTime * $midi->getTempo() / $midi->getTimebase() / 1000000;
# echo "Duration [sec]: $duration"; // ergibt 69.0623480625 sec für bossa.mid
}
?>
</body>
</html>