Skip to content
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

Open
andrew-kzoo opened this issue Mar 24, 2014 · 5 comments
Open

HTML5 Audio Modem or Everything Old is New Again #2

andrew-kzoo opened this issue Mar 24, 2014 · 5 comments

Comments

@andrew-kzoo
Copy link

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?

@andrew-kzoo
Copy link
Author

Wow! It appears @NeoCat implemented something four years ago: https://github.com/NeoCat/FSK-Serial-Generator-in-JavaScript

@andrew-kzoo
Copy link
Author

@cobookman
Copy link
Owner

I did notice the FSK modem output through the headphone jack to a micro-controller.
Hence why I have yet to add the 'output' aspect to the MicIO library.

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.

@kamalmostafa
Copy link

@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.

@andrew-kzoo
Copy link
Author

Thank you @cobookman and @kamalmostafa for your informative responses!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants