Re: Wanted: C++ Audio Programmer For Exciting Project Team

googlemike_at_hotpop.com
Date: 03/01/05


Date: 28 Feb 2005 16:07:00 -0800

My intent initially is to do pre-recorded, non-live streams, then get
this transferred and replayed. Next, we would move to live streams.
Eventually we want to move to live streams but in a P2P model this may
take awhile to work out, which is why I wanted the first position with
pre-recorded stuff.

I don't think the idea is as exciting until one moves into live
streams, but making available pre-recorded streams is also exciting.
This permits a website with very little hosting bandwidth to make
available the live or pre-recorded stream for download and playback.
Then, as you listen to it, you essentially are making it available for
others to stream from you. So in this manner, even the mild mannered
website could host live or non-live audio streams and have the
"appearance" of having the bandwidth to support hundreds of thousands
of users. As the excitement stirs up on a particular audio stream, so
do the fan base, and thus the load is handled.

As for your dial-up, the client software would automatically detect
that you are dial-up and would force you to listen-only and not even
bother making you a host of other streams. But for people on ADSL,
cable modem, or other high speed bandwidth, a short speed test would be
done to see if you could handle hosting a few streams simultaneously,
while not hindering your ability that much to browse the web or read
email.

Let me give you an example of how a website might host this material.
If the audio stream ends in ".lvas" (just to come up with a dummy
extension here), then it's live audio. If the audio stream ends in
".pras", then it's pre-recorded audio. When you click on this, Mozilla
would look for a helper app for this extension type. If you installed
our helper app, then it would automatically see the URL for the audio
stream and see which host was the most available on the Internet to
provide that stream for you -- not necessarily the website. If that was
found, then your client software uses this. Your client software also
detects if you have a secondary and tertiary stream in the event the
primary stream gets hung up. Meanwhile, your client software becomes a
server (if you're not dial-up and have not used a command-line switch
to opt out and you have the available bandwidth) to host streams of
this same material for other users. Now, if no available host was found
for this stream, then it assumes the website is the host and tries to
hit the website for the bits to download and listen to this stream of
audio.