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


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.

Top White Papers and Webcasts

  • Download the Information Governance Survey Benchmark Report to gain insights that can help you further establish business value in your Records and Information Management (RIM) program and across your entire organization. Discover how your peers in the industry are dealing with this evolving information lifecycle management environment and uncover key insights such as: 87% of organizations surveyed have a RIM program in place 8% measure compliance 64% cannot get employees to "let go" of information for …

  • The rapid evolution of enterprise storage technologies, combined with external forces, like the explosion of big data, can cause Linux® and server administrators to play catch-up when it comes to storage. Running a bunch of monolithic storage devices and proprietary, disconnected technologies forces administrators to spend valuable time creating and managing complex solutions. To reduce complexity and enable rapid deployment of new technologies and applications, server administrators need a single open …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds