Click here to Skip to main content
15,847,653 members
Articles / Desktop Programming / MFC
Article

Trick: How to Capture Video Screen Shots

Rate me:
Please Sign up or sign in to vote.
3.39/5 (16 votes)
25 Feb 20042 min read 271.4K   6.1K   67   42
An article describing a trick to capture video screen shots.

Video Screen Shot

Introduction

This article describes a "trick" on how to capture video screen shots, irrespective of the source (file, Webcast stream, TV-input).

Background

My task is to capture a screen shot of a video being played. It is easy to capture a screen shot of a window. However with a video being played (e.g. with Media Player), you will capture the window border and a blank video surface. I am sure there is a way to do it with DirectX and DirectShow methods, however I could not find an article on it. If anyone knows the method or a link to an article on this topic, please let me know. HyperSnap-DX from Hyperionics seems to be the only one with the "proper" way of capturing a video screen shot.

Using the code

The demo application is started, CHogVideo will attempt open and pause the video hog.dat. This is to hog the video resources (*the trick*). You can then open your Media Player (or other video players) to play the video you wish to capture. Once the video is playing, start the capture under "Options".

There are no codes specific to this article. However here are a few links to related articles:

Points of Interest

Why it works?

My guess is that the hogging video, being the first video being played, gets priority to the hardware. Subsequent videos played have to use software rendering, which enables Windows GDI to capture a copy of the frame being played.

Do I need the CHogVideo class?

No. CHogVideo is just for demonstration. You could have just started playing a video file and paused it (say with Media Player). Open a second Media Player to play the intended video screen to capture.

When it will work?

The trick will work for if the video resource is hogged first. It will work for video players that utilize DirectX approach for playing the video (this includes Windows Media Player) regardless of the source (from file, Webcast stream, TV-input).

What about Full Screen mode?

Yes, it will also capture videos in full screen mode.

History

  • February 16, 2004 - First version.

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
Malaysia Malaysia
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
AnswerThe real solution is just a one-liner Pin
Sergey Alexandrovich Kryukov4-Jan-21 12:52
mvaSergey Alexandrovich Kryukov4-Jan-21 12:52 
QuestionIt is not able to capture video, Please help. Pin
Member 40137843-May-11 22:14
Member 40137843-May-11 22:14 
AnswerIt is not able to capture video, Please help. Pin
Member 40137843-May-11 22:34
Member 40137843-May-11 22:34 
AnswerRe: It is not able to capture video, Please help. Pin
Chiew Heng Wah3-May-11 22:37
Chiew Heng Wah3-May-11 22:37 
GeneralRe: It is not able to capture video, Please help. Pin
Member 40137843-May-11 22:55
Member 40137843-May-11 22:55 
GeneralRe: It is not able to capture video, Please help. Pin
Chiew Heng Wah4-May-11 0:07
Chiew Heng Wah4-May-11 0:07 
GeneralRe: It is not able to capture video, Please help. Pin
butterfly081525-Jul-11 17:30
butterfly081525-Jul-11 17:30 
GeneralRe: It is not able to capture video, Please help. Pin
Chiew Heng Wah26-Jul-11 0:32
Chiew Heng Wah26-Jul-11 0:32 
Hi. If you are trying to capture the video stream, this would be the wrong correct approach. This is about capturing a screenshot of the playing video (there are reasons).
QuestionHow to capture only Open or Save Dialog Box Pin
Chintan.Desai20-Nov-06 21:14
Chintan.Desai20-Nov-06 21:14 
AnswerRe: How to capture only Open or Save Dialog Box Pin
THE SENSE4-Jan-07 23:56
THE SENSE4-Jan-07 23:56 
GeneralRe: How to capture only Open or Save Dialog Box Pin
Chintan.Desai5-Jan-07 17:44
Chintan.Desai5-Jan-07 17:44 
GeneralRe: How to capture only Open or Save Dialog Box [modified] Pin
THE SENSE5-Jan-07 18:58
THE SENSE5-Jan-07 18:58 
Questionhow can I do the same in C#? Pin
Winita S12-Sep-06 3:01
Winita S12-Sep-06 3:01 
QuestionPrintWindow ? Pin
ChristianS_10-Aug-06 22:53
ChristianS_10-Aug-06 22:53 
QuestionHow to capture a direct show window Pin
neerajgoel1-Aug-06 2:42
neerajgoel1-Aug-06 2:42 
AnswerRe: How to capture a direct show window [modified] Pin
achainard1-Aug-06 3:09
achainard1-Aug-06 3:09 
AnswerRe: How to capture a direct show window Pin
Chiew Heng Wah1-Aug-06 17:46
Chiew Heng Wah1-Aug-06 17:46 
QuestionHow to convert to C# version? Pin
Duy Linh18-Jul-06 1:51
Duy Linh18-Jul-06 1:51 
GeneralFull Screen Capture is not working Pin
jeykumars13-Jun-06 3:01
jeykumars13-Jun-06 3:01 
GeneralRe: Full Screen Capture is not working Pin
Chiew Heng Wah13-Jun-06 16:57
Chiew Heng Wah13-Jun-06 16:57 
GeneralRe: Full Screen Capture is not working Pin
jeykumars14-Jun-06 1:00
jeykumars14-Jun-06 1:00 
GeneralRe: Full Screen Capture is not working Pin
Chiew Heng Wah14-Jun-06 16:52
Chiew Heng Wah14-Jun-06 16:52 
GeneralGood But ... Pin
despirados16-Apr-06 15:46
despirados16-Apr-06 15:46 
GeneralCapturing Image of Minimized Window Pin
IslamianFalcon30-Nov-05 2:31
IslamianFalcon30-Nov-05 2:31 
GeneralRe: Capturing Image of Minimized Window Pin
Chiew Heng Wah1-Dec-05 16:11
Chiew Heng Wah1-Dec-05 16:11 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.