PUZZLE #5414: Wave Superposition Cipher (diff 2)
A sampled audio waveform containing 3 superimposed sine waves. Perform spectral analysis (FFT) to find frequency peaks, compute semitone intervals between adjacent peaks, and map each interval to a letter (2 letters).
DATA
| Difficulty |
2
|
| Sample Rate |
4000
|
| Duration |
0.25
|
| Num Frequencies |
3
|
| Waveform |
1.8641, 0.665, 1.1609, 1.7958, 0.009, -1.2944, -0.0684, 0.3677, -0.9077, -0.518, 0.9432, 0.008, -1.6228, -0.8648, -0.0858, -1.1664, -0.8735, 1.5014, 2.1062, 0.9814, 1.4297, 1.9864, -0.0922, -1.9918, -1.2953, -1.0183, -2.1619, -1.3394, 0.9757, 1.0188, -0.0001, 0.9259, 1.5247, -0.1906, -0.8735, 0.6855, 0.8881, -0.3592, 0.2587, 1.3409, -0.1857, -1.8451, -1.0908, -0.7722, -1.9899, -1.2598, 1.2522, 1.6974, 0.9281, 1.9001, 2.3908, 0.2041, -1.3231, -0.5385, -0.7459, -2.0882, -1.157, 0.7676, 0.2625, -0.666, 0.4767, 0.8669, -0.7624, -0.7957, 1.0742, 1.164, 0.1849, 1.1624, 1.9354, -0.0207, -1.6061, -0.9533, -1.2115, -2.6156, -1.6115, 0.7857, 0.9635, 0.5421, 1.9635, 2.3792, 0.2696, -0.7003, 0.253, -0.2889, -1.6263, -0.5534, 0.8944, -0.1779, -1.0787, 0.0522, 0.0359, -1.5635, -1.0394, 1.0135, 1.0396, 0.4974, 1.9213, 2.4848, 0.3331, -1.0059, -0.457, -1.2851, -2.8396, -1.694, 0.3534, 0.143, -0.0198, 1.6666, 1.9104, -0.0256, -0.3481, 0.8142, 0.1134, -0.9748, 0.3336, 1.3309, -0.2071, -1.0682, -0.1251, -0.7021, -2.345, -1.4364, 0.5862, 0.5131, 0.4637, 2.3222, 2.7436, 0.6324, -0.2728, 0.2377, -1.0359, -2.6032, -1.3719, 0.173, -0.4944, -0.511, 1.1964, 1.1094, -0.6543, -0.3649, 0.9597, 0.2355, -0.3895, 1.2538, 1.9048, 0.1053, -0.619, 0.0569, -1.1332, -2.8487, -1.7442, 0.0069, -0.2576, 0.1287, 2.2929, 2.5631, 0.6645, 0.3266, 0.8762, -0.6466, -2.0141, -0.6685, 0.3401, -0.7523, -0.6965, 0.7998, 0.2187, -1.439, -0.6865, 0.6566, -0.0379, -0.0789, 1.9415, 2.367, 0.557, 0.1216, 0.55, -1.1793, -2.9095, -1.7487, -0.4673, -1.0146, -0.3218, 1.926, 1.9542, 0.3374, 0.5928, 1.2104, -0.3615, -1.3016, 0.239, 0.789, -0.5827, -0.4495, 0.6792, -0.4964, -2.121, -1.1163, 0.0362, -0.6607, -0.1194, 2.218, 2.4939, 0.9, 0.9005, 1.1627, -0.9253, -2.5208, -1.3559, -0.6405, -1.5, -0.6382, 1.4378, 1.0856, -0.2795, 0.4702, 1.0975, -0.3826, -0.7234, 1.0863, 1.3208, -0.1016, 0.1938, 0.9073, -0.8513, -2.4634, -1.4096, -0.6598, -1.4391, -0.4264, 2.0601, 2.1816, 0.9441, 1.4573, 1.6359, -0.5799, -1.8364, -0.6348, -0.457, -1.5559, -0.6113, 1.0763, 0.2198, -0.9811, 0.0651, 0.5575, -0.7825, -0.4621, 1.6244, 1.6864, 0.4623, 1.0452, 1.3954, -0.8127, -2.3462, -1.3777, -1.1763, -2.1062, -0.7905, 1.6053, 1.4911, 0.6369, 1.6259, 1.7471, -0.3859, -1.1085, 0.2055, -0.0213, -1.1854, -0.1605, 1.0182, -0.3896, -1.509, -0.4021, -0.2343, -1.4706, -0.5529, 1.7169, 1.6912, 0.8623, 1.8366, 1.928, -0.5065, -1.815, -0.9693, -1.3465, -2.4259, -0.9662, 1.0929, 0.6281, 0.0866, 1.3969, 1.4009, -0.517, -0.5877, 0.8971, 0.4468, -0.5477, 0.6287, 1.2957, -0.5955, -1.6553, -0.6908, -1.0169, -2.2256, -0.873, 1.392, 1.2777, 0.9364, 2.3241, 2.2501, -0.1626, -1.0643, -0.2954, -1.1568, -2.2858, -0.7757, 0.7653, -0.136, -0.4816, 0.9169, 0.6695, -1.0028, -0.4237, 1.2179, 0.7056, 0.1079, 1.5352, 1.7827, -0.412, -1.3492, -0.6424, -1.5468, -2.7816, -1.1951, 0.8285, 0.5534, 0.6728, 2.3819, 2.1722, -0.0161, -0.3606, 0.4121, -0.7487, -1.7406, -0.1856, 0.7683, -0.5694, -0.8177, 0.4247, -0.2345, -1.7128, -0.6081, 1.0798, 0.5941, 0.5444, 2.2867, 2.2467, -0.0044, -0.6868, -0.2482, -1.6928, -2.9335, -1.2841, 0.2823, -0.2477, 0.2149, 2.0493, 1.6488, -0.2088, 0.0623, 0.8919, -0.3566, -0.9883, 0.6744, 1.0925, -0.569, -0.7501, 0.1501, -1.0406, -2.4067, -0.9823, 0.5622, 0.1014, 0.6325, 2.6656, 2.445, 0.3824, 0.1042, 0.3439, -1.4855, -2.6187, -0.9975, -0.0181, -0.856, -0.1993, 1.5099, 0.8006, -0.7274, 0.094, 0.9573, -0.2086, -0.2906, 1.5594, 1.5782, -0.1984, -0.2584, 0.218, -1.5262, -2.8295, -1.3069, -0.1198, -0.6234, 0.4022, 2.5928, 2.2261, 0.5265, 0.7532, 0.888, -1.0999, -1.9422, -0.3483, 0.0377, -1.071, -0.3359, 1.0143, -0.1308, -1.4072, -0.2121, 0.5717, -0.4286, 0.1328, 2.2039, 1.9831, 0.3419, 0.5151, 0.5951, -1.6021, -2.8146, -1.3628, -0.7027, -1.3281, 0.0275, 2.1561, 1.5949, 0.3221, 1.0524, 1.1385, -0.7794, -1.1345, 0.4958, 0.3982, -0.8391, -0.0641, 0.7753, -0.8761, -1.9977, -0.6653, -0.1362, -0.9819, 0.1909, 2.4256, 2.0837, 0.7984, 1.3184, 1.1024, -1.3438, -2.3515, -1.046, -0.9791, -1.7551, -0.2472, 1.5717, 0.7149, -0.1766, 0.9359, 0.9507, -0.7326, -0.4601, 1.2763, 0.8748, -0.2721, 0.5869, 0.8804, -1.2431, -2.2638, -1.0196, -0.9229, -1.6849, -0.0451, 2.1962, 1.7702, 0.9693, 1.8875, 1.4881, -0.9558, -1.5915, -0.413, -0.879, -1.7434, -0.2108, 1.0943, -0.1531, -0.7766, 0.5024, 0.3405, -1.0439, -0.1131, 1.7449, 1.2221, 0.3995, 1.4348, 1.256, -1.1892, -2.0827, -1.0779, -1.5262, -2.2765, -0.3745, 1.6504, 1.0957, 0.7869, 2.049, 1.5307, -0.6846, -0.7891, 0.3377, -0.4949, -1.2915, 0.2244, 0.9134, -0.7523, -1.2256, -0.0299, -0.5192, -1.636, -0.1421, 1.7621, 1.2414, 0.9213, 2.2133, 1.6978, -0.8345, -1.4957, -0.7757, -1.7681, -2.5212, -0.5531, 1.0302, 0.2592, 0.3447, 1.7857, 1.1312, -0.7138, -0.2017, 0.9437, -0.0397, -0.5569, 0.982, 1.0764, -0.929, -1.3158, -0.415, -1.3654, -2.2979, -0.4352, 1.3522, 0.8666, 1.118, 2.6757, 1.9559, -0.4083, -0.6947, -0.2104, -1.6225, -2.3035, -0.3975, 0.5867, -0.47, -0.1423, 1.2398, 0.3568, -1.0872, 0.0101, 1.1836, 0.2444, 0.2076, 1.8479, 1.4712, -0.6908, -0.9715, -0.4827, -1.9475, -2.7692, -0.7696, 0.6927, 0.1955, 0.9626, 2.6906, 1.8391, -0.1532, 0.052, 0.3967, -1.2217, -1.6744, 0.1357, 0.4794, -0.8576, -0.4277, 0.6514, -0.5828, -1.6883, -0.1566, 0.9657, 0.1886, 0.7554, 2.5523, 1.8742, -0.1998, -0.2833, -0.2095, -2.1242, -2.8448, -0.9078, 0.0439, -0.5458, 0.5854, 2.2915, 1.2963, -0.2236, 0.5039, 0.789, -0.7973, -0.8316, 0.9278, 0.7135, -0.7955, -0.3368, 0.2592, -1.4154, -2.2866, -0.5507, 0.3663, -0.2291, 0.9439, 2.8755, 2.0445, 0.2957, 0.5243, 0.2709, -1.9162, -2.4585, -0.698, -0.3557, -1.0902, 0.2172, 1.6605, 0.4418, -0.6216, 0.5411, 0.7791, -0.5822, -0.0414, 1.7415, 1.1411, -0.3427, 0.1578, 0.2017, -1.912, -2.6315, -0.9331, -0.3999, -0.8714, 0.7888, 2.7339, 1.826, 0.5642, 1.1794, 0.7218, -1.4928, -1.7119, -0.1404, -0.3827, -1.2354, 0.0918, 1.0527, -0.4864, -1.1963, 0.2086, 0.3265, -0.7112, 0.4666, 2.3141, 1.5253, 0.3006, 0.9208, 0.4614, -1.975, -2.5545, -1.0784, -1.0642, -1.4937, 0.4542, 2.2115, 1.2153, 0.485, 1.4683, 0.9005, -1.0988, -0.8354, 0.6094, -0.0756, -0.9234, 0.3464, 0.6918, -1.2182, -1.7053, -0.3066, -0.4437, -1.1633, 0.5886, 2.4615, 1.6407, 0.8751, 1.7043, 0.872, -1.6729, -2.0405, -0.87, -1.4094, -1.8412, 0.1808, 1.5251, 0.3681, 0.0972, 1.3178, 0.6597, -0.9512, -0.0985, 1.3003, 0.3856, -0.2634, 0.9611, 0.6804, -1.5559, -1.9152, -0.7553, -1.2881, -1.767, 0.3842, 2.1515, 1.3693, 1.1674, 2.2436, 1.1888, -1.2084, -1.2371, -0.3501, -1.3537, -1.751, 0.1837, 0.9363, -0.4594, -0.4183, 0.8209, 0.0101, -1.1482, 0.2951, 1.6866, 0.7568, 0.5127, 1.7623, 0.9595, -1.4507, -1.6995, -0.9302, -1.9396, -2.2686, 0.0476, 1.5163, 0.7539, 1.0948, 2.3607, 1.1905, -0.8326, -0.3984, 0.295, -0.9794, -1.2178, 0.5603, 0.6466, -1.0098, -0.8145, 0.1956, -0.8799, -1.627, 0.2859, 1.6264, 0.8334, 1.1432, 2.4883, 1.3355, -1.0181, -1.0932, -0.7524, -2.211, -2.4344, -0.1765, 0.8003, -0.0157, 0.7369, 2.0328, 0.7731, -0.741, 0.2134, 0.8098, -0.4947, -0.397, 1.2456, 0.718, -1.1253, -0.8824, -0.3058, -1.7477, -2.1886, -0.0226, 1.1402, 0.5381, 1.4403, 2.8924, 1.5622, -0.4889, -0.2833, -0.3041, -2.0666, -2.1462, -0.0968, 0.2623, -0.6753, 0.2995, 1.3988, -0.0035, -0.9923, 0.4296, 0.9737, -0.1447, 0.4559, 2.0352, 1.0512, -0.8087, -0.5397, -0.5001, -2.3382, -2.5786, -0.4105, 0.4039, -0.0437, 1.3632, 2.8392, 1.4454, -0.1136, 0.4625, 0.2043, -1.6318, -1.451, 0.3427, 0.0739, -0.9903, 0.0273, 0.7018, -0.9348, -1.4847, 0.2387, 0.6919, -0.1075, 1.0863, 2.6642, 1.43, -0.2204, 0.1309, -0.3485, -2.5029, -2.5918, -0.6353, -0.3196, -0.6956, 1.0305, 2.3581, 0.926, -0.0598, 0.9, 0.5213, -1.1374, -0.5446, 1.0362, 0.2534, -0.8493, 0.0996, 0.1892, -1.7498, -1.9982, -0.2135, 0.0362, -0.4191, 1.3399, 2.9126, 1.6134, 0.3879, 0.911, 0.0295, -2.2549, -2.158, -0.5341, -0.7837, -1.1553, 0.6678, 1.6303, 0.1093, -0.3454, 0.9025, 0.4583, -0.823, 0.3038, 1.7562, 0.6629, -0.3075, 0.5533, 0.0137, -2.2162, -2.2855, -0.6868, -0.7807, -0.9554, 1.2204, 2.6934, 1.4386, 0.7745, 1.5302, 0.4061, -1.76, -1.3736, -0.0925, -0.8541, -1.22, 0.5109, 0.9154, -0.7731, -0.8325, 0.5089, -0.0304, -0.8359, 0.8569, 2.2445, 1.0687, 0.4351, 1.263, 0.1725, -2.2303, -2.1758, -0.9473, -1.4873, -1.4814, 0.8837, 2.0874, 0.8914, 0.8049, 1.7716, 0.541, -1.2658, -0.467, 0.5473, -0.5583, -0.8284, 0.7056, 0.4476, -1.4527, -1.2864, -0.0958, -0.8251, -1.1703, 1.0005, 2.316, 1.2412, 1.1138, 1.9874, 0.5119, -1.8555, -1.6478, -0.8646, -1.8591, -1.7461, 0.5692, 1.3116, 0.117, 0.5037, 1.5569, 0.2827, -0.9993, 0.2898, 1.1435
|
| 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.
No noise — peaks should be clean.
|
| 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 |
3 frequencies → 2 semitone intervals → 2 letters. Apply Hann window, FFT, find peaks, compute log2 ratios.
|
| Answer Format |
single lowercase letter
|
author's note: Pool fill: wave-superposition diff 2
— website sponsored —
[ ad space ]