Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

PNGShot Switch: Difference between revisions

From GameBrew
2.5.1
No edit summary
Line 4: Line 4:
|description=Capture screenshots as PNGs.
|description=Capture screenshots as PNGs.
|author=J-D-K
|author=J-D-K
|lastupdated=2025/11/26
|lastupdated=2026/03/07
|type=Sysmodules
|type=Sysmodules
|version=2.5.1
|version=2.6.0
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/switchhomebrews/PNGShotSwitch.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/PNGShotSwitch.7z
Line 38: Line 38:


==Changelog==
==Changelog==
'''v2.6.0'''
* The default compression level has been reduced to four to decrease processing time. [https://github.com/masagrator @masagrator]
* Alpha channel stripping now uses NEON instructions where possible to decrease processing time. [https://github.com/masagrator @masagrator]
* Screenshots are now created with their maximum potential size pre-allocated and are trimmed after processing is complete to match their final size.
** This removes unnecessary FS calls and reduces file writing time.
* A configuration file has been added allowing you to customize some parts of PNGShot. See [https://github.com/J-D-K/PNGShot/blob/master/CONFIG.MD CONFIG.MD] for details.
'''v2.5.1'''
'''v2.5.1'''
* Add FW 21.0.0 Support by [https://github.com/impeeza @impeeza] in [https://github.com/J-D-K/PNGShot/pull/11 #11]
* Add FW 21.0.0 Support by [https://github.com/impeeza @impeeza] in [https://github.com/J-D-K/PNGShot/pull/11 #11]

Revision as of 02:13, 8 March 2026

PNGShot
General
AuthorJ-D-K
TypeSysmodules
Version2.6.0
LicenseMixed
Last Updated2026/03/07
Links
Download
Website
Source

A sysmodule that can take screenshots and save them as PNG's instead of the system's default JPEG.

Screenshots are exported to sdmc:/Nintendo/Album/PNGs/YYYY/MM/DD/YYYYMMDD_hhmmss.png when the capture button is pressed.

Features

  • Captures system screenshots as lossless PNG images.
  • Optional compatibility mode to allow both PNG and JPEG captures.
  • Simple SD card–based configuration.
  • Low-overhead sysmodule design written in pure C.
  • Highly stable.

Installation

Download the latest release from the Releases.

Extract the contents of the ZIP archive to the root of your Switch’s SD card.

(Optional) To keep system JPEG captures, create an empty file named sdmc:/config/PNGShot/allow_jpegs

Changelog

v2.6.0

  • The default compression level has been reduced to four to decrease processing time. @masagrator
  • Alpha channel stripping now uses NEON instructions where possible to decrease processing time. @masagrator
  • Screenshots are now created with their maximum potential size pre-allocated and are trimmed after processing is complete to match their final size.
    • This removes unnecessary FS calls and reduces file writing time.
  • A configuration file has been added allowing you to customize some parts of PNGShot. See CONFIG.MD for details.

v2.5.1

v2.5.0

  • All code has been heavily refactored to be cleaner, modular, and easier to maintain.
  • Captures are now organized in a cleaner folder structure for easier browsing:
    • sdmc:/Nintendo/Album/PNGs/YYYY/MM/DD/YYYYMMDD_hhmmss.png

v2.0.0

  • Capture event filter, bug fixes, and improved timestamps thanks to @ppkantorski.
  • Now includes VI patches to enable debug mode screen capturing thanks to @impeeza.
  • Creating a file named allow_jpegs and placing it in sdmc:/conifg/PNGShot will stop PNGShot from deleting JPEGs that are normally captured by the system.

v1.5.0

  • PNGShot now uses [album directory]/PNGs instead of switch/PNGShot when creating screenshots.
    • PNGShot will try to open the album directory on your SD card first and fall back to NAND if that fails.
  • This also means PNGShot no longer uses C stdio functions for file writing, instead using libnx's FS functions directly to get the job done.
  • Included in this release is what I call the "experimental" build:
    • This build buffers the entire raw capture after the capture button is pressed. This requires a lot more memory to be used. The experimental build uses 6MB vs the normal build's 24KB. YOU HAVE BEEN WARNED. This can cause conflicts and issues, but has the benefit of allowing normal JPEGs and video captures to function again because the capture stream is released almost immediately.

v1.0.2

  • Time service is exited after libnx time is initialized and it's no longer needed anymore.

v1.0.1

  • Uses new naming scheme for output.
  • Updated code.

v1.0

  • First Release.

Credits

Thanks to:

External links

Advertising: