Click here to Skip to main content
15,896,473 members
Articles / Programming Languages / C#

Laser Gesture Recognition

Rate me:
Please Sign up or sign in to vote.
4.93/5 (84 votes)
9 Jan 20073 min read 323.1K   7.2K   177  
A quick article on setting up a simple, real-time laser gesture recognition application and using it to control Windows Media Player.
namespace dshow.Core
{
	using System;
	using System.Runtime.InteropServices;

	// IMediaControl interface
	//
	// The IMediaControl interface provides methods for controlling
	// the flow of data through the filter graph
	//
	[ComImport,
	Guid("56A868B1-0AD4-11CE-B03A-0020AF0BA770"),
	InterfaceType(ComInterfaceType.InterfaceIsDual)]
	public interface IMediaControl
	{
		// Switches the entire filter graph into running mode
		[PreserveSig]
		int Run();

		// Pauses all filters in the filter graph
		[PreserveSig]
		int Pause();

		// Switches all filters in the filter graph to a stopped state
		[PreserveSig]
		int Stop();

		// Retrieves the state of the filter graph
		[PreserveSig]
		int GetState(
			int msTimeout,
			out int pfs);

		// Adds and connects filters needed to play the specified file
		[PreserveSig]
		int RenderFile(
			string strFilename);

		// Adds to the graph the source filter that can read the given file name
		[PreserveSig]
		int AddSourceFilter(
			[In] string strFilename,
			[Out, MarshalAs(UnmanagedType.IDispatch)] out object ppUnk);

		//
		[PreserveSig]
		int get_FilterCollection(
			[Out, MarshalAs(UnmanagedType.IDispatch)] out object ppUnk);

		//
		[PreserveSig]
		int get_RegFilterCollection(
			[Out, MarshalAs(UnmanagedType.IDispatch)] out object ppUnk);

		// Waits for an operation such as Pause to complete,
		// allowing filters to queue up data, then stops the filter graph
		[PreserveSig]
		int StopWhenReady();
	}
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
India India

Comments and Discussions