Ultrastar Deluxe is an open source alternative for the once popular (but now dead) SingStar franchise on the PS 2/3/4. Ultrastar Deluxe runs on Windows, Mac and Linux and lets you add and create your own songs.
My goal was to create an easy solution to play Ultrastar Deluxe on my TV. Therefore I choose one of my spare Raspberry Pi’s 3b+.
It is possible to play Ultrastar Deluxe, but there are some limitation which are not worth it for me.
Limitations
- Output is limited to Full HD (no 4K), since the Raspberry PI does not support this (HDMI wise and performance wise)
- H.264/MPEG4-AVC videos will have severe performance issues while singing and even in the ‘song selection’ menu while playing the preview video. H.264 videos must be removed entirely to get decent performance.
I tried different resolutions (720x576, 1920x1090) and different AVC profiles (Main@L3.1, High@L4). Lower profiles and lower resolutions worked better, but the framerate was no where near 30fps. - I did not test H.265 videos, but I expect them to perform even worse.
- I did not add autostart for Ultrastar, nor test controller support (which would obviously nice on a TV).
Installation
- Preparation
You need a Raspberry Pi 3b+, an internet connection (LAN or WLAN), a USB mouse and keyboard, a monitor, a MicroSD-Card, a PC with an card reader and a USB-microphone. I used the original wireless Singstar mic, which worked just fine.
Connect the card reader to your PC and everything else to the Raspi. - OS installation
- Download Raspbian (I used Raspbian Buster with Desktop)
- Flash it to an MicroSD-Card with balenaEtcher
- Install Raspbian
- Open terminal and run
sudo apt-get update
andsudo apt-get upgrade
- Compile Ultrastar Deluxe
(Following the instructions on the GitHub repo)-
Open terminal and run the following commands
1 2 3 4 5 6 7 8 9 10
sudo apt-get install git automake make gcc fpc \ libsdl2-image-dev libavformat-dev libswscale-dev \ libsqlite3-dev libfreetype6-dev portaudio19-dev \ libportmidi-dev liblua5.3-dev libopencv-highgui-dev git clone https://github.com/UltraStar-Deluxe/USDX cd USDX ./autogen.sh ./configure make sudo make install
-
After that you can already start Ultrastar by typing
ultrastardx
-
- Performance tuning
(This is needed to get the Ultrastar UI run smoothly)- Run
sudo raspi-config
in terminal - Go to
7 Advanced Options
- Choose
A3 Memory Split
and set it to256
to give the GPU a little bit more memory - Also under
7 Advanced Options
go toA7 GL Driver
and chooseG3 GL (Full KMS) OpenGL desktop driver with full KMS
- Run
- Copying songs
Copy your songs directly to the MicroSD card or via USB-Stick and place them in the
/home/pi/.ultrastardx/songs
directory
You can now start Ultrastar Deluxe by typing ultrastardx
into a terminal.