More actions
No edit summary |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
|title=PNGShot | |title=PNGShot | ||
|image=Switch-logo.png | |image=Switch-logo.png | ||
|description= | |description=Capture screenshots as PNGs. | ||
|author=J-D-K | |author=J-D-K | ||
|lastupdated=2024/09/ | |lastupdated=2024/09/18 | ||
|type=Sysmodules | |type=Sysmodules | ||
|version=1.0 | |version=1.5.0 | ||
|license=Mixed | |license=Mixed | ||
|download=https://dlhb.gamebrew.org/switchhomebrews/PNGShotSwitch.7z | |download=https://dlhb.gamebrew.org/switchhomebrews/PNGShotSwitch.7z | ||
Line 19: | Line 19: | ||
|image_alt=PNGShot | |image_alt=PNGShot | ||
}} | }} | ||
A sysmodule that can take screenshots and save them as PNG's instead of the system's default JPEG. The benefits are that: | |||
* Files are smaller than a bitmap, ranging from a couple of hundred kilobytes to just under 2MB, depending on what’s captured. | |||
* Unlike JPEG, PNGs are lossless. | |||
==Installation== | |||
For now you will need the exefs patches from [[Bitmap Printer Switch|bitmap-printer]]. | |||
Download the sysmodule from [https://github.com/J-D-K/PNGShot/releases here] and extract to your SD card. | |||
==User guide== | |||
Screenshots are exported to "SDMC:/[album directory]/PNGs/[year][month][day][hour][minutes][seconds].png" when the capture button is pressed. | |||
They are standard RGB, containing no alpha to minimize size. They are captured using the screenshot viLayer, so they do contain the same watermarks as normal screenshots. This can easily be changed by editing line 99 for the "experimental" build or 170 of capture.c in PNGShot's source. | |||
==Changelog== | ==Changelog== | ||
'''v1.5.0''' | |||
* PNGShot now uses <code>[album directory]/PNGs</code> instead of <code>switch/PNGShot</code> 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''' | '''v1.0.2''' | ||
*Time service is exited after libnx time is initialized and it's no longer needed anymore. | *Time service is exited after libnx time is initialized and it's no longer needed anymore. | ||
Line 38: | Line 48: | ||
* First Release. | * First Release. | ||
==Thanks to | ==Credits== | ||
Thanks to: | |||
* [https://github.com/HookedBehemoth HookedBehemoth] for [https://github.com/HookedBehemoth/bitmap-printer bitmap-printer] and its patches. | * [https://github.com/HookedBehemoth HookedBehemoth] for [https://github.com/HookedBehemoth/bitmap-printer bitmap-printer] and its patches. | ||
* [https://github.com/impeeza Impeeza] for enhancing the makefile and readme to be more descriptive and easier to use. Thank you. | * [https://github.com/impeeza Impeeza] for enhancing the makefile and readme to be more descriptive and easier to use. Thank you. |
Latest revision as of 02:23, 22 September 2024
PNGShot | |
---|---|
General | |
Author | J-D-K |
Type | Sysmodules |
Version | 1.5.0 |
License | Mixed |
Last Updated | 2024/09/18 |
Links | |
Download | |
Website | |
Source | |
A sysmodule that can take screenshots and save them as PNG's instead of the system's default JPEG. The benefits are that:
- Files are smaller than a bitmap, ranging from a couple of hundred kilobytes to just under 2MB, depending on what’s captured.
- Unlike JPEG, PNGs are lossless.
Installation
For now you will need the exefs patches from bitmap-printer.
Download the sysmodule from here and extract to your SD card.
User guide
Screenshots are exported to "SDMC:/[album directory]/PNGs/[year][month][day][hour][minutes][seconds].png" when the capture button is pressed.
They are standard RGB, containing no alpha to minimize size. They are captured using the screenshot viLayer, so they do contain the same watermarks as normal screenshots. This can easily be changed by editing line 99 for the "experimental" build or 170 of capture.c in PNGShot's source.
Changelog
v1.5.0
- PNGShot now uses
[album directory]/PNGs
instead ofswitch/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:
- HookedBehemoth for bitmap-printer and its patches.
- Impeeza for enhancing the makefile and readme to be more descriptive and easier to use. Thank you.