SakeTami
TotalJustice
TotalJustice

patreon


Sphaira v1.0.0 EA1 - Early access

This release is quite a big one. I have spent a lot of time on this release. Many new features have been added and lots issues have been fixed.

Changes

Fixes

Audio player

I have added an audio player to Sphaira, which supports mp3, wav, flac, ogg, bfstm files.
Mp3 files that have meta data embedded will be displayed, such as artwork, artist, song name etc.

Controls:

You now set any of the above music files as the background music in Sphaira. From the file browser:

  1. Open the file browser.

  2. Press X to select options.

  3. Navigate down to "Advanced".

  4. Select "Set as background music".

  5. Restart Sphaira and the music will automatically play!

To remove the song:

  1. Press Y to open Sphaira options.

  2. Select "Theme".

  3. Select "Remove Background Music".

Devoptab mounts

Custom mount points are here! Config entries go in /config/sphaira/mount/. Multiple entries can exist in the same file. The file name must be named using the names between (name) in from the table below (see the devoptab_templates.zip attached below).

Supported mounts:


Here is an example of a mount config with all options: https://gist.github.com/ITotalJustice/d24eee615335e9ded39305e072a6cbab/raw/b6aada4d15b9972cde724b879c82d1bf6f628944/smb_example_full.ini

Here's an example of a simple Samba config: https://gist.github.com/ITotalJustice/d24eee615335e9ded39305e072a6cbab/raw/b6aada4d15b9972cde724b879c82d1bf6f628944/smb.ini
This file would go in /config/sphaira/mount/smb.ini

Another example using webdav: https://gist.github.com/ITotalJustice/d24eee615335e9ded39305e072a6cbab/raw/b6aada4d15b9972cde724b879c82d1bf6f628944/webdav.ini
This file would go in /config/sphaira/mount/webdav.ini

Vfs

Vfs is basically a shortcut to other mount points. This can be used as a way to quickly access folders on your sd card, or even other network mount points.

Here is an example: https://gist.github.com/ITotalJustice/d24eee615335e9ded39305e072a6cbab/raw/b6aada4d15b9972cde724b879c82d1bf6f628944/vfs.ini
This file would go in /config/sphaira/mount/vfs.ini

NSZ export


I've added NSZ to hopefully encorage more people to use NSZ for their backups. NSZ is basically a compressed NSP. Normally, you cannot compress a NSP because the NCA's are encrypted, and encrypted data does not compress. NSZ solves this by decrypting the data and then compressing. When converting back to NSP or installing, the data is decompress and then re-enrcypted. This is lossless. No data is modfied.

Why use NSZ?

The benefit of NSZ is that is results in a smaller output. Not only that, but NSZ exports are faster than NSP, and NSZ also installs faster compared to NSP.

The reason this happens is simple. Doing same source transfers (SD card -> SD card), such as exporting a game that is installed on your sd card to sd card, you halve your maximum throughput. However, if the data is compressed, then you write less data, which can improve performance. This is only true if the write speed is much slower than compression speed VS the final output size. In my tests, this is almost always true.

Installing works the same way. You have to read less data, which improves performance for same source transfers. This also improves performance is the read speed is slower than write speed, even if not using same source.

Example, you're installing a backup from your very slow http server, downloading at 8MiB/s. Your SD write speed is 30MiB/s, however you only achieve 8MiB/s because your bottleneck is the slow read. Now if the game is NSZ compressed, then it is possible to hit the max of 30MiB/s when decompressing, thus decreasing install times.

You can modify the NSZ exports, such as enabling block compression, changing compression level, changing thread count etc. However, i would strongly recommend leaving the options at the default as they have been tuned for a balance between speed and size.

NOTE: NSZ export only works with sources that support random write access. Because of this, Webdav and FTP are not supported as export targets. Please use Smb, Nfs, Hdd, SD card for NSZ export.

USB

The USB code has been completely changed. This change was made in order to verify that installs / exports are working correctly. I currently have 2 frontends for USB, python scripts and the new webusb version!

NOTE: the webusb client only works on edge or chrome-based browsers (firefox / safari not supported).

If you have any problems getting usb to work, feel free to reach to me on patreon.

Download

The version number will still say 0.13.3. I will update the version number when the full public release is out. This allows for the built-in updater to continue to function.

You can try out the USB web install here!

Sphaira lite is a smaller build of Sphaira with a lot of features disabled. I am providing it just in case people prefer / do not want these new features, but only want an up-to-date bug fix build.

-- TJ

Sphaira v1.0.0 EA1 - Early access

Comments

Hi. The usb code has been completely re written and ns usboader is not supported due to various issues I had with it. In this post, theres a usb tools.zip which has python scripts for installing. You may find it easier to install using MTP however, or you can setup a server such as samba/http/ftp on your pc and connect to it using sphaira. The usb install isn't well documented yet, I'll look to write a tutorial soon.

TotalJustice

Sorry I meant USB Install

laz305

I'm trying to install via mtp using ns-usbloader v7.2 it just says waiting for list on the switch. Am I doing something wrong?

laz305


More Creators