How to Take High-Quality Screenshots in MPV?

The mpv media player is a powerful, minimalist tool favored for its high performance and deep customization options. While many users know it for seamless video playback, it also includes a robust, built-in screenshot engine capable of capturing pristine images directly from your media. This guide will walk you through the essential keyboard shortcuts, configuration tweaks, and advanced commands needed to capture high-quality, uncompressed screenshots using mpv.

The Default Screenshot Shortcuts

Out of the box, mpv provides three primary keyboard shortcuts for capturing your screen. Each serves a slightly different purpose depending on whether you want to include subtitles or capture a single frame versus every frame.

By default, these images are saved in your current working directory (usually where you launched the terminal or the folder containing the video) as PNG files.

Customizing Screenshot Quality and Location

To truly get high-quality screenshots, you should modify mpv’s configuration file (mpv.conf). This allows you to change the file format, maximize compression quality, and choose a specific save folder so your desktop doesn’t get cluttered.

Add the following lines to your mpv.conf file:

# Set the screenshot format (PNG is lossless and high quality)
screenshot-format=png

# Set PNG compression level (0-9; 0 is no compression, 9 is max compression)
# Higher numbers take a bit longer to save but result in smaller files without quality loss
screenshot-png-compression=7

# Choose a dedicated folder to save your screenshots
screenshot-directory="~/Pictures/mpv_snapshots"

# Template for naming the files (includes video filename and timestamp)
screenshot-template="%F-[%p-%N]"

Advanced Precision: Taking Source-Resolution Screenshots

Sometimes, your video player might be scaled up to fit a 4K monitor, but the video itself is only 1080p. If you want to capture the screenshot at the video’s original native resolution—ignoring any window scaling or video filters you have applied—you can use the video argument.

To do this on the fly, you can map a custom key in your input.conf file:

# Press 'g' to take a raw screenshot at native video resolution
g screenshot video

With these settings locked in, you can seamlessly archive your favorite cinematic moments in pristine quality with a single keystroke.