I remember seeing a lot of cool Counter Strike videos back in the day. How do you go about recording your gameplay (any game) into an easy to edit format? Do you need special software? How much does it cost?
Fraps is the most popular tool for recording in game videos.
TAKSI (open source; Windows only)
Despite the webpage claims the latest stable release has been done in 2006, the project does not seem completely abandoned. Development version 0.7.7.9 has been released in July 2010.
VLC Media Player (open source, windows, linux & os x)
Launch the game of your choosing in windowed fullscreen mode.
Start up VLC.
On the "Media" menu select "Convert / Save..." (CTRL-R)
The "Open Media" dialog will appear, select the "Capture Device" tab
Change the capture mode to "Desktop".
Adjust the desired frame rate for capture, I set it to 30.00 f/s.
Click on the "Convert /Save" button.
The "Convert" dialog will appear.
Click the "Browse" button to find place to save the video and give it a name.
I use "capture.asf" as a filename
Select the profile you want to use. I have found that "Video WMV + WMA (ASF)" give the best results for me.
Press the "Start" button.
Activate the game and play for a bit, VLC will make a recording, when you want to stop recording activate VLC and press the stop button, then close it down.
The ASF format I use produces very large files, for a 2560 x 1600 display it takes about 1GB for 3 minutes of video. You can experiement with different encodings if you like but I had problems with the others so decided to use ASF, I imagine I can convert it to something smaller later.
Chris S probably gave what will become the most popular and accepted answer. Still, I think wegame.com (Windows only) should get a mention. It allows you to record nearly any game with their client and upload it to their site. It's also free. Unfotunately, I don't think you can do much in terms of editing the video.
Xfire is free, and in some ways it is better for recording games than other tools.
You can set a hotkey to quickly start recording the game that is currently active window. You are shown a small status bar inside the game with current length of the video and disk space it takes (the bar isn't shown in the video.)
Xfire can't do general screen recording, it is only for games. It records games in both fullscreen and windowed modes.
Result video is a high quality .avi file with resolution the same as the game window's client size, or half-size (depends on what you choose).
The bad thing about Xfire is that it not only does video records... Well, see for yourself at their website
For Windows only.
Dxtory (Windows only) is worth a mention as well.
It's 3,600 JPY (~US$40), but there is a free demo.
Its main selling point is that it uses multiple hard drives for its operation, therefore avoiding the main bottleneck of video capture, which is recording speed*.
(*) I've tested this using 4 HDDs (all different), and the performance hit is noticeably lower than other similar software.
Open Broadcaster Software (Free, open source, Windows x86 and x64 / Mac)
It allows you to capture the screen, specific windows, games (using hooks) and even external sources (e.g. video capture card capturing consoles). You can output the captured video to a local file.
Though it has another more important use: it can stream the captured video on the Internet. That's why the program can actually mix multiple input video source into one output.
One thing to note that it does not show an fps counter like Fraps.
I made some tutorial back then when I was beginning recording my gameplay for my YouTube channel
While Fraps is the best solution for recording 3D-accelerated games and applications (and that includes 2D games that use your 3D videocard), it can't record your desktop or your browser.
For general-purpose desktop recording, I recommend CamStudio, which is free and open source. It can be used to record things that Fraps usually can't (for instance, in-browser games and some simple 2D games that don't use DirectX), as well as general game-related videos (e.g. tutorials, or a game launcher screen).
For simple video editing and conversion (for instance, before uploading to YouTube), I recommend VirtualDub, which is also free and open source.
I'm using hypercam 2 in combination with virtualdub to produce very high quality gameplay footage you can see here:
Hypercam 2 is much more versatile then FRAPS which only allows you to record DirectX games on full screen. It also allows you to compress your recordings on the fly so you do not end up with those huge files. Sometimes i even manage to compress my video's on the fly good enough to upload them at once. I have a Phenom II X4 with a GeForce 460 GTX which is pretty dated nowadays.
Things you need, all free:
Hypercam 2 - for recording. http://download.cnet.com/HyperCam/3000-13633_4-10004511.html
X264 VFW codec - for video compressing. http://sourceforge.net/projects/x264vfw/
Lame mp3 - for audio compressing. (i got mine in a pack) http://www.free-codecs.com/download/K_lite_codec_pack.htm
virtualdub - for editing. http://virtualdub.sourceforge.net/
Hypercam: On the screen area tab you can specify the area you want to record. For full screen you just put the resolution the game is running and the start x,y will be just 0. If you want to record a single window you have the option to select that window directly using the hypercam ui.
The next tab is just for setting up your hotkeys, i use CTRL-INSERT to start and stop recording.
On the AVI file tab you specify the output file on the top. You have the option to add a sequential number to the files so you do not overwrite your previous recording and they get a logic number behind the name you give (unlike fraps). You can also specifie the framerate and playback speed, doubling the playback speed will speed up the video 2 times.
For compressing on the fly i use 15 frames per second which is really hard to notice if you are watching. I always leave the cursor capturing on 1 and keyframes on every 100 frames. Then you choose the video compressor, picking no compression will create huge files so i always advice to pick X264 and just choose a inexpensive compression method. When compressing on the fly always choose the ultrafast compressing method in the X264 UI.
The rest speaks for itself, at options you can choose to record the cursor or not.
Virtualdub: Here you edit your video and compress it further if you need too. You can just drag in or open a avi you created. If you picked subsequential numbering and have multiple video's you can choose append avi segment, just pick the first video in line and it will recognize the numbering.
Under video you find filters where you can crop your video or add black TV bars to it. There are also some special effects to choose from. Re sizing your video is also possible but the quality deteriorates fast.
At video->compression you can select a compression. Now you can opt for a slower compression method and play with the bit rate to see what works for you. If you have slow gameplay and dull colors you can get away with a lot more then fast gameplay with vibrant colors.
In the audio->compression section you can pick the lame mp3 codec to compress the audio, you don't need much audio quality most of the time i just pick a 96kb rate.
Now you can save the new avi under files and it will compress it for you. You can see the predicted file size, which is pretty accurate after running for a minute. My advice is to play around with the option a lot.
Here is a video guide of me:
Simple Screen Recorder is a free and open source screencasting program for linux.
It supports recording OpenGL windows directly (as well as recording the screen normally), which is good for games where performance is critical.
It has many other features and is simple to use.
From their website:
All other anwsers are about screen-recording software. It's important to notice, though, that the first step of creating your demo should be using the game built-in demo recording mechanism, whenether available. The second step is to record the playback of that demo using Fraps-like program. Why is that?