Extract frames from video files – The Code Project – Multimedia



This class contains methods to use the IMediaDet interface, that can be found in Microsoft DirectShow.
The Media Detector object, among other things, can be used to extract still pictures from several file formats including .avi, .wmv and some .mpeg files. This class exposes the GetFrameFromVideo, GetVideoSize and SaveFrameFromVideo methods that can be used from any .net application. The class also takes care of translating HRESULTs returned from the functions to meaningful .net exceptions.

Using the code

Just add a reference to JockerSoft.Media.dll in your project (or include the source code). Remember also to distribute Interop.DexterLib.dll  All the methods are static, so to use them just do something like

    this.pictureBox1.Image = FrameGrabber.GetFrameFromVideo(strVideoFile, 0.2d);
catch (InvalidVideoFileException ex)
    MessageBox.Show(ex.Message, "Extraction failed");
catch (StackOverflowException)
    MessageBox.Show("The target image size is too big", "Extraction failed");


    FrameGrabber.SaveFrameFromVideo(strVideoFile, 0.2d, strBitmapFile);
catch (InvalidVideoFileException ex)
    MessageBox.Show(ex.Message, "Extraction failed");

Via Extract frames from video files – The Code Project – Multimedia

Hanselminutes 82: Development for Media Center

Via Podcast

And … Timeline

2:15 Software Development Kit http://www.microsoft.com/downloads/details.aspx?familyid=a43ea0b7-b85f-4612-aa08-3bf128c5873e&displaylang=en
2:29 Visual C# 2005 Express Edition http://msdn2.microsoft.com/en-us/express/aa975050.aspx
2:38 Media Center Markup Language http://msdn2.microsoft.com/en-us/library/bb189823.aspx
3:40 MCML Preview Tool http://msdn2.microsoft.com/en-us/library/bb189325.aspx
6:30 Z Sample Application http://blog.mediacentersandbox.com/IntroducingTheZSampleApplication.aspx
11:46 Remoting of the User Interface http://blog.mediacentersandbox.com/AQuickPeekUnderTheHoodPartOneOfFour.aspx and http://blog.mediacentersandbox.com/AQuickPeekUnderTheHoodPartTwoOfFour.aspx (we never got around to parts 3 and 4 — they would have been much deeper than we really needed to go).
12:15 Remote Control and Input Handlers http://msdn2.microsoft.com/en-us/library/bb189195.aspx
18:08 Managed Code Object Model http://msdn2.microsoft.com/en-us/library/ms816271.aspx
19:00 Application Types Which Leverage MCML: Local and Web http://msdn2.microsoft.com/en-us/library/ms816272.aspx
21:00 Installation and Registration of Applications http://msdn2.microsoft.com/en-us/library/ms815407.aspx
23:10 Q Sample Application (Screenshot) http://play.mediacentersandbox.com/sample/5/q/screencap.png
24:14 MCML Sampler (Screenshot) http://play.mediacentersandbox.com/sample/5/mcmlsampler/screencap.png
25:01 Databinding in MCML http://msdn2.microsoft.com/en-us/library/bb188939.aspx
26:28 Defining a <UI> http://msdn2.microsoft.com/en-us/library/bb189704.aspx
27:37 <UI> Properties http://msdn2.microsoft.com/en-us/library/bb189635.aspx
28:04 Media Center Sandbox http://blog.mediacentersandbox.com
28:30 Visual Studio 2008 ‘Orcas’ Templates from Aaron Stebner http://blogs.msdn.com/astebner/archive/2007/09/11/4873223.aspx
28:45 Using the Visual Studio Templates http://msdn2.microsoft.com/en-us/library/bb189732.aspx

Configuring Visual Studio 2005 for use with SQL Server 2005 Compact Edition


Video of installing the SQL Server 2005 Compact Edition

To get a feel for what it means to install the SQL Server Compact Edition here’s a screencast that describes the installation experience and the minimal impact to your machine. The screencast also covers how to install the ClickOnce bootstrapper package within Visual Studio to cleanly enable deploying SQL Server Everywhere with ClickOnce. Or visit Steve Lasker’s Web Log : Configuring Visual Studio 2005 for use with SQL Server 2005 Compact Edition

For info on SQL Server Compact Edition, visit steve lasker’s blog http://blogs.msdn.com/stevelasker/archive/2006/04/10/SqlEverywhereInfo.aspx 


Microsoft’s SQL Server 2005 Compact Edition Home page

A Web Spider Library in C#



The classes implement a basic web spider (also called “web robot” or “web crawler“) to grab web pages (including resources like images and CSS), download them locally and adjust any resource hyperlinks to point to the locally downloaded resources. The classes allow for synchronous as well as asynchronous download of the web pages. To parse a document it is using the SGMLReader DLL.

Via: A Web Spider Library in C# – The Code Project – ASP.NET

Flickr.Net API Library


Welcome to the Flickr.Net API Libraries new home on CodePlex.

The Flickr.Net API is a .Net Library for accessing the Flickr API. Written entirely in C# it can be accessed from with any .Net language in .Net Framework 1.1, .Net Framework 2.0, .Net Compact Framework 2.0 and Mono.

More Information

FlickrNet API Library – Home

Make a Zip/UnZip software using SharpZipLib


This article shows a simple way to make a Zip/UnZip software using SharpZipLib.


SharpZipLib is a very nice OpenSource library. It’s a Zip, GZip, Tar and BZip2 library written entirely in C# for the .NET platform. http://www.icsharpcode.net/OpenSource/SharpZipLib/Default.aspx


Make a Zip/UnZip software using SharpZipLib – The Code Project – C# Programming

A simple WPF media player with media item list





I used a MediaElement some time ago in one my 1st WPF articles, and thought it may be time to re-visit it and make a simple video player control. That is what this article is all about really. Theres nothing ground breaking here, as Josh Smith is the one to watch for amazing WPF tricks, hes crazy man believe you me he know whats what in WPF. I am a mere underling, showing simpler subjects to beginners of WPF. So thats what we going to do, build a simple media player control that will have the following features

  • Play videos
  • Control media playback (pause / stop / play)
  • Control media volume
  • Control media position
  • Scale media
  • Rate each media item

A simple WPF media player with media item list – The Code Project – Windows Presentation Foundation

Annotating an Image in WPF



This article shows how to create text annotations over an image, in a WPF application. The technique involves rendering a custom control in the adorner layer of an Image element, allowing for in-place editing of annotations. The classes used in the demo application can be easily and freely used in other applications to achieve the same functionality.


When you read the newspaper and scribble a thought on the page, you are creating an annotation. The term “annotation” refers to a note which describes or explains part of another document. The Windows Presentation Foundation has built-in support for document annotations, as described here. It does not, however, provide out-of-the-box support for annotating images.

A while back I wrote a blog post about how to annotate an Image element which happens to reside in a Viewbox. This article takes that idea and generalizes it so that any Image can be annotated, not just one contained within a Viewbox. Another improvement seen in this article’s demo application is that the annotations are created “in-place”, as opposed to typing the annotation text in a TextBox somewhere else in the user interface.

image  image


Annotating an Image in WPF – The Code Project – Windows Presentation Foundation