Capturing game footage

From OniGalore
Revision as of 16:33, 2 October 2022 by Iritscen (talk | contribs) (link fix)
Jump to navigation Jump to search

This is an overview of the different software available for recording game footage in Windows and on Macs. Although it's written with Oni in mind, the various instructions below should apply to any game. Of course, the most reliable method for high-performance video recording is to connect your PC to a video capture device, offered by companies such as Roxio, Elgato, and Blackmagicdesign, but these devices are also more expensive than any of the software options below.

Codecs

When choosing a format in which to save your recording, you need to understand the difference between the file suffix, which is just the wrapper, and the actual codec used internally for the video data. The most popular and cross-platform-compatible video codec is MPEG-4/H.264, which is usually saved in a .mp4 file. Some video capture software has a tendency to save .flv files, which will usually be encoded in H.264 or H.263 (Sorenson Spark). These can be less convenient to work with, but they upload just as well to YouTube.

There are also a few decent Microsoft codecs, either preinstalled or coming with Windows Media Player updates (saved in a .avi wrapper). The WMV codec is used by Windows Movie Maker (usually wrapped in .asf, .avi, or .mkv): the "superior quality" setting can have lousy anti-aliasing for titles, but for raw in-game footage it's mostly OK, and it has a very convenient compression ratio.

Apart from those, if you are willing to experiment, there are a ton of other codecs that are more or less compatible with cross-platform editing of the recorded footage, and most of these should also be accepted by YouTube. See the last section of the article for editing software.

Windows and Mac and Linux

OBS Studio

Free, https://obsproject.com/

Or get it from github: https://github.com/obsproject/obs-studio/releases

Windows setup

add here

Mac setup

This is what the final setup should look like before pressing "Start Recording". As Oni plays the Main Menu music, the Desktop Audio meter shows an appropriate level of volume for its input.

OBS allows you to record video directly from Oni's OpenGL output, so you don't have to try to select the exact region of the game window. OBS is a bit tricky to set up, but the settings you choose for the "Scene" will be saved automatically for the next time you open OBS. An additional wrinkle is that OBS requires a kernel extension called BlackHole (see "Mac audio-only recording" section) in order to capture audio. Once BlackHole is set up, you will need to enter OBS' Settings screen, choose "Audio", then set the "Desktop Audio Device" to BlackHole in order to capture the system sound.

The resulting recording is in FLV format by default, which is inconvenient for editing purposes because Apple's video-editing software, such as iMovie, requires a .mp4 or .mov file as input. If you don't plan to make any edits besides trimming out parts of the video, you can simply feed the FLV directly into YouTube and use their editor to perform the trimming. You can also convert the video file to a Mac-friendly format with video conversion software such as ffmpeg, but you'll probably prefer to go to OBS' Settings screen, choose "Output", and change the "Recording Format" to "mp4" or "mov".

To capture Oni's video output directly, open Oni in windowed mode, then open OBS and remove any default entry in the Sources list. Click the '+' button and choose a Syphon source. In the Syphon source's properties, check the Inject box and click the Launch SyphonInject button. Choose Oni from the list of open applications and click Inject. Close the Syphon properties window and you should see Oni's game window at the top-left of the screen preview in the OBS window. Now click the Settings button, go to the Video section, and in the Base Resolution field type in the size of the Oni window. If you don't trim the video dimensions to Oni's resolution in this way, the final video will show Oni's gameplay footage as part of a larger blank region.

Linux setup

add here

Windows

OBS Classic

Free, https://obsproject.com/download (scroll down)

(However, now it is officially "deprecated". You might want to check out OBS Studio.)

OBS Classic does a fine job of recording Oni, both when running in windowed mode and full-screen. It offers a ton of options, including customizable hotkeys, but it is a bit non-intuitive and rather complex for those who are new to recording gameplay.

English tutorial: https://www.youtube.com/watch?v=y-L5zhhVuSc

German tutorial: https://www.youtube.com/watch?v=m2n5nfE26YA

There are many subjects addressed in the tutorials, but the following settings should be enough to get you started:

  • Settings > General > Language
  • Settings > Hotkeys > Broadcast: Start recording: F2
  • Settings > Hotkeys > Broadcast: Stop recording: F3
  • Settings > Broadcast Settings > Mode: File Output Only
  • Settings > Video > Change resolution so that it matches Oni's resolution
  • Right-click white "Sources" field > "Add" > "Game Capture"
    • (Game must be already running) Select Application: Oni
    • tick: [x] Capture mouse cursor

In some cases:

  • Settings > Audio > Desktop Audio Device: Standard
  • Settings > Audio > Microphone/Auxiliary Audio Device: Disable (Built-in microphones can record a lot of noise)
  • Settings > Audio > (click button) Reinitialize and Apply

Fraps

$37, https://fraps.com/

Pros
The main limitations in writing uncompressed video at high resolutions are CPU and HD usage. Fraps has high performance in writing to disk, and doesn't steal much CPU time from Oni either (of course this depends on your CPU and HD).
Cons
Though Fraps can be used for free, the demo version displays a watermark and stops recording after 30 seconds, which is why we aren't listing Fraps as "free" above.
The Fraps codec is proprietary and Windows-only, so Macs cannot natively play the recordings without using Perian or VLC, which sometimes have their own issues with the Fraps codec. If you were going to edit the recording on a Mac, then you would first have to convert the video to something more compatible, so in that case you should consider using a different capture program altogether. Now, if you are simply going to upload the video to YouTube, it's going to get converted to HTML5 and Flash video anyway, allowing any computer to play it.

Taksi

Free, https://taksi.sourceforge.net/

Pros
Freeware: no watermark, unlimited recording length, compatibility with every video codec installed.
Cons
Doesn't record sound (but this may not be necessary if you are making a music video).
May create "empty" ranges at the start of the video, if the recording is not the first in the Taksi session.
Doesn't reliably detect Oni as an application window. This is fixed by using Rossy's OniUSB.

CamStudio

Free, https://camstudio.org/

Note: Unfortunately, this program now comes bundled with numerous adware-type programs that you can't always opt out of, so you may want to think twice about installing it.

CamStudio is actually intended for capturing video tutorials and is not specifically tailored for video games, but it can yield decent results (depending on the chosen codec, and your HD and CPU, of course). Like Taksi, it can use pretty much every video codec available system-wide. Unlike Taksi or Fraps, it can't hook a specific application, and instead records a specific portion of the screen. Unlike Taksi, it can record sound.

Mac A/V recording

These programs will automatically record Oni's sound and video at the same time. Just make sure to close any other applications that play sounds before you record Oni, unless you're using Audio Hijack (see "Mac audio-only recording"). If you don't want to pay for an A/V capture solution, the free alternative is OBS Studio or QuickTime Player (see the "video-only" section) used alongside BlackHole (see the "audio-only" section).

ScreenFlow

$149, http://www.telestream.net/screenflow/overview.htm

This is a very refined, user-friendly program with a full editor interface. ScreenFlow can capture regions of the screen, useful when recording Oni in windowed mode. System audio is captured by the Telestream Audio extension which the program offers to install for you.

A couple tips on preferences before starting a recording:
1. Under the Advanced tab, choose "Lossless" compression or you will not get satisfactory results.
2. Under the General tab, you'll probably want to turn off the countdown option.

To capture just Oni when playing in windowed mode:
1. Create a new recording (File>New), choose the right monitor in the "Record Desktop from:" menu, check the "Record Computer Audio" box, and on the second screen (notice the blue dots), the choice for "Record Desktop Framerate" should be set to "Automatic". This will allow ScreenFlow to record Oni at 60fps.
2. Instead of hitting the Record button, press the button with the icon of a rectangular marquee, then hover over Oni's window and press Space to select its area as the capture region. Now you can hit the big red circle button to record.
3. Stop recording using the ScreenFlow icon in the menu bar.

However, you will still have to use ScreenFlow's post-recording editing suite to crop out the title bar of the game window:
1. Hit the Change Canvas Size button. (If you recorded the whole screen, not just a window, make sure the "Snap to Front Window" box is checked.)
2. You'll see fields for typing in a custom canvas size, but don't use them. If you recorded Oni at 1024x768, as an example, the canvas size will be 1024x790, but if you changed "790" to "768", it would just deduct those 22 pixels from the top and bottom of the window equally.
3. In order to crop out Oni's window title bar, you'll need to zoom in on the video so you have enough control to move the top canvas boundary by individual rows of pixels. Drag the top canvas line down until the canvas size in those text fields reflects the actual resolution that Oni was running at (again, that should be 22 pixels less than what you started with).

Saving the recording will only save a ScreenFlow project with the raw video. To get a standard-format video such as .mp4:
1. Choose File > Export…. Click the "Manual" tab. Choose "Web - High" from the Preset menu. 2. Then click the "Customize…" button. Here you can set the framerate to 60fps if desired, as well as picking a good bit rate (4000 kbits/sec seems adequate when using 60fps). The quality of the audio does not need to be higher than 128kbit AAC. 3. Save the settings. Then, back on the export screen, make sure that the Resolution setting is "100% of original". Click "Export".

iShowU

$24-$79, https://www.shinywhitebox.com/

shinywhitebox offers three versions of their video capture product with differing prices and features. All products support region capture and window capture, but if you are recording Oni in windowed mode, keep in mind that iShowU's window capture option records the window's title bar as well. This means that you have to use region capture instead, which in turn means having to precisely select the contents of Oni's window. Fortunately iShowU provides its own zoom feature while you perform this selection, but make a tiny mistake and you could ruin your output with a misaligned recording area. If you have iShowU Instant + Advanced Features ($39) or iShowU Studio ($79), you can just record the Oni window and crop the video afterwards. By contrast, OBS Studio (below) records direct OpenGL output from Oni, giving you a perfect capture of just the game every time (but with the added hassle of configuring OBS and BlackHole).

Mac video-only recording

These programs record audio too, but they're designed to take input from a built-in microphone or from line-in, and thus will not record system sound. You have to combine one of these programs with one of the options under "Mac audio-only recording" to get an A/V recording of Oni.

QuickTime Player

Free, built-in

Simply choose File>New Screen Recording. You will be prompted to select a region of the screen to record, which still leaves you the challenge of precisely capturing the window's region (you may find macOS' Zoom feature, under the Accessibility preferences, helpful for making a precise selection). Like OBS, QT Player also will not record system sound without additional help; see below. If you use one of those methods to direct the game's sound output back into the computer, then make sure you also select this input source in QT Player's window by bringing up the pop-up menu using the arrow next to the Record button and choosing the right "Microphone" setting. The volume slider controls the volume of the input that QT Player will record; it does not seem to make much difference if it is set to the lowest volume or a little higher, but if it is set too high, it causes echoes. To make sure your recording won't have echoes, plug in headphones, open the Screen Recording window, and test-play the output from the game before you begin recording.

Mac audio-only recording

These programs will either record system sound separately, to be recombined with the captured video in your video editor of choice, or will divert system sound to a program that normally wouldn't be able to record it (as seen under "Mac video-only recording" above).

Additionally, you need to ensure that your levels are correct. Once you believe you are ready to record sound, go to System Preferences>Sound and make sure that the "Output volume" at the bottom and the "Input volume" under the Input tab are set properly. You can test this by generating some sound from the game without starting a recording, and watching the "Input level" bar in Sound's Input tab to see if it lights up appropriately while the sound is playing.

Note that you may not hear sound output from the game when you are directing the audio output to your video recording program, unless you have passthrough turned on. macOS' Audio MIDI Setup app should allow this if you select your input device and check the "Thru" box on the "M" (or "Master") channel's line. If you send passthrough to your speakers, you might get an echo that is captured in the audio recording (yes, even though you are not recording through the Mac's built-in microphone). You should use headphones to prevent this.

Audio Hijack

$49, https://www.rogueamoeba.com/audiohijack/

The basic issue with most programs that record your system sound is that they record all the sound, including various sound effects from your mail client, instant messenger, etc. This program allows you to specifically record the audio from just Oni.

BlackHole

Free, https://github.com/ExistentialAudio/BlackHole

This open-source program has replaced the defunct Soundflower as the app to use for audio capture on the Mac. If you try it out and have information to share about the proper configuration for recording Oni, please add some instructions here. Absent any special instructions on our wiki, you can look at instructions for using OBS Studio on Macs, as these will usually include setting up BlackHole.

SWB Audio App

$12/year, https://www.shinywhitebox.com/

shinywhitebox's audio capture app works on its own, allowing you to add system audio to any video recording app, including QuickTime Player. If anyone actually tests it, please update this section.

An audio cable

About $2-$5, wherever audio equipment is sold

If your Mac has standard minijack ports for audio input (microphone) and output (headphones), just plug one end of a standard audio cable into the headphones jack and the other end into the microphone jack to loop your sound output back into the computer. Then, in System Preferences>Sound, select "Headphones" under the Output tab and "Line In" under the Input tab. Make sure you also select line-in as your audio source when recording video in a program that also records audio.

Editing

Afterwards, you will probably need a way to edit your gameplay footage. On Macs, the above-mentioned ScreenFlow and iShowU Studio have built-in editors that appear after recording. iMovie is also available for free from the App Store. Free cross-platform editors include Shotcut and DaVinci Resolve (non-Studio version).

Adding subtitles

You may want to add subtitles to your videos (e.g. using srt files), for instance if your English is not perfect or to allow deaf people to understand them.

You can use Aegisub (free & cross-platform) to do that.

Note: YouTube nowadays supports adding .srt (or other types of subtitles) easily to your videos, this is good to know if you upload your videos to it.