-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HTML5 Audio Modem or Everything Old is New Again #2
Comments
Wow! It appears @NeoCat implemented something four years ago: https://github.com/NeoCat/FSK-Serial-Generator-in-JavaScript |
Also @sixteenmillimeter implemented https://github.com/sixteenmillimeter/Javascript-FSK-Serial-Generator-for-Mobile-Safari And @SimonWaldherr implemented https://github.com/SimonWaldherr/FSK-Encoder.js Incredible and impressive work! |
I did notice the FSK modem output through the headphone jack to a micro-controller. However parsing FSK modem signals with javascript is very difficult due to its async nature. Once I get the microController to HTML5 bus to a stable level, I'll probably fork and merge one of the FSK libraries. |
@andrew-kzoo: Generating FSK is easy, but (as mentioned by @cobookman) decoding FSK is hard. This is why you'll find lots of implementations of FSK encoders, but no so many decoders. Minimodem's decoder relies on a Fourier transform library to prepare the audio data for spectrum analysis. This method enables some fancy functionality in minimodem, but it is probably not the easiest way to implement a basic FSK decoder. I have no plans to port minimodem to JavaScript. |
Thank you @cobookman and @kamalmostafa for your informative responses! |
I stumbled on this project through a ⭐ from @zemirco...
I'm curious if it is possible to port http://www.whence.com/minimodem/ (http://github.com/kamalmostafa/minimodem) from C to JavaScript (or some subset of functionality) to allow communication between a browser and a device connected to the browser's host system's hardware audio port.
Do you have any thoughts on this @kamalmostafa?
The text was updated successfully, but these errors were encountered: