Changelog / 03

Spatial Audio System Changelog

Changes in each published version. Before installing or updating, please check the supported environment and notes.

Entries for older versions describe the behaviour at the time of release. For current usage, see the Wiki.

Added the Sound Handy and redstone output, and expanded playback features.

Sound Handy

Lets you operate your own Playback Devices from a distance. Right-click a device to select it, and press the middle mouse button to play or stop it. Shift + wheel switches the target, Shift + R shows and edits the range, and Shift + H toggles the device outline.

The device's name, audio source, playback state and more are shown in a mini HUD. From the Sound Handy's screen you can rename a device or open the device's screen. Test playback is heard only by you, at your current position. Added a dedicated guide page to the Wiki.

Playback and range settings

  • Added a repeat button (↻) to normal playback. It repeats the audio in the single-play slot until stopped.
  • Expanded schedules to up to 16 entries. The screen shows 6 rows at a time; scroll to move between them.
  • Moved the switch for enabling and disabling the schedule to the schedule screen. Deleting an entry is now done with a trash button, and each row has a stop button (■).
  • When the schedule is enabled, the media in the normal slot return to your inventory. If there is no space, they drop at your feet.
  • The playback range used when no Range Board is used can now be set from 1 to 64 blocks. The default for new devices is 64 blocks. Changes apply from the next playback.
  • While a board is in use, the board's range takes priority. If a face's attenuation distance is not set, the board's default of 8 blocks is used.

Redstone output

You can set up to 16 rules linked to the playback state. A continuous output for “Playing” and pulse outputs for “On start”, “On stop” and “On end” are supported. Signal strength is 1–15, the delay is up to 30 seconds in 0.5-second steps, and the pulse length is up to 5 seconds in 0.1-second steps. A rule can also target only specific schedule entries.

When multiple outputs overlap, the strongest signal is used. The signal is output to the surroundings as a weak signal and is not transmitted through solid blocks. Playback no longer restarts when the device's own output feeds back into its input. On existing devices, outputs are disabled by default.

Playback when joining mid-play

When you join a server, change dimensions or enter a range, you now hear the sound from the position matching the elapsed time. Playback positions may differ between players due to download time and other factors.

Fixes and improvements

  • Fixed repeat playback stopping after 10 minutes.
  • Fixed a signal to an empty slot clearing the repeat setting, and playback continuing after the media was removed.
  • The board descriptions and the message shown when an upload fails are now translatable.
  • Reduced the playback position delay for players who join mid-play.
  • Bundled Manta 2.5.0 and updated text rendering in screens, tooltips, HUDs and the Wiki.

Compatibility and developer information

The network protocol is 1.5. Older clients cannot connect. Make sure the server and clients run corresponding versions. To check where playback started, you can use SAS-CatchUp and SAS-Delivery in the server log. Also note the conditions for use alongside older versions that require Manta 1.x.

Redesigned the screens and added scheduled playback and an in-game Wiki.

  • Moved the Playback Device and Memory Device screens to Manta UI. Manta 1.1.12 is bundled inside the jar.
  • Added scheduled playback with up to 6 entries, each played 1–10 times. You can register media by dragging them or with Shift + click, reorder entries, and preview them.
  • Added 5 in-game Wiki pages in Japanese and English. Press F1 while a hint is shown to open the guide for that feature.
  • Cover art images, hints and write errors are now shown on screen.
  • Devices can now be switched between public and private.
  • Added a HUD to the Range Board that shows the current operation.
  • Blocks, media and audio storage locations from 1.0.3 and earlier can now be carried over. The migration to a new world recommended in 1.0.4 is not needed with this version.
  • Improved playback session management, timeouts, network data validation and storage handling, and added 52 unit tests.

In this version the mod ID changed from stationsoundsystem (Station Sound System) to spatialaudiosystem (Spatial Audio System).

Renamed to Spatial Audio System and added a public API.

  • Renamed from Station Sound System to Spatial Audio System. The mod ID changes from stationsoundsystem to spatialaudiosystem.
  • Added belugalab.sas.api as a public API for other mods. It provides media and range information, audio loading, play and stop, and a playback-complete event.
  • Fixed audio continuing to play after the world is closed. Data still being transferred is also cleaned up when you leave.

Note for this version

Blocks and Recording Media from before the rename are not recognized as they are. Support for carrying them over was added in 1.0.5.

Large audio files can now be sent and received.

  • Audio is now sent in 500 KB chunks, and the limit per file has been raised to 10 MB.
  • Fixed players being disconnected from the server when writing or playing large audio.
  • Incomplete transfers are now discarded after 30 seconds.
  • Improved the compatibility of notification packets and the generation of sync data.
  • Moved the board's coordinate set and clear messages below the item name.

Audio is now saved as files on the server side.

  • Recording Media now hold an ID that refers to the storage location instead of the audio itself. Old media are migrated the first time they are played.
  • Changed to a method that prevents audio data from being corrupted by item syncing or Creative mode actions.
  • Added a mod icon.
  • Translated the Range Board's display into Japanese, and added targeting up to 64 blocks away and a preview that follows your line of sight.
  • Fixed sound playing outside the range right after joining a world.

Fixed issues with attenuation, redstone playback and stopping audio.

  • Fixed volume attenuation not being applied, and a momentary loud sound right after leaving the range.
  • Attenuation is now correctly applied to other players' audio sources as well.
  • Fixed playback not starting from redstone input.
  • Playback is now skipped when invalid audio data is detected.
  • Breaking a Playback Device now also stops the sound for other players.

The first release, published as Station Sound System.

Added a Playback Device, a device for writing audio, Recording Media and a Range Board for Minecraft 1.21.1 / NeoForge. Supports MP3, OGG and WAV, redstone input and multiplayer.

The mod ID at the time was stationsoundsystem. The mod was renamed to Spatial Audio System in 1.0.4.