Ggwave: Tiny Data-over-Sound Library
github.com
github.com
If anyone wants details: I had a smartphone taped to the back of the slate with a UI to enter shot/scene/take and when I clicked the button it would transmit that information along with a timestamp as sound. This sound was loud enough to be picked up by all microphones on set, including scratch audio on the cameras, phones filiming BTS, etc.
In post-production, I ran a script to extract this from all the ingested files and generate a spreadsheet. I then had a script to put the files into folders and a Premiere Pro script to put all the files into a main and a BTS timeline by timestamp.
Yes, timecode exists and some implementations also let you add metadata, but we had a wide mix of mostly consumer-grade gear so that simply wasn't an option.
I posted a short demo video on Reddit at the time, but it got basically no traction: https://www.reddit.com/r/Filmmakers/comments/nsv3eo/i_made_a...
It was a "Bob the Builder" play set and when you wheeled around a digger, etc the main base would play a matching sound. I immediately started investigating and was impressed to see no batteries in the movable vehicles. I realised that each vehicle made a clicking sound as you moved it and the ID was encoded into this which the base station picked up. Pretty impressive to do this regardless of how fast the vehicle was moved by the child.
Probably not, eh?
"Frequency of the note" in your next comment clears it up. It probably was that, you're right.
DTMF has a special place in the phone signal chain (signal at these frequencies must be preserved, end to end, for dialing and menu selection), but I wonder if there's something more efficient, using the "full" voice spectrum, with the various vocoders [3] in mind? Although, it would be much crepier than hearing some tones.
[1] Touch tone based data communication, 1979: https://www.tinaja.com/ebooks/tvtcb.pdf
[2] touch tone frequency mapping: https://en.wikipedia.org/wiki/DTMF
[3] optimized encoders/decoders for human speech: https://vocal.com/voip/voip-vocoders/
To get started.
If you need more speed you need to convince me you won't abuse my ham spectrum but winlink, pactor, and some very slick 16QAM modems exist. 300baud to 128kbit or so.
Hatsune Miku at the speed of a horserace commentator.
(the "vocaloids" are DAW plugins made from chopped up recorded phonemes; Hatsune Miku is voiced by Saki Fujita. Still sounds very inhuman)
At the beginning of the recording it plays the code "xrvideo" which in the second stage of merging the video it looks for the tag in both streams and matches them up
It is also about the same bitrate as RTTY which was invented in 1922 and is still in use by radio amateurs round the world.
Here is what that sounds like
https://youtu.be/wzkAeopX7P0?si=0m0urX7sDp6Jojqe
Not as musical but quite similar
There's also V.xx modem standards that are kinda dependent on the characteristics of the phone lines, but might work for audio at a distance?
you can package some text alongside, but fundamentally all amateur operators are looking for is a SYN / ACK with callsigns.
Does Ggwave use a simple FSK-based modulation just because it "sounds good"? Would it be possible to use a higher order modulation, e.g., QPSK, in order to achieve higher speeds? Or would that result in too many uncorrectable errors?
it is a software modem using FSK, but i don't know anything else about it. I am annoyed because i could have had this idea; i'm a HAM who really only cares about "Digital Modes", and have software modems capable of isdn speeds over "AF"
The demos sounded like little R2D2 blips and sputters.
Perhaps a researcher for Microsoft or something.
Anyone know the paper I'm talking about? I can't find it.
https://github.com/quiet/quiet-js
Remember seeing them quite a bit a few years ago.
Just listening to the samples here they're really not that far off. Could probably use a little softening at the edges on the higher tones but it's nowhere near as unpleasant as it could be.
This rules.
I could not get to work on a project using this then, because of college. But now I am integrating this in my startup for frictionless user interaction. I want to thank the creators and contributors of GGWave for doing all the hard work for these years.
If I find something to improve I'd like to contribute to the codebase too.
https://audioxpress.com/news/data-over-sound-pioneer-chirp-a...
Seems to have been euthanized.
This is also how modems used to work, for the young'uns who do not know this.
they still do, but they used to too.
1200 bps V.23 and Bell 202 are still in use in radio telemetry applications.
I use it to connect to a Windows machine that runs a large piece of machinery in a remote location.
My dry cleaner's credit card reader, too.
Uh, don't try and find this if you're going to use it to pollute the spectrum i am licensed for.
It provides a simple interface for encoding and decoding messages, with optional support for PyAudio and NumPy for handling waveforms and playback. Feedback and contributions are welcome.
- GibberLink [AI-AI Communication] | https://news.ycombinator.com/item?id=43168611
I could not get this to work unless I played the video on one device and opened it on another. While trying to get it to work from my MBP, waver's spectrum view didn't really show much of anything while the video was playing. Is this the mac filtering audio coming into the microphone to reduce feedback?
Perhaps a lesson from Ron McCroby would be a start: https://m.youtube.com/watch?v=baEoyXoDVc4
pfft, it may even have multiple channels one over another, so one can tune to one or another (if knows how to decode)..