What are effective options for embedding video in an ASP.NET web site? - asp.net

A quick glance at the present-day internet would seem to indicate that Adobe Flash is the obvious choice for embedding video in a web page. Is this accurate, or are they other effective choices? Does the choice of ASP.NET as a platform influence this decision?

Flash is certainly the most ubiquitous and portable solution. 98% of browsers have Flash installed. Other alternatives are Quicktime, Windows Media Player, or even Silverlight (Microsoft's Flash competitor, which can be used to embed several video formats).
I would recommend using Flash (and it's FLV video file format) for embedding your video unless you have very specific requirements as far as video quality or DRM.

Flash is usually the product of choice: Everyone has it, and using the JW FLV Player makes it relatively easy on your side.
As for other Video Formats, there are WMV and QuickTime, but the players are rather "heavy", not everyone might have them and they feel so 1990ish...
Real Player... Don't let me even start ranting about that pile of ...
The only other alternative of Flash that I would personally consider is Silverlight, which allows streaming WMV Videos. I found the production of WMV much better and easier than FLV because all Windows FLV Encoders I tried are not really good and stable, whereas pretty much every tool can natively output WMV. The problem with Silverlight is that no one has that Browser Plugin (yet?). There is also a player from JW.

One consideration would be whether video playback is via progressive download or streaming. If it's progressive download, then I would say use Flash because you get a wider audience reach.
For streaming wmv, it is out of the box functionality provided by Windows Media Services
For streaming flash, you will have to install a streaming server on your Windows box. Some options are:
Adobe Flash Media Server (Commercial)
Wowza Media Server (Free/Commercial)
Red5 Flash Server (Open Source)

If you have access to Microsoft Expression Encoder 2, you can use that to encode a video file and generate a Silverlight video player. Then if you have IIS 7, you can use Adaptive or Smooth Streaming also checkout Smooth HD for a really cool example.
You can also do streaming from the free Microsoft Silverlight Streaming Service. It's connected to a Windows Live account.
A consideration is that the client will need to have Silverlight installed, just like Flash, but Flash has been around longer.

<object width="660" height="525"><param name="movie" value="http://www.youtube.com/v/WAQUskZuXhQ&hl=en&fs=1&color1=0x006699&color2=0x54abd6&border=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/WAQUskZuXhQ&hl=en&fs=1&color1=0x006699&color2=0x54abd6&border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="660" height="525"></embed></object>

I have worked for a company that developed a system for distributing media content to dedicated "players". It was web based and used ASP.NET technology and have tried almost every possible media format you can think of and your choice really comes down to asking yourself:
does it needs to play directly out of the box, or can I make sure that the components required to play the videos can be installed beforehand?
If your answer is that it needs to play out of the box then really your only option is flash (I know that it is not installed by default, but most will already have it installed)
If it is not a big issue that extra components are needed then you can go with formats that are supported by windows media player
The reason why windows media player falls into the second option is because for some browsers and some formats extra components must be installed.
We had the luxury that the "players" were provided by us, so we could go for the second option, however even we tried to convert as much as possible back to flash because it handles way better than windows media player

"Does the choice of ASP.NET as a platform influence this decision?"
Probably not.

Related

Is it secure to make adobe flash website?

I am making a website using adobe flash and action script. but I heard a lot about flash vulnerabilities.
Is it secure to make a website using adobe flash, comparably to ordinary tools like wordpress and joomla?
In theory Flash is secure, but I would recommend not using it.
The reasons Flash has many vulnerabilities is not because of the websites using it, but the clients not updating their Flash clients. Your site depends on the client for security which is almost always a bad idea.
There also is a second reason not to use Flash and that is compatibility. Flash won't work on iPhones, Android Phones, Windows Phones and it won't take long before all browsers will block it (Firefox already does that!).
And the third argument is that it just is not necessary to use Flash anymore. You can use HTML, CSS3 and maybe a bit of JavaScript to be able to do anything Flash once was unique in.
Flash make your page to load very slow.
If site is created only in flash? not only a part of it(like header logo and other) the user will wait while all flash will load and this take times and very expensive traffic if is used mobile device to connect PC to internet (usb 4G modem, or mobile built in modem ).

Video Conferencing in ASP.NET, flash, silverlight

I need to implement video conferencing in a ASP.Net application.
We have cases that contains 3 users. Per case we need to set up a Video Conferencing possibility.
Are there any services or libraries to use for this functionality?
EDIT:
TokBox was a good service to use, however I need a solution to maintain on own servers now. Are there existing services that let me do this?
See here: http://www.red5chat.com/.
By far your easiest solution at this point will be to embed Flash into your ASP.NET pages. You can use Red5 as your media server backend if you want a free and pretty good solution. (You can also pay for back-end media server solutions like Wowza or Flash Media Server.)
You can in theory do this with Silverlight (see http://silverlightvideochat.codeplex.com/), but it's not nearly as sophisticated as the Flash solutions, i.e., the video codec isn't nearly as good, there's no AEC, noise reduction, etc.
As for HTML5, Google has open-sourced WebRTC, and it's working its way through the standards process. But it's currently supported by ~0% of the browsers out there. (It was released into the Chrome dev channel in mid January: http://www.webrtc.org/blog/webrtcnowavailableinthechromedevchannel.)
But the short answer, again, is "Use Flash on the client and Red5 on the server."
EDIT: With a little bit more client-side coding and Adobe's RTMFP solution, you can create a peer-to-peer Flash-based solution that doesn't use a server. It won't scale to more than 2-4 users per "room", but it'll have very low latency, and won't require you to standup and support a server. See here to get started.
Also, the production channel of Google's Chrome now supports WebRTC (and so does Opera). You can see a demo of it here. Firefox also supports a version of it, but the two aren't yet compatible, though achieving interoperability is a high priority for both dev teams. Neither IE nor Safari has yet announced support.
Tokbox also has a reasonably simple API that will allow you to use WebRTC when it's available (it produces higher quality audio/video than Flash), and degrade to Flash when it's not. It's free for 1:1 sessions or for less than 25,000 group minutes per month.

Serving WMV on a drupal site?

I have a WMV file that I need to host on my drupal 6.13 site (on ubuntu 9.x).
Is a there a relatively painless way to do this.
Do I need the "Video" module to do this?
Or can I just install a video player and point my WMV file to it?
My other concern is the user should be able to view this video on my site without needing to download anything, is WMV the appropriate format? I am worry about people viewing this on the mac and ios device.
Should I convert this to another format first?
Can I do all of the above with free software alone?
Thank a lot.
The de-facto standard, especially if you want to target iOS devices, is H.264: WMV is not going to cut it. Most Flash-based players (which you'll need for browsers like IE and Firefox that do not support H.264) also support H.264 video.
From a site administration standpoint, you'll need to either prevent users from uploading non H.264 video, or transcode the files once uploaded. This is not a trivial task, and you should use a contributed module for this. Video is probably the most far along in providing a turnkey video hosting solution.
There is also Kaltura, but it's a commercial service and they have historically failed to address privacy issues despite repeated warnings. There's a new maintainer in charge of the module, independent of the company, and the module may be safer to use than in the past.

Flash Browser? Flash Server Side?

I have two noobish questions about Flash, Actionscript, Flex etc.
1) With these technologies is it possible to create a simple web browser that can render websites?
2) Is it possible to run these technologies on the server side? I am guessing no as Flash requires a browser to run within?
Thanks all for any help
HTML in Flash
Technically you can write an HTML rendering engine in Flash. DENG is an old project that did exactly this. I don't think it's still be updated though.
http://osflash.org/deng
Adobe AIR supports rendering HTML in the embedded WebKit based engine within Flash.
Flash on server
The standalone Flash Player can be used on the server and is often used for unit testing within a continuous integration environment. When run from a background service I don't think it will actually display a UI, but it will run.
Take a look on this article http://www.adobe.com/devnet/air/flash/articles/air_browser_sample_application.html - it describes how to build your browser with Flash/Air (running on the desktop)

Recording Audio From Web Page

I'm looking for a solution for capturing audio from a user's microphone and posting it (preferably as MP3) to a server. I need something that I can embed in a web page.
I've seen where Flash can do this, but I understand that this approach requires expensive server-side software from Adobe. I'm not aware of whether Silverlight may provide any capabilities to assist with this.
I'm curious what others have done. Any advice would be greatly appreciated.
You can do it with Flash and either Red5 or haXeVideo or the server, both Open Source. Regarding offering a final MP3 to the user, you will need something else because these 2 tools only record to FLV format due to the licenses needed to encode MP3s. You can use something on the server such as FFMPEG for the transformation, but still, read the small print regarding MP3s.
Good luck
Juan
SilverLight 4 now has the ability to record audio. http://blog.ondrejsv.com/post/Audio-recorder-Silverlight-4-sample.aspx shows encoding PCM to WAV
Silverlight does not have this capability, currently (or in their upcoming 3.0 release). Flash would be the way to go.

Resources