Bram Cohen (bramcohen) wrote,


A few people have asked me about adding streaming ability to BitTorrent.

Streaming could be supported in the current protocol (which makes me a little puzzled by the recent swarmcast announcement stating that a new protocol is being pushed out specifically to support streaming). You 'just' request the next few pieces coming up first, and if you have the next few pieces request randomly.

I haven't worked on streaming for several reasons. First, there have been plenty of performance optimizations to do even without working on streaming, and enhancements to core functionality take priority. Second, the sweet spot for streaming is fairly small. Lots of formats can't be displayed in real time at current speeds of net connections, and among the ones that can it's frequently not much longer to wait for the entire thing to download than to wait for a reasonable size of buffer to accumulate. The one example which clearly works is low quality sound files of an hour or so in length, but that's a fairly niche market. Third, there's the whole issue of how to hook into players to have them use the streamed content. My experiences with third party software have been universally nightmarish, so I'm not very keen on dealing with those problems.

I'd also like to point out the difference between radio-style streaming and play on demand. A lot of people think because of the history that being stuck on a TV schedule is what people want, but in fact people vastly prefer a tivo/netflix interface to a real-time streaming interface, and frequently completely dump the real time when the other one becomes available. Play on demand is when there's a specific file which someone might want to watch and it starts playing immediately when they click on it. That's the vast bulk of what users want. Tapping into whatever's going on in a live stream is a niche market.
  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded