Supported Media File Formats - UltraStar-Deluxe/Play GitHub Wiki

Supported Formats

For UltraStar Play, we suggest using the following formats and encodings for media files:

  • audio: mp3 or ogg vorbis
  • video: h264/AVC1 mp4 or webm or vp8

UltraStar Play is built using the Unity game engine.

Unity targets a plethora of devices including desktop (Windows, Linux, MacOS), mobile (iOS, Android), TV (Apple or Android), and consoles (PlayStation, XBox, Nintendo Switch). These platforms come with a differing support of media files. Unfortunately, this results in a smaller amount of cross-platform supported file formats and codecs.

Depending on the hardware and software of a particular device, more formats may be supported. But in general, other formats are less suited for cross-platform support and thus also less suited to distribute songs for UltraStar Play.

For details about supported formats by Unity see here.

Tools for Conversion

An easy to use tool for converting media files is FFmpegYAG. It is based on the free and open source ffmpeg library, which supports almost all common formats, supports cutting video and audio files, supports separation of video and audio streams from video files, and is quite fast.

An easy to use tool for converting audio files is fre:ac. It can convert all audio files in a folder structure to another format while retaining the folder structure.

NOTE: Converting an audio file reduces the quality in most formats due to compression. This is also true for mp3 and ogg formats. Thus, try to minimize the number of conversions to keep a high audio quality.

Changing the UltraStar Song txt File

After the media files have been converted, they must be referenced in the UltraStar song txt file.

For example, you might need to change the #VIDEO tag to point to an mp4 file such that #VIDEO:My-Cool-Song.avi (avi file) becomes #VIDE:My-Cool-Song.mp4 (mp4 file).

Note that the #MP3 tag is also used for non-mp3 files, for example #MP3:My-Cool-Song.ogg (ogg file).