PUZZLE #4436: Wave Superposition Cipher (diff 4)
A sampled audio waveform containing 4 superimposed sine waves. Perform spectral analysis (FFT) to find frequency peaks, compute semitone intervals between adjacent peaks, and map each interval to a letter (3 letters).
DATA
| Difficulty |
4
|
| Sample Rate |
4000
|
| Duration |
0.25
|
| Num Frequencies |
4
|
| Waveform |
-0.3435, -0.3946, 1.002, 0.8113, 0.2562, -1.7175, -0.4076, 0.9103, -0.8443, 0.2658, 0.9981, 0.7489, -0.4169, -1.7967, 0.5494, 0.311, -0.8093, 0.8296, 0.8628, 0.5759, -1.2221, -1.2174, 1.0524, -0.446, -0.3099, 1.0556, 0.7898, 0.1502, -1.7596, -0.2282, 0.853, -0.8956, 0.3688, 1.0202, 0.6887, -0.5725, -1.7203, 0.6615, 0.206, -0.7698, 0.9026, 0.8434, 0.4973, -1.3175, -1.0834, 1.0681, -0.5445, -0.1916, 1.0978, 0.7405, 0.0313, -1.7727, -0.0681, 0.789, -0.9344, 0.4875, 1.0238, 0.6563, -0.6711, -1.66, 0.7623, 0.0618, -0.7064, 0.9818, 0.8519, 0.415, -1.3898, -0.938, 1.0592, -0.6301, -0.0978, 1.156, 0.7223, -0.1082, -1.7722, 0.0599, 0.7166, -0.9514, 0.5757, 1.0232, 0.6042, -0.8081, -1.5427, 0.8344, -0.0438, -0.6776, 1.062, 0.816, 0.3139, -1.4661, -0.7962, 1.0426, -0.7236, -0.022, 1.1571, 0.659, -0.206, -1.7821, 0.2135, 0.6018, -0.9638, 0.6884, 1.021, 0.5194, -0.9178, -1.4504, 0.9153, -0.1598, -0.5936, 1.1218, 0.7889, 0.2354, -1.5426, -0.6181, 1.0382, -0.804, 0.0968, 1.173, 0.6059, -0.3284, -1.7398, 0.3605, 0.5071, -0.9631, 0.8116, 0.9807, 0.4336, -1.0036, -1.3457, 0.9929, -0.278, -0.5017, 1.197, 0.728, 0.0774, -1.584, -0.4653, 0.983, -0.8595, 0.2233, 1.1732, 0.5643, -0.4596, -1.7026, 0.4692, 0.3978, -0.9257, 0.9198, 0.9809, 0.3581, -1.1131, -1.2257, 1.0228, -0.3942, -0.4223, 1.2395, 0.6926, 0.0021, -1.6297, -0.3281, 0.9483, -0.9288, 0.3579, 1.2225, 0.505, -0.5497, -1.6499, 0.6065, 0.299, -0.9036, 0.9968, 0.9338, 0.2794, -1.1961, -1.0748, 1.0539, -0.5058, -0.3012, 1.2938, 0.6566, -0.0831, -1.6372, -0.1562, 0.8664, -0.9618, 0.463, 1.1937, 0.4175, -0.6591, -1.5715, 0.7003, 0.1736, -0.8491, 1.0922, 0.8919, 0.192, -1.2744, -0.9434, 1.0795, -0.6032, -0.2118, 1.3255, 0.5843, -0.1876, -1.6252, -0.0179, 0.7837, -1.0047, 0.5957, 1.1743, 0.3325, -0.767, -1.5084, 0.7992, 0.056, -0.7967, 1.202, 0.8376, 0.1261, -1.3503, -0.8241, 1.0705, -0.6982, -0.096, 1.3667, 0.5297, -0.2762, -1.6234, 0.1314, 0.6914, -1.0116, 0.7176, 1.1453, 0.2748, -0.8402, -1.4084, 0.8888, -0.0629, -0.7061, 1.288, 0.7902, 0.0179, -1.384, -0.6494, 1.0712, -0.7819, 0.0313, 1.3689, 0.4659, -0.3924, -1.6081, 0.2657, 0.611, -1.0303, 0.841, 1.1245, 0.2084, -0.9367, -1.3101, 0.9563, -0.1848, -0.6348, 1.3417, 0.7206, -0.0837, -1.4405, -0.5165, 1.0289, -0.8651, 0.1722, 1.3803, 0.3612, -0.467, -1.5818, 0.3955, 0.4968, -1.0061, 0.9665, 1.0668, 0.1248, -1.0329, -1.1963, 0.9946, -0.3175, -0.5407, 1.4121, 0.6761, -0.1546, -1.4659, -0.3634, 0.9714, -0.9394, 0.3028, 1.3783, 0.3135, -0.5581, -1.5467, 0.5074, 0.3903, -0.9791, 1.0667, 1.0057, 0.0469, -1.1126, -1.0684, 1.0133, -0.4328, -0.402, 1.4465, 0.5738, -0.2252, -1.476, -0.2523, 0.9385, -0.986, 0.447, 1.3641, 0.2172, -0.6615, -1.4791, 0.6235, 0.2564, -0.9489, 1.1668, 0.9447, -0.0454, -1.1637, -0.9524, 1.0661, -0.5465, -0.2846, 1.4904, 0.5004, -0.3353, -1.4656, -0.0818, 0.8556, -1.0257, 0.5644, 1.3198, 0.1436, -0.751, -1.3966, 0.7025, 0.1621, -0.8914, 1.2828, 0.8757, -0.1088, -1.2058, -0.8092, 1.0656, -0.6389, -0.1815, 1.5289, 0.4181, -0.4221, -1.484, 0.0531, 0.7849, -1.0401, 0.7011, 1.3018, 0.0533, -0.8172, -1.3323, 0.8006, 0.0115, -0.8181, 1.3911, 0.7956, -0.2147, -1.2626, -0.701, 1.0518, -0.7432, -0.0523, 1.5564, 0.3075, -0.4989, -1.4577, 0.1808, 0.6857, -1.0549, 0.8371, 1.2585, -0.0328, -0.89, -1.2243, 0.8757, -0.106, -0.7202, 1.4618, 0.6968, -0.2645, -1.2842, -0.5489, 1.0147, -0.8121, 0.0992, 1.545, 0.2351, -0.5652, -1.4158, 0.2931, 0.5837, -1.0454, 0.9816, 1.2089, -0.1301, -0.9671, -1.1244, 0.9255, -0.2293, -0.6359, 1.5244, 0.6226, -0.3612, -1.3018, -0.4307, 0.9861, -0.8894, 0.2262, 1.5432, 0.1455, -0.6468, -1.3868, 0.4118, 0.4746, -1.0229, 1.1214, 1.1194, -0.1992, -0.9908, -1.0262, 0.975, -0.342, -0.5255, 1.5932, 0.5241, -0.4175, -1.3028, -0.3076, 0.9487, -0.9506, 0.3748, 1.5307, 0.0507, -0.6985, -1.3324, 0.5176, 0.3658, -1.0, 1.2279, 1.0376, -0.2694, -1.0479, -0.9311, 1.0045, -0.4526, -0.4002, 1.6338, 0.418, -0.4806, -1.3043, -0.1687, 0.8768, -0.9832, 0.5284, 1.4869, -0.0509, -0.7662, -1.262, 0.6114, 0.2474, -0.9588, 1.3363, 0.9356, -0.3466, -1.0783, -0.8109, 1.0101, -0.5531, -0.2727, 1.672, 0.3171, -0.5785, -1.295, -0.0356, 0.8048, -1.0354, 0.681, 1.4321, -0.165, -0.8186, -1.2065, 0.7014, 0.1276, -0.8847, 1.4657, 0.866, -0.4243, -1.1062, -0.676, 1.0097, -0.6477, -0.1357, 1.6864, 0.2059, -0.6286, -1.2915, 0.0716, 0.717, -1.0398, 0.8365, 1.3867, -0.2427, -0.8638, -1.1242, 0.7691, 0.0015, -0.8119, 1.5396, 0.7505, -0.4856, -1.1108, -0.5734, 0.9818, -0.7262, 0.0043, 1.6949, 0.0946, -0.682, -1.2391, 0.2016, 0.6506, -1.0627, 0.9697, 1.3021, -0.317, -0.9003, -1.0272, 0.8217, -0.1323, -0.7052, 1.6317, 0.6334, -0.5557, -1.133, -0.4626, 0.9796, -0.8183, 0.1635, 1.684, -0.0148, -0.736, -1.206, 0.2928, 0.5343, -1.0353, 1.0948, 1.2227, -0.4276, -0.9187, -0.9328, 0.8605, -0.2413, -0.5957, 1.691, 0.5115, -0.6138, -1.1325, -0.3367, 0.9329, -0.8751, 0.3406, 1.667, -0.1192, -0.7627, -1.1599, 0.4214, 0.4262, -0.9972, 1.2663, 1.1099, -0.5086, -0.936, -0.8445, 0.8996, -0.3616, -0.4855, 1.7424, 0.3779, -0.6626, -1.1117, -0.2186, 0.8416, -0.9564, 0.4702, 1.6307, -0.2282, -0.8049, -1.105, 0.4894, 0.3043, -0.9702, 1.3609, 1.0206, -0.5715, -0.9525, -0.7531, 0.8887, -0.4621, -0.3687, 1.7995, 0.2542, -0.7035, -1.1109, -0.1083, 0.7973, -1.0018, 0.6354, 1.6015, -0.3385, -0.8214, -1.0478, 0.5696, 0.2022, -0.8953, 1.4755, 0.9059, -0.6801, -0.96, -0.6634, 0.9207, -0.5628, -0.2212, 1.8061, 0.131, -0.7625, -1.0666, -0.0156, 0.7311, -1.026, 0.7892, 1.5151, -0.4488, -0.8426, -0.9812, 0.634, 0.09, -0.8373, 1.5736, 0.7937, -0.7127, -0.9709, -0.5574, 0.9167, -0.6437, -0.0555, 1.8167, 0.0144, -0.7912, -1.0559, 0.1178, 0.6481, -1.0141, 0.918, 1.4284, -0.5651, -0.8617, -0.9015, 0.6886, -0.0228, -0.7535, 1.6609, 0.6728, -0.7864, -0.9709, -0.4607, 0.9027, -0.7229, 0.0912, 1.8242, -0.1155, -0.8242, -1.023, 0.1834, 0.5645, -1.0161, 1.085, 1.3489, -0.6386, -0.8629, -0.8323, 0.746, -0.1246, -0.6521, 1.7557, 0.534, -0.8214, -0.9724, -0.3506, 0.862, -0.8132, 0.2331, 1.7861, -0.267, -0.8537, -0.9487, 0.2816, 0.469, -0.9878, 1.2101, 1.2356, -0.7116, -0.8859, -0.7501, 0.7827, -0.239, -0.5398, 1.8295, 0.396, -0.8911, -0.9232, -0.2444, 0.839, -0.8513, 0.4024, 1.7469, -0.372, -0.8642, -0.9063, 0.3677, 0.3715, -0.9586, 1.346, 1.1068, -0.8117, -0.8643, -0.6738, 0.7838, -0.3403, -0.414, 1.8741, 0.2468, -0.9153, -0.9004, -0.1596, 0.7836, -0.8958, 0.5715, 1.6935, -0.4938, -0.8655, -0.8589, 0.4471, 0.2749, -0.8978, 1.4785, 1.0023, -0.8825, -0.8677, -0.5787, 0.8057, -0.4362, -0.2726, 1.8892, 0.0756, -0.9383, -0.8776, -0.0679, 0.7138, -0.9601, 0.7245, 1.6501, -0.6031, -0.8673, -0.8102, 0.4899, 0.1666, -0.8342, 1.6126, 0.8566, -0.9292, -0.8475, -0.5137, 0.8172, -0.5258, -0.1446, 1.9079, -0.0418, -0.9411, -0.8369, 0.0097, 0.6471, -0.9362, 0.8545, 1.5696, -0.7169, -0.8729, -0.7354, 0.5477, 0.0466, -0.7699, 1.6883, 0.7036, -0.9985, -0.8249, -0.4183, 0.7914, -0.6196, 0.0048, 1.9127, -0.2289, -0.966, -0.7823, 0.0903, 0.5534, -0.9369, 1.0356, 1.4483, -0.8351, -0.8597, -0.6774, 0.5697, -0.0475, -0.6678, 1.7935, 0.5581, -1.0179, -0.7888, -0.3428, 0.7662, -0.6603, 0.1605, 1.8676, -0.3512, -0.9569, -0.7603, 0.1693, 0.4864, -0.9349, 1.1603, 1.3436, -0.9227, -0.8326, -0.6386, 0.6353, -0.1431, -0.5564, 1.8247, 0.4032, -1.0956, -0.7596, -0.2617, 0.7447, -0.7346, 0.3229, 1.8725, -0.4747, -0.9414, -0.7204, 0.2333, 0.4097, -0.9145, 1.3141, 1.1886, -1.0175, -0.8201, -0.5497, 0.6542, -0.2508, -0.4493, 1.9002, 0.2564, -1.1076, -0.7136, -0.1829, 0.6965, -0.7912, 0.486, 1.8121, -0.624, -0.952, -0.6429, 0.3018, 0.3256, -0.8692, 1.4582, 1.0871, -1.0775, -0.7796, -0.4738, 0.6701, -0.3285, -0.3364, 1.941, 0.0728, -1.1212, -0.6855, -0.0934, 0.6463, -0.8211, 0.6521, 1.7361, -0.7547, -0.9272, -0.6174, 0.353, 0.2335, -0.816, 1.566, 0.9339, -1.1551, -0.7401, -0.4182, 0.6705, -0.4104, -0.1834, 1.9578, -0.0755, -1.1124, -0.6243, -0.0397, 0.5891, -0.849, 0.8043, 1.634, -0.8706, -0.9097, -0.5569, 0.3968, 0.1431, -0.7261, 1.668, 0.7847, -1.1998, -0.7103, -0.3671, 0.6572, -0.4892, -0.0406, 1.9597, -0.2503, -1.1104, -0.5771, 0.0131, 0.526, -0.8426, 0.9583, 1.5347, -0.9849, -0.8425, -0.5136, 0.4433, 0.048, -0.6645, 1.7584, 0.6112, -1.2586, -0.6529, -0.289, 0.6505, -0.5505, 0.1244, 1.9567, -0.4204, -1.1152, -0.5413, 0.0632, 0.4809, -0.8307, 1.1042, 1.4286, -1.1018, -0.8059, -0.4681, 0.4724, -0.0422, -0.5535, 1.8428, 0.4345, -1.2599, -0.5955, -0.2317, 0.608, -0.6055, 0.2718, 1.9279, -0.5728, -1.1026, -0.5082, 0.1357, 0.3999, -0.8141, 1.2356, 1.3065, -1.1762, -0.7604
|
| Instructions |
This is a sampled audio waveform created by summing pure sine waves. Each sine wave has a rationally-related frequency (consonant musical interval). To decode:
1. Compute FFT of the waveform to find frequency peaks
2. Apply a Hann window before FFT to reduce spectral leakage
3. Sort peaks by frequency (low to high)
4. For each adjacent pair, compute: semitones = 12 * log2(f2/f1)
5. Round semitones to the nearest integer
6. Map each semitone count to a letter using the table
Concatenate letters in order.
WARNING: Noise floor is present (0.01). Filter frequencies with magnitude below the noise floor estimate.
|
| Semitone To Letter |
{
"0": "A",
"2": "B",
"3": "C",
"4": "D",
"5": "E",
"7": "F",
"8": "G",
"9": "H",
"10": "I",
"11": "J",
"12": "K",
"14": "L",
"15": "M",
"16": "N",
"17": "O",
"19": "P",
"21": "Q",
"22": "R",
"24": "S",
"26": "T",
"28": "U",
"29": "V",
"31": "W",
"33": "X",
"35": "Y",
"36": "Z"
}
|
| Hann Window Formula |
w[i] = 0.5 * (1 - cos(2*pi*i/(n-1)))
|
| Fft Tip |
Sample rate = 4000 Hz (Nyquist = 2000 Hz). All signal frequencies are between 80 Hz and 1900 Hz.
|
| Hint |
4 frequencies → 3 semitone intervals → 3 letters. Apply Hann window, FFT, find peaks, compute log2 ratios.
|
| Answer Format |
single lowercase letter
|
author's note: Pool fill: wave-superposition diff 4
— website sponsored —
[ ad space ]