Web Audio playback with per-challenge gain and limiter
2 changed files+5−1
challenges/string-pluck-v1/README.mdmodified+1−1View file
@@ -81,7 +81,7 @@ The deliverable is a wav file with the following properties.
8181 | sample $k$, for $k = 0, \dots, N-1$ | $s(k / f_s) / s_\text{ref}$ |
8282 | $s_\text{ref}$ | see `output.signal_scale` in challenge.json (m/s) |
8383
84-The first sample is at $t = 0$, where $s(0) = 0$. Samples are pointwise values of the continuum signal. No anti-aliasing filter is applied, even though $s(t)$ contains frequency content above the Nyquist frequency; that content is heavily damped by the Kelvin-Voigt term and is part of the exact answer. The scale $s_\text{ref}$ is a fixed constant chosen so that the peak sample magnitude is roughly 0.5. Do not normalize the signal; absolute amplitude is compared.
84+The first sample is at $t = 0$, where $s(0) = 0$. Samples are pointwise values of the continuum signal. No anti-aliasing filter is applied, even though $s(t)$ contains frequency content above the Nyquist frequency; that content is heavily damped by the Kelvin-Voigt term and is part of the exact answer. The scale $s_\text{ref}$ is a fixed constant chosen so that the peak sample magnitude is roughly 0.5. Do not normalize the signal; absolute amplitude is compared. The signal has a large crest factor (a loud transient followed by a much quieter ring), so it sounds faint when played raw; `playback.gain_db` in challenge.json is a suggested listening gain, which the results sites apply at playback together with a limiter, and it is not part of the deliverable.
8585
8686 ## Error measures
8787
challenges/string-pluck-v1/challenge.jsonmodified+4−0View file
@@ -12,6 +12,10 @@
1212 "signal_unit": "m/s",
1313 "signal_scale": 2.4
1414 },
15+ "playback": {
16+ "gain_db": 12,
17+ "note": "Suggested playback gain for listening; presentation only, not part of the deliverable."
18+ },
1519 "parameters": {
1620 "L": 0.65,
1721 "c": 143.0,