-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
106 lines (93 loc) · 4.76 KB
/
index.html
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/eq-curves.css">
<!-- JavaScript function to handle sequence generation and graph drawing-->
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript" src="js/eq-curves.js"></script>
<script type="text/javascript">
window.onload=function(){
document.getElementById("generatebutton").click();
}
</script>
<title>Room Correction Target Curve Generator</title>
</head>
<body>
<!-- Input fields and button will go here -->
<div id="frame">
<h1>Room Correction Target Curve Generator</h1>
<form id="filterForm">
<div class="otherparameters">
<!-- Numerical inputs -->
<div><label for="octaveSteps">Steps per octave:</label><br><input type="number" id="octaveSteps" name="octaveSteps" value="6" required></div>
</div>
<hr>
<div class="dbhz">
<!-- Numerical inputs -->
<div><label for="startHz">Start Hz:</label><input type="number" id="startHz" name="startHz" value="10" required></div>
<div><label for="lowCutoffHz">Low Cut-off Hz:</label>
<input type="number" id="lowCutoffHz" name="lowCutoffHz" value="1000" required></div>
<div><label for="highCutoffHz">High Cut-off Hz:</label>
<input type="number" id="highCutoffHz" name="highCutoffHz" value="4000" required></div>
<div><label for="endHz">End Hz:</label>
<input type="number" id="endHz" name="endHz" value="24000" required></div>
<div><label for="startdB">Start dB:</label>
<input type="number" id="startdB" name="startdB" value="7" required></div>
<div><label for="lowCutoffdB">Low Cut-off dB:</label>
<input type="number" id="lowCutoffdB" name="lowCutoffdB" value="0" required></div>
<div><label for="highCutoffdB">High Cut-off dB:</label>
<input type="number" id="highCutoffdB" name="highCutoffdB" value="0" required></div>
<div><label for="enddB">End dB:</label>
<input type="number" id="enddB" name="enddB" value="-5.5" required></div>
</div>
<div class="curves">
<div></div>
<div><label for="curveTypeLow">Curve Type Low:</label><br>
<select id="curveTypeLow" name="curveTypeLow">
<option value="cosine">Cosine</option>
<option value="curved" selected="selected">Curved</option>
<option value="linear">Linear</option>
</select></div>
<div><label for="curveTypeMid">Curve Type Mid:</label><br>
<select id="curveTypeMid" name="curveTypeMid">
<option value="cosine">Cosine</option>
<option value="curved">Curved</option>
<option value="linear" selected="selected">Linear</option>
</select></div>
<div><label for="curveTypeHigh">Curve Type High:</label><br>
<select id="curveTypeHigh" name="curveTypeHigh">
<option value="cosine">Cosine</option>
<option value="curved">Curved</option>
<option value="linear" selected="selected">Linear</option>
</select></div>
<div></div>
</div>
<hr>
<!-- Button to generate -->
<button type="button" onclick="generateText()" class="full-width" id="generatebutton">Generate</button>
</form>
<div></div>
<!-- Output text field, download button and chart-->
<textarea id="output" rows="20" cols="50" style="width:780px; margin-top: 15px;"></textarea><br>
<div><label for="filename">Filename:</label> <input type="text" id="filename" name="filename" size="75"> <button type="button" id="downloadbutton" onclick="saveText()" disabled="True">Dowload file</button></div>
<div id="curve_chart" style="width: 780px; height: 350px; align:center;"></div>
<div style="width: 780px">
Instructions:<br>
Pick four Hz/dB reference points and 3 functions to blend between them.<br>
Click generate to create a target curve file to download and use in your room correction software (e.g., Dirac Live).<br>
If you want to apply PEQ filters to the target curve, copy the output and take it to the <a href="target_curve_peq.html">Target Curve PEQ tool</a><br>
<br>Curve types:
<ul style="margin-top: 0;">
<li>Linear: Just a line from the starting dB to the end dB</li>
<li>Curved: Very similar to the popular harman curves. Amplifies the low end of the curve and then drops quickly.</li>
<li>Cosine: Drops to the halfway dB point after half the Hz-distance in a (co)-sine shape</li>
</ul>
</div>
</div>
</body>
</html>