Op 24 mei vorig jaar werd een testbericht uitgezonden vanuit een baan rond de planeet Mars. Een en ander gebeurde ter voorbereiding op de dag dat we daadwerkelijk een buitenaards signaal ontvangen. Eerder dit jaar werd de boodschap eindelijk ontcijferd.
Trace Gas Orbiter:
https://exploration.esa.int/web/mars/-/46475-trace-gas-orbiter
A Sign In Space:
https://asignin.space/
Can You Decode an Alien Message?
https://www.scientificamerican.com/article/can-you-decode-an-alien-message/
Decryption of Messages from Extraterrestrial Intelligence Using the Power of Social Media - The SETI Decrypt Challenge:
https://arxiv.org/abs/1706.00653
Testing SETI Message Designs:
https://arxiv.org/pdf/0911.3976
YouTube over het bericht van Daniela de Paulis:
https://www.youtube.com/watch?v=gly2NoqRFi0
SETI Live: A Sign in Space - Simulating First Contact:
https://www.youtube.com/watch?v=zgQq36IR-Lk
De originele boodschap van de Trace Gas Orbiter (binair):
https://github.com/BatchDrake/ASignInSpace/blob/master/Candidates/artifacts/data17.bin
De originele boodschap van de Trace Gas Orbiter (text):
https://github.com/BatchDrake/ASignInSpace/blob/master/Candidates/artifacts/data17.txt
Discord van A Sign In Space:
https://discord.com/invite/2upxzmZkqY
Arecibo message:
https://en.wikipedia.org/wiki/Arecibo_message
Phase Shift Keying (PSK):
https://en.wikipedia.org/wiki/Phase-shift_keying
Python script om de boodschap hoorbaar te maken op een enigszins wetenschappelijk verantwoorde wijze:
# Sonification of the TGO message.
# Hens Zimmerman, 18-11-2024.
# There exist two equal length wav files:
# 1.wav is a short beep
# 0.wav is silent
import wave
# Open and read original text version of the TGO message.
# https://github.com/BatchDrake/ASignInSpace/blob/master/Candidates/artifacts/data17.txt
with open('data17.txt') as f:
msg = f.read()
# The whole beepy sonification will be constructed here.
data = []
# Read the two sound files into buffers.
w = wave.open('0.wav', 'rb')
zero = [w.getparams(), w.readframes(w.getnframes())]
w.close()
w = wave.open('1.wav', 'rb')
one = [w.getparams(), w.readframes(w.getnframes())]
w.close()
# Append a beep for every '1' and silence for every '0'.
for c in list(msg):
if c == '1':
data.append(one)
elif c == '0':
data.append(zero)
# Write the output file to disk.
output = wave.open('sonification.wav', 'wb')
output.setparams(data[0][0])
for idx in range(len(data)):
output.writeframes(data[idx][1])
output.close()
De Zimmerman en Space podcast is gelicenseerd onder een Creative Commons CC0 1.0 licentie.
http://creativecommons.org/publicdomain/zero/1.0