V1 Chapter 9
During this period I managed to get a working SML and WAV file connection moved SETI Net to a commercial server
39. Move SETI Net to a commercial server (2003-05-28 to 2003-05-31)
I have been running SETI.Net on my home computer for over a year now but its time to make a change. Up to this point I had a service host my domain (SETI.NET) and route all the web requests to a second server that belongs to my ISP (Time Werner and Road Runner). When you click on that page it redirects the requests once again this time to my home machine. When ever my home machine IP address changed all I had to do was up date the Road Runner home page with the new IP and things kept on chugging along. The problem was that the pages sent back to the requester were slow. Road Runner is an asymmetrical system with very fast download (about 3 M bit) but slow upload (about 300 KB). This make the system response to the user very poor.
I copied SETI.Net to iPowerWeb where they provide fast access, decent space (500 Meg) and low price (about $8/month). Then all I had to do was access my account at Network Solutions and set up the pointers to the iPowerWeb Domain Name servers and I'm back in business. Same thing for my email address. iPowerWeb catches anything sent to <anyone>@SETI.Net and reroutes to what ever ISP I'm using at the time (currently CopperNet).
This way I can move my site pretty much anywhere I want depending on what I need and simply change the pointers to where ever it winds up. It could be on my desk machine one day and coming to you from India the next - who cares.
Now I can be completely out of the clutches of a particular ISP or Web hosting service. I can come and go as I please. Road Runner raised there price so I'm gone. If I hate AOL - so long. Life is sweet...
38. SML and WAV file connection (2003-05-11 to 2003-05-25)
I have decided that the best way to handle the SML associated with each data collection session is to embed the SML directly into the data file. So far I have the ability to create the SML from a rather complex set of drop down menus and radio buttons and I have found a way to write the audio data from the receiver directly to a WAV file. Now I want to combine the two.
Every WAV file is created to a format called RIFF. This is a Microsoft specification where various 'chunks' of data are defined. In a WAV file the first chunk is defined as 'RIFF', the second defines the type of data, in this case 'WAVE'. The third chunk is the 'data' where the actual A-to-D output that makes up the music or in this case receiver audio is recorded.
I have found a way to insert a 'SML ' chunk in-between the WAV and data chunks that can contain the text of the SETI Markup Language.
Using this technique a normal WAV file can be sent to anyone capable of playing it back to there SETI system using the normal tools such as Microsoft Media Player, WinAmp or others. These tools 'should' be designed to skip over chunks that they don't recognize, the SML chunk in this case, and play only those that they understand. If the Argus station also has a SML reading tool it will be able to know the exact condition of the remote station when the data was collected.
This way a WAV file can be put in context. You can see where the antenna was pointing, what the front end gain was, where the Argus station is located and, of course, the exact date and time of the collection.
The current problem is that I'm not sure how transparent the SML chunk is to the various playback engines. During development I have found that Winamp3 works fine but the version of MS Media player that I was using fails when it attempts to play the file back.
(this test completed) This file has 30 seconds of the output of my receiver and the Weak Signal Source. During the last 10 seconds I move the receiver up band until the WSS comes down to about 400 Hz. You should hear this signal. If you look at the file with WordPad you should see the SML text as well.
Resolved - The latest version of the SML Generator will attach SML tags to an existing WAV file. Test it out and send me a few example files.