Cory Menscher writes:
As part of the NYU ITP "5in5" event this week, I created the Asterisk File Transfer Protocol. Using the CSound audio programming language, I wrote a PHP script that converts a binary file into an audio WAV file based on the "Kansas City standard", created in 1975, for transferring binary files via audio cassette. However, instead of a cassette, a user can dial my extension on an Asterisk VoIP PBX server and "retrieve" a file (an 8kb jpeg image) at 300 baud over POTS. You can access the file by dialing (212) 796-0729 ext. 160.
In reality, the audio quality of the GSM codec I was limited to by the server probably precludes one from ACTUALLY downloading the file, but it's still fun! If you want to hear a higher-fidelity version of the file you can access it at http://www.menscher.com/itp/blogmedia/aftp.mp3.
Corey posted the source he used to generate the encoded WAV from an image, so you can see the nuts and bolts of using CSound to generate audio data in PHP. It'd be neat to see the decoder half of this, but it's been left as an exercise for the reader.
I have fond memories of saving and loading files from a C64 datasette drive like this, so it's pretty cool to see this sort of thing done in PHP.
































Hey thanks for listing this! I would have included the generated .sco (score) file as well...but it's about 2mb of text! You can download it at http://www.menscher.com/itp/blogmedia/aftp.sco.txt.
Reply to this comment
See now that there is an asterisk link project for hamradio, I am waiting for someone to use asterisk to trasmit files like the New (and NOT opensource) DSTAR stuff....
Reply to this comment