Search Results for

    Show / Hide Table of Contents

    Windows Desktop Codecs

    AVPro Movie Capture supports both the built-in Windows codecs, and any 3rd-party codecs installed on the system. Codecs support varies based on the API:

    Video API Containers Legacy Hardware
    Encoding
    3rd-party
    Codecs
    Min OS Support
    Media Foundation MP4 . ✓ . Windows 7
    DirectShow AVI/MP4 ✓ . ✓ Windows XP
    VFW (Video for Windows) AVI ✓ . ✓ Windows XP

    Media Foundation Codecs

    Using Media Foundation (MF) codecs is the most modern option and the most typical use case. Only a fixed subset of codecs are supported:

    Video API Hardware
    Encoding
    Min OS Support Specs

    Video Codecs
    H.264 ✓ Windows 7 Codec Spec
    HEVC (H.265) ✓ Windows 10 Codec Spec

    Audio Codecs
    AAC . Windows 7 Codec Spec
    FLAC . Windows 10 .

    Image Codecs
    Uncompressed PNG . Windows XP .
    H.264 Codec

    This is the most common and compatible codec by far and should be used in most cases. You can create easy to share videos with this codec.

    HEVC (H.265) Codec

    This is a very common and compatible codec with higher compression than H.264 but requires more modern hardware and operating system support.

    AAC / FLAC Audio Codec

    AAC is the most common audio codec and is widely compatible and should be used in most cases. FLAC is useful if you require lossless audio encoding but isn't as widely compatible.

    DirectShow & VFW Legacy Codecs

    These legacy codecs can be used for cases where the Media Foundation codecs are not suitable for the use case. Windows does include a few built-in legacy codecs but most of these are not useful. 3rd-party codecs can be installed, here are a few we recommend:

    Codec Realtime Lossless File Size Alpha Channel Link
    Lagarith ✓ ✓ Large ✓* Link
    MagicYUV ✓ ✓ Large ✓* Link
    x264 ✓* ✓* Small-Medium . Link

    *after configuring the codec

    Lagarith Codec

    Lagarith is a great general purpose codec. It uses the AVI file container. It’s fast enough for real-time (due to great multi-threading) and lossless. Naturally the files it generates are very large and not suitable for sharing. We use Lagarith as an intermediate codec for real-time capturing and then re-encode to something else like H.264 MP4 offline.

    Always check your codec settings. You can do this directly in the plugin via the Configure button:

    alt_text

    Recommended settings:

    alt_text

    1. Enable “Use Multithreading”
    2. Set Mode to RGB or RGBA if you need to capture alpha channel
    MagicYUV Codec

    MagicYUV is another fast lossless codec for realtime capture. It uses the AVI file container. It can capture transparent videos but first needs to be configured to do so:

    alt_text

    1. Open the codec configuration panel by going to the Start Menu and running "MagicYUV VFW codec configuration"
    2. Set "Accepted Colorspace" to "RGBA (RGB32 with alpha)"
    3. Tick "Enable RGBA compression"
    4. Click "Save defaults"
    x264 Codec

    x264 is a highly tunable codec and suits almost any need. By default it’s set up for off-line processing which produces tiny files but generally uses way too much CPU for real-time capture. We tweak x264 for real-time capture and use it to directly generate video files suitable for sharing. x264 can also be used with an MP4 muxer to generate MP4 files instead of AVI files (see FAQ).

    Always check your codec settings. You can do this directly in the plugin via the Configure button, or in 3rd party software like Virtualdub (video > compression menu). Recommended settings:

    • Preset: Fast/Veryfast/Superfast
    • Enable “Fast Decode”
    • Set “Ratefactor” to your desired quality level
    • Enable “VirtualDub Hack”
    • Set Debug “Log level” to None
    • Checking ‘Zero Latency’ can help with AV sync and also improve cross-platform playback (for some reason).

    alt_text

    Note: You may have to run this configuration twice - once for the 32-bit x264 config, and again for the 64-bit x264 config. These settings are separate for 32bit and 64bit so if you’re running 64-bit Unity it will use the 64-bit settings, but then if you build a 32-bit standalone app it will use the 32-bit settings - so it is often best to just build the same “bitness” so you’re using in Unity editor to avoid such confusion.

    In This Article