Soundpost
- 4 Devlogs
- 21 Total hours
Soundpost is A browser app that lets you send text messages encoded as audio chirps through the air, no internet needed.
Soundpost is A browser app that lets you send text messages encoded as audio chirps through the air, no internet needed.
huge session today, mostly spent on making the thing look like chatgpt didnt make it (does it really look like ai? i might be going insane) anyways, i rewrote most of the css. the old version had this weird thing where every section was perfectly spaced and evenly padded and apparently looked like a template when i asked my friend to critique.
also fixed a few things i noticed while testing:
might ship after this
spent tongith on the pretty ugly stuff. decoding from mic wokrks now but testing it was pretty bad becuase i had to send chirps across the room like an idiot, so the wav roundtrip finally is good. found out picking the same file twice does nothing becuase the input never resets.
not redesigning tonight but i did clean up the status messages so they sound more like me since i dont sound like me to other people. if it still loks like ai i really dont know what to do the decoder works and thats what matters.
next: fixing the bad chrips instead of detecting them
spent the whole session on the decoder. it was the weak link and now it actually locks on.
biggest fix: sync. the old decoder basically guessed where a message started, so if it missed the first chirp everything after it was garbage. now every message starts with 3 leader chirps (above every letter frequency so they can’t be confused with real chars) and the decoder counts the rising edges before it arms. doesn’t hear 3, doesn’t read anything.
added a checksum too, one extra chirp at the end, it’s just the sum of every char’s position in the tone table mod the table size.
then 2x mode: a checkbox that sends every char twice. leader count changes to 5 so the decoder knows the mode from the count alone before any chars arrive.
also added save wav + decode from wav. encode a message, save it as a file, feed the file back into the decoder. means i can test the decode path from recordings without needing two devices in the same room.
still can’t fix a bad chirp, only detect it. that’s the next session.
while i was reding replies from my orrery i was told my website looked like ai, so i tried improving this one (surely its better???)
almost forgot to create the proj and link to stardance lol so big devlog
What’s in the v1:
Where it’s at right now:
It works in a quiet room, short messages, close to the mic. The decoder is kinda bad no sync preamble yet, so if it misses the start of the message it just loses everything. That’s the gap im filling today
Where it’s heading: