[vorbis-dev] Peer-to-peer audio codec

HALL CYRUS P cyrus.hall at Colorado.EDU
Wed Apr 3 15:58:14 PST 2002



A friend and I were recently talking about the possible
downfall of Internet radio, and as everyone seems to these days, decided
that a nice solution would be to set up a P2P broadcasting solution.
However, streaming has a completely different set of requirements than
file sharing, with bandwidth and QOS become much larger issues.  As such,
we started to realize that a new audio compression scheme might be needed
for such a network.

As an open source developer and user, I  thought of the immediately Vorbis
project, and its developers.  As such, I thought I'd run this idea by the
list, and test it for feasibility.  the basic idea follows:  Most
broadband users are on cable modems, which unfortunately limit up-stream
bandwidth to a fraction of what many DSL users get to experience (I know
the technical issues the cable companies always taut, however, I've always
thought of it as a way to limit personal publishing ability).  As such, a
P2P radio broadcast network could not use the upstream of such users,
putting the burden of distribution on a few, and thereby defeating the
major point of the whole thing P2P in the first place.

If there was a way to break up the audio streams and re-sync them on the
listeners side, this problem could be avoided (maybe).  For example,
imagine a 128 kbps stream (OGG, of course).  A lucky cable modem user
could barely support one user at such a bit-rate.  However, if the stream
was split into left and right channels, each one a different stream, a
listener could get one channel from one location, the other from somewhere
else.

Now splitting stereo channels doesn't seem to get one very far.  But what
about some sort of a "progressive" audio codec?  Let me at this point
state I have no real experience with compression, so all of this off the
hip.  A progressive audio codec that could "build" itself up would be a
very handy (and cool) solution to the problem.  A stream could be broken
into multiple levels, where each level would add more definition to the
previous.  For example, if each level took 16 Kbps of bandwidth, a user
who had been able to find a source for both level 1 and 2 would be able to
listen to the stream as if it was at a quality of 32 Kbps.  maybe the
scaling wouldn't be that linear, I don't know, but I think you get the
idea.

If a P2P network could use such an audio codec to distribute its streams,
it balance load and demand (number of higher quality
"levels" for each stream goes down as demand goes up) and avoid the
death of Internet radio.  Both of which are important. ;-)

This idea doesn't really fit into OGG at all, I understand that.  However,
I was hoping that maybe some of you would have a more technical base in
the field than I, and could point me in the right direction to start
researching such.

thanks,
Cyrus

<p>--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Vorbis-dev mailing list