Songs - performous/performous GitHub Wiki
Performous currently supports songs in UltraStar (singing), Frets on Fire (singing, instruments) and StepMania (dancing) formats.
- Some free songs are available on our homepage.
- USDB has a lot of songs in UltraStar format, due to copyright issues only the timecodes are provided, you need to find the corresponding audio/video file yourself.
- Search the homepage/wiki/forum of other games; e.g. there are some guitar-only songs on the Frets on Fire website.
- Use a search engine to search for songs in a specific format, e.g. UltraStar or FoF.
- For dance songs you can use stepmania-online's huge repository.
- Additionally, Performous comes with a tool that can be used for extracting your SingStar DVDs.
Performous looks for songs in the following paths:
DATADIR/songs
~/.ultrastar/songs
/usr/local/share/performous/songs
/usr/local/share/games/ultrastar/songs
/usr/local/share/games/fretsonfire/data/songs
/usr/share/performous/songs
/usr/share/games/ultrastar/songs
/usr/share/games/fretsonfire/data/songs
where DATADIR
is all of Performous' data folders, including the installation directory and
-
C:\Users\USERNAME\AppData\Roaming\performous
(Windows Vista/7) -
C:\Documents and Settings\USERNAME\Application Data\performous
(Windows XP/2000) -
~/.local/share/games/performous
(Most Linux distributions) -
~/.local/share/performous
(Gentoo from ebuild)
Note that the actual paths to Performous datadirs can vary, because they
are modified by different platforms and distributions to suit their
particular conventions. Also, if you are compiling the game from source,
CMake variables CMAKE_INSTALL_PREFIX
and SHARE_INSTALL
affect the
directories, e.g. user datadir is ~/.local/SHARE_INSTALL
(unless
XDG_DATA_HOME
environment variable is set, in which case it is
XDG_DATA_HOME/SHARE_INSTALL
). You can see where Performous tries to
find songs by launching it from a terminal with argument
--log songs
and observing the output.
You can freely mix different formats in same songs-folder. In addition, Performous scans recursively, so a predefined folder structure is not required. Symbolic links are also followed, so it is possible to just create a link from one of Performous' dir to your real song folder.
You can add your songs in the GUI via the main menu: "Configure" -> "Paths". Then navigate to a folder you want to add and select "Add Path". Paths can be removed in a similar manner.
Folders may also be added via less direct methods, as per below.
Give song folders as command line arguments.
- Open a terminal
- Type in:
performous /path/to/my/songdir
- Hit enter
- Go to the song browser to verify that you didn't mistype the path (songs appear)
- Go to Configuration screen (from main menu) and hit Ctrl+S to save the setting
This writes the needed XML automatically and the next time you can start Performous from a shortcut or whatever, no need to specify the path again. For convenience, Windows users can use ConfigureSongDirectory.bat script that saves opening a terminal and navigating to Performous' directory.
Add folders directly to the config.xml (create it first by pressing Ctrl+S in the Configuration screen).
-
Find the configuration file:
-
~/.config/performous/config.xml
(*nix) -
C:\Users\USERNAME\AppData\Roaming\performous\config.xml
(Windows Vista/7) -
C:\Documents and Settings\USERNAME\Application Data\performous
(Windows XP/2000)
-
-
Open it in a text editor of your choice
-
Add the following entry between the -tags:
<entry name="paths/songs" type="string_list">
<stringvalue>/first/path/to/add</stringvalue>
<stringvalue>/perhaps/an/another/path</stringvalue>
</entry>
Of course, modify the paths to suit your needs. So in the end, your config.xml should look a little like this:
<?xml version="1.0" encoding="UTF-8"?>
<performous>
<entry name="paths/songs" type="string_list">
<stringvalue>/my/very/own/song/folder</stringvalue>
</entry>
<entry name="audio/playback" type="string_list">
<stringvalue>rate=44100,frames=512@pulse</stringvalue>
</entry>
<entry name="audio/round-trip" type="float" value="0.16"/>
</performous>
The amount and type of other -tags varies between users depending on their configuration.
Performous on Mac looks for songs inside (among other places) Performous package from folder /Contents/share/games/performous/Songs. You might need to create the Songs folder. You can open the package by right-clicking on the Performous logo and selecting "Show package contents". Placing all songs in this location allows the program to import songs.
Composer is an application made by Performous developers and can be used to author and edit singing notes in various formats.
UltraStar format songs can be modified with a text editor (StepMania too) or with one of the many available editors such as YASS. FoF format songs can be modified and created with a MIDI sequencer like Rosegarden, but there are also many custom editors. See Frets on Fire Wiki for more information plus tutorials and guides.
It is recommended to use an existing song as a template when making a new one. With all formats, you need audio tracks (background with or without vocals and preferably a separate track for each instrument) in MP3 or other supported format and it is also good to have a cover image and a background video or image.
Here is a list of tools that can aid in the creation of songs: [Creation tools](Creation tools "wikilink")
Cover pictures, background images and music videos and instruments can be added in the way each format describes them. In addition, Performous can guess suitable files to use if the entries are missing or broken in the song metadata. This also allows you to simply drop media to the song folder so that it gets used without touching the songs themselves.
The general song is played along with all present instrument songs. When playing an instrument the according song (if present) is muted when missing notes.
All rules are case-insensitive (See also SongParser::guessFiles() in game/songparser.cc)
Type | Filename | Extension |
---|---|---|
Cover |
cover , album , label , banner
|
png , jpeg , jpg , svg
|
Background |
bg , background
|
png , jpeg , jpg , svg
|
Video | any name |
avi , mpg , mpeg , flv , mov , mp4 , mkv , m4v
|
MIDI | notes |
mid |
Guitar | guitar |
mp3 , ogg , aac
|
Bass | rhythm |
mp3 , ogg , aac
|
Drums | drums |
mp3 , ogg , aac
|
Keyboard | keyboard |
mp3 , ogg , aac
|
Coop Guitar | guitar_coop |
mp3 , ogg , aac
|
Rhythm Guitar | guitar_rhythm |
mp3 , ogg , aac
|
Lead Vocals | vocals |
mp3 , ogg , aac
|
Generic/Background | song |
mp3 , ogg , aac
|