Using DirectShow to Play a Movie from Visual Basic

Environment: VC6 SP5

Playing a movie file (AVI, MPG) from C++ is simple if we use the DirectShow interfaces provided with each version of DirectX. However, if we want to use Visual Basic as a movie player, the DirectShow interfaces can be difficult to use.

That's why we have built (in C++) an ActiveX control for Visual Basic that allows us to play any movie file (compatible with DirectShow). The ActiveX object also provides the complete interface for controlling the movie playback (Start, Stop, Pause, and a trackbar; it also shows the current movie position and the total length of the movie).

The ActiveX exports three functions:

StartMovie [MovieName] Starts the specified movie

StopMovie Stops the specified movie

UnloadProgram Unloads the DirectShow interfaces

See also:

Play a Movie from C++
http://www.microsoft.com/Developer/.../Play_Movie_from_C++.htm

Control the Video Playback Window from C++
http://www.microsoft.com/Developer/.../Control_Video_Playback_Window_C++.htm

Downloads

Download demo project - 37 Kb
Download binaries only - 139 Kb

IT Offers

Comments

  • Very useful chunk of code and big timesaver

    Posted by Groaty on 10/19/2005 07:15pm

    Was having nightmares trying to put together a stand alone vid for presentation tomorrow. (24:00 here). With this code it became easy. Couple of tweaks, but not a lot - Good job.

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Go Deeper

  • This interactive white paper from CIO Magazine and EMC lays out the benefits of big data and predictive analytics, provides tips on how to …
  • This buyers guide provides independent research and test results to help you determine your endpoint protection requirements and identify …
  • This online eBook provides insight and advice on how to build an effective disaster recovery strategy in the evolving world of virtual …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds