views:

105

answers:

3

Hi,

this is my first time doing a gallery of videos using ASP.NET, I believe there are many articles on the net regarding this, but I would like to see some recommendation and different point of view :

  1. what are the tools used?
  2. how to not allow user to download a video?
  3. what the difference between vimeo,dimecasts.net choice , what about other choices?
  4. Streaming?
  5. any valuable information will be appreciated.
+5  A: 

Dear sam you ask too many different question. I will try to give some answer to what I know.

First you need to select the way you go to show your video. One popular way is the flash. YouTube use flash.

  • So the tools that you can use is the one that convert the video to flash streaming file. There is all ready one from adobe. Other tools is video editing if this is what you asking for. Video editing with asp.net or with other programs like vegas video.

  • How to not allow a user to download a video ?, you serve this video from an ashx handler, this handler just read the video file from a protected directory and send it to the video player. The id of the file that is going to play you send the id on the page header, or from inside redirect to that page to hide it as much as you can, but expert users can find it and download it at the end. How ever you can avoid the scanning of your page by a robot that try to download them all. All this is not that easy but not that hard also. This task is a full question and a tutorial alone, and as I say I think that is near impossible to avoid at the end the user not get your video if he won it to.

Other way to protect your video is to scramble the streaming header, and then on your flash player decode it again back. That way even if they get them ,they can not play it anywhere.

You need to know to programming also flash and probably make communication with the video flash and your pages using Javascript, and modify the player to your needs. All of that its not an easy task, but there are many resources and tutorial that can help you.

So start with the flash video on google.

Aristos
A: 

I would opt for using Silverlight. It has Digital Rights Management and Microsoft has some great tools for you like Expression Blend and Encoder.

For the streaming part you could use IIS smooth streaming.

XIII
+2  A: 

From tag "asp.net" I'm assuming that you deal with Microsoft technologies. Our team in the past had estimation project around selling video content, so you problem is close to it.

The base idea is usage of Microsoft Windows Media Services 9 Series( for brief overview look at http://www.microsoft.com/windows/windowsmedia/howto/articles/webserver.aspx ). So this answer #1. The most difficult question is #2. Because you can just reduce possibility to download, but to watch video user needs have some frames at client side. That is why content always can be intercepted. Following list is my recommendations how to reduce risks:

  • Use "Stream without downloading" (see article above for details) or broadcast
  • Manage stream content with Digital Rights Management
  • Use authentication of users that watch video and provide unique URL for them to disallow special tool of downloading to intercept results.

Question #3 relates to format war. Vimeo, youtube and many others use FLV format to provide video. In theory client-side player of vimeo can play without problem video from youtube and vice verse. The benefit of it is crossplatforming - Linux, Mac, Windows users can recognize this format and play it. On other hand usage of WMV (windows media) potentially can be restricted (in real I have never seen any problem). But usage of Microsoft formats are more secured since usage of Digital Rights Management tags embedded to content.

Answer on #4, #5 you can find in article above.

Dewfy