Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: please review my technology.
25 points by casta on May 29, 2009 | hide | past | favorite | 25 comments
Thinking about the latest video streaming news, I thought about a feasible way to reduce the costs related to video distribution.

I wanted to use p2p to reduce bandwith while retaining a simple user experience, staying in the browser. The only feasible solution I saw was to use a Java applet, Although it wasn't maybe the best option from the user experience perspective, I have to admit the latest JVM update has reasonable startup time and I also saw some users that didn't even realize that it was java (that's good).

If you want to see the result, you can take a look at a few samples here: http://www.bitlet.org/video

Please note that data is downloaded via bittorrent, if you have it blocked by a firewall, you won't be able to see anything :°(

I'd really like to know what you think about the product, what you would change, any feedback, idea, or critic.

Thank you



Out of curiosity, why did you use Java rather than Flash/Flex? Do you know that Flash 10 has some p2p distribution technology built in?

More info at: http://whydoeseverythingsuck.com/2008/05/flash-10-p2p-and-cd...


Some thoughts:

1) Being forced to click "Trust" just to watch a video is pretty bad, and would turn away many of your users.

2) Having an alert box "Are you sure you want to leave this page?" is also pretty bad, and unnecessary.

Overall, I can see the value that this technology gives to you (less bandwidth). But what value do you give to the consumer? Why would I want to endure the various hassles of this site, and give up some my scarce upstream bandwidth, when I could just go to Youtube or Vimeo instead?


Thank you for sharing your thoughts.

1) You're right: It's bad, but in order to open connections to different clients it needs a signed applet. I also considered a custom plugin but I thought forcing a user to install it could be ever worse. Do you have any better idea?

2) True, will remove it.

I think reducing publisher's costs could lead to benefits even for consumers, I'm thinking about hd videos.


Dont forget many ISP's HATE torrenting and P2P. I ran a small ISP in our village a year or so back before BT got of their bums and 90% of the BW was used by 5% of the users - through torrenting. It really hammers a network.

If you employed this technology & it took off I suspect you would be faced with very angry ISP's who may well ban access from their networks.

Plus of course it eats right into the users BW - they theoretically will upload more than they download and with limited BW allowances people could easily start gettign traffic shaped without even knowing why!

That said it's a neat solution to the BW problem.. something of a catch 22.


Bittorrent doesn't eat bandwidth, stupid users who can't configure their torrent clients properly eat bandwidth.


nah, it really does :) think how much outbound data there is, it really fouls up the local part of the network.


Amount of outbound data? If you're sharing a video, the outgoing stream should be equal to the incoming stream (you're downloading from one place and uploading somewhere else simultaneously). On average, peers must upload exactly as much as they download.


Technically it is zero sum, but bittorrent prioritizes peering based on how fast your internet connection is. So somebody on dial-up internet probably isn't going to upload to anyone, while someone who has high speed internet is going to upload to many people. So somebody with high speed internet access might upload twice as much data as they downloaded.

And while I don't think ISPs really care about you maxing out a phone line, they will notice you maxing out a broadband line. And bittorent will do that.


yes but generally you upload simultaneously to several people - that has a big impact (less so on BW but on load there). Plus if you have multiple prior downloads (obviously not so applicable here) then it starts ro add up if your seeding them.

Ask any ISP :) P2P sucks for them.


For 1, I don't know of any good workarounds. I think it might be wise to have an intermediate page that says: "You are about to see a dialog box that looks like this, click on 'Trust' when you see it". That way fewer people will be scared off. Having a "tutorial" page is pretty common in other websites that have some kind of trust/installation process.


Youtube still burns millions in traffic costs every day, so I think your technology really makes sense. But I would rather try to perfect it and then sell it to one of the big video sites, than try to start a new video site on my own.


Takes a very long time to download and there is no progress bar that tells me how far along it is. The lack of a progress bar makes it bad. I have no idea if this will take 2 days or it will be done in a minute. Pushing play also locked up my browser.

And why use Theora? Most clips are MPEG-4, reencoding to theora will cause quality loss, so your video player will always be associated with poor quality.

You have a very good idea, but there are a few major flaws.

What applet are you using? Did you program it yourself?


I know that lack of a progress bar is a problem, but please note that it's a prototype I built in my spare time.

I used theora because I wanted a free video codec.

The bittorrent client is coded by myself with help and support from a friend, the video codec is jheora from fluendo, it also uses jogg and jorbis from jcraft.



It might be worth considering why the BBC tried, and then abandoned this approach with their iPlayer application. More details from the link below, but the bottom line is that consumers didn't like having their bandwidth allowance used up and CPU loaded by having to act as servers...

http://www.bbc.co.uk/blogs/bbcinternet/2008/12/introducing_i...


I think this is an interesting technology. There are some naysayers here, but I think there are some cases that users will accept signing statements and the like for this.

A public site like youtube or even Hulu wouldn't be able to make it a default client with those issues given how well Flash works, but I can see some other sites living with those prompts, especially if they offered low-res Flash and hires Bitlet.

Especially in a private account situation like Netflix, users would be more likely to accept those kind of prompts to see the videos they want in higher quality.

I'm impressed with how well it worked for me, though it's difficult to tell how much of the viewing was improved through peer-to-peer.

Good work, I think you could build something around this with the right contacts and impressive test results to show the real benefits.


> Thinking about the latest video streaming news, I thought about a feasible way to reduce the costs related to video distribution.

(1) Do you think that this idea is new?

(2) If it is not new (and it isn't), why did previous efforts seemingly fail? Is your effort going to have those problems?

WRT Flash 10, it's tied to Adobe servers, at least for now. On the other hand, it's likely to be installed on a large fraction of the web.

I'm somewhat surprised that Silverlight doesn't (yet?) have P2P support that is server agnostic. (This would give developers/sites a reason to use silverlight instead of flash.)

I keep expecting a "not-IE" browser to include a P2P javascript extension.

If either happens, I expect that the other will happen in short order.


Have you looked at also making the Java applet support bittorrent for just file downloads itself? If no one is doing that already, a really slick looking web interface for file downloads might get more corporations interested in using BitTorrent for their own file distribution.



You need to get out and start showing this to people. You may even want to start talking to some of the CDN companies to see if they want to license this. Some of them already have other approaches for P2P bandwidth sharing, but it would be another bag of tricks with a decent user experience that companies would consider for large files.

Even if the CDN people don't like this, half the torrent sites out there would be better served if they had a tool like yours for quick downloads of the torrent.

I'd really focus on selling the improved user experience side, though. Ideally the end user doesn't even know that a .torrent is involved in the download. It's just another background/confusing aspect that users don't need to see.

I think companies will need a way to configure a fallback option for when BT isn't working for the user, but I think that's all just features that could eventually be worked into the mix pretty well.


Why use bit torrent? It shuts down and reopens connections after each chunk meaning there is a good bit of overhead that could be avoided. Second using bit torrent doesn't play well with some home routers for the same reason.


BitTorrent will usually always work for downloads no matter what. It's the seeding that doesn't work too well with home routers that doesn't have the correct port forwarding or Upnp setup.

It's a hybrid between BT and S3. The S3 will keep feeding the data down if there are peers or not, but if there are peers already watching, then it will utilize them as well.

I don't think this will work well for YouTube where there are millions of small videos, but for large Video distribution like NetFlix and Hulu, would be perfect.


  >BitTorrent will usually always work for downloads no matter what.
Not quite, some fairly popular home routers have issues where they don't have enough ram and crash rather than loose NAT data. Which really isn't a problem until you run a (stupidly) high connection protocol like bit torrent.

So yeah it works if they reboot their router and restart the download but that isn't what you want to do in a youtube like app.


I think the idea is sound.

However, my experiences with Java have been so consistently horrible that I won't bother to try it as is. If you make a native application that I can install, and make sure the download is a few megabytes at most, I will try it. It sounds like a good idea.


see http://www.octoshape.com - CNN used it to stream the Obama inauguration.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: