Article History
 
 
 

7868 views
72% kleeder

fsound (format)
 

fSound
token - fsound

points - Chipist

file types - .fss

max filesize - 10mb

description -
::|CONTENTS
  1. Tools
  2. Editing the .fss file without using converter tools
  3. Samples
  4. Restrictions on submit
  5. Accepted file format
  6. Playback (for voting)
  7. Render to MP3
  8. Dead links for posterity
fsound is a tool for making one-channel music on Microsoft Windows (and works fine in Wine
) by ant1. It's the Windows port of his old BEEPER.exe tool, which is capable of creating one-channel songs for... No, not ZX Spectrum's beeper, but rather for IBM PC's built-in speaker.

It's also a ridiculously simple tool (not exactly simple usability-wise), meaning it's basically more accessible and platform-independant than any tool for writing beeper or Channel F tunes. It takes specially formatted text files (*.fss for posterity) as input and spits out 8-bit wav files.

Download here
.

Tools



it2fss
is a tool by Jangler and improved by kleeder to convert IT modules into fsound FSS files. It supports Tempo Changes, Volume Control and Samples.
You'll need Python 3
to run it. An explanation on how to use it is hidden as a comment at the beginning inside the script itself.

Another tool by kleeder called fSpeed is able to convert 44100Hz mono wav-files into fss, which gives the opportunity to let fsound emulate pcm-samples on low quality. The conversion process takes up a lot of time though and the output fss is very big even for short wav-files. If you plan to use it for your BotB entry, keep in mind the size limit of 10mb! It can be downloaded here
.

shiru also has a flash version at http://shiru.untergrund.net/temp1/flsound.swf but it may be slightly behind on features.

kleeder also made the tool named randomize_fsound, which generates a random .fss file. Is this useful in any way? Who knows. But it exists! Download here
!

Editing the .fss file without using converter tools



Here's how the format of this thing works: the speed amount is placed in the first line and foremost - the bigger the number, the slower the song. Tempo changes later in song need to be indicated by typing t in front of the number.
Comments are marked with " > " (spacebars are obligatory). Empty lines are ignored by the converter and ought to be constantly abused for easier navigation.

Notes are specified as [note] [octave] [length] [volume].
A note can be: a b c d e f g A C D F G x (uppercase indicates a sharp note and x plays white noise). THe octave range goes from 1 to 7 (c1 to b7).
Length can be: 1 2 4 8 f g t
where:
- 1 is a semibreve (whole-note)
- 2 is a minim (half-note)
- 4 is a crotchet (quarter-note)
- 8 is a quaver (eighth-note)
- f is a semiquaver (sixteenth-note)
- g is a demisemiquaver (thirty-secondth-note)
- t is a triplet
Volume ranges from 0 to f. If a note has no volume value, it will use the default volume, which can be set with v followed by 0 to f. Default volume when none has been set is a.
Rests are specified as r-[length].
Loops: Start a loop with LS. End a loop with Lx, where x is the number of times to play the song, from 2 to 9. A loop may NOT contain another loop!
Note seperation can be done via line break or semicolon.
Drums: Drums are specified as [drum] - [length]. The only drums that are supported are K (kick) and S (snare).

100

va

LS
c4fa;r-f
c4f1;r-f
c5fa;r-f
c5f1;r-f
c4fa;r-f
c4f1;r-f
c58a
g48a
L2

v8

c38
C38
D34
F34
D34
F34

LS
t10;x-f;t105
c4fa;r-f
c4f1;r-f
t10;x-f;t105
c5fa;r-f
c5f1;r-f
t10;x-f;t105
c4fa;r-f
c4f1;r-f
t10;x-f;t105
c58a
g48a
L2

LS
K-8;r-8;S-4;r-8;r-8;K-8;S-4;
L4


Samples



fsound uses raw-samples for Kick and Snare Drum, so it's possible to replace these samples with your own. Just make sure to use the same encoding and filename and fsound will be able to render them without problems. There might be OHBs which uses custom samples as their bitpack. Sample support is still very limited, since you're not able to pitch them or use more than two for one file.

Restrictions on submit



Your submitted .fss-file has to be in the correct syntax for fSound to convert it into a wav-file.
Not official: If you're using custom samples, put them together with the .fss in a zip-folder and upload the zip! This is NOT allowed on BotB at the moment, but if you wanna share your work somewhere else or if there's a rulechange in the future, uploading the .zip would be recommended.

Accepted file format



- fss

Playback (for voting)



drag and drop the .fss onto the fSound.exe. It will generate a wav-file for you to listen to. Make sure to have the kick.raw and snare.raw files in the same folder as the fSound.exe. If there are special samples provided in the bitpack or if the uploaded file is a zip, make sure to replace the default kick and snare-files.

Render to MP3



Use fSound to generate the wav-file and convert it with a tool of your choice into a mp3-file.



https://sites.google.com/site/splonglewongle/fsound
https://sites.google.com/site/splonglewongle/fsound%28dos%29.zip