From WiiBrew
Jump to navigation Jump to search
Karaokii Icon.png
TypeMusic game
LicenceCreative Commons by-nc-nd 3.0
Downloadable via the Homebrew Browser
Wiimote1.svg SensorBar.svg Loads files from the Front SD slot GameCube Controller
First place in 'Wii Games' category at 'SceneryBeta 2009 International Homebrew Showcase'.
This box: view  talk  edit

Karaokii is just what its name says: a Karaoke for Wii.

It shows the lyrics from the song is playing by following the rhythm of the music. All files must be stored under /apps/Karaokii/songs/ in a SD card readable by Wii.

It includes Sean Fournier's hit "Broken Stereo (Acoustic Version)" as sample song. Hear or download "Oh My", the whole album for free from Jamendo.

You can download a lot of sample songs via Karaokii Download Center or use Ultrastar ones. You can send Karaokii made by you by contacting me (see my profile) or in discussion page of this article. A form would be available soon.

Filetypes support

Music comes always in OGG format, although mod or mp3 support could be added in the future.

Karaokii features two kinds of lyrics: 'line karaoke' and 'word karaoke'.

It can read 'Ultrastar', 'Ultrastar-ng', 'Ultrastar deluxe' and 'Performous' lyrics files by renaming their extension to '.ki3'.

All '.kii', '.ki2' and '.ki3' can be 'image-scripted' to show animations while song playing.

Sorry about no voice recognizing by the moment ;), there are no microphone libraries yet.

Line Karaoke

'Line karaoke' displays a whole line of lyrics for each timemark. For 'line karaoke', Karaokii uses the file extension '.kii', and the lyrics inside must follow a format really similar to a '.lrc' file.

These are some valid examples:

   [00:05.96]When you try your best but you don't succeed
   [00:19.94]When you get what you want but not what you need
   [00:27.25]When you feel so tired but you can't sleep
   [00:33.66]Stuck in reverse

Timing can be formatted in all these ways: [mm:ss:xx] or [mm:ss.xx] or [mm.ss:xx] or [mm.ss.xx].

Using 3 digits for milliseconds instead of centiseconds is also valid.

A space could appear between the timing and the text too - it is removed by the program.

   [00:23.61] Satan loves a bomb scare
   [00:25.15] But he won't scare you
   [00:29.25] Hey, sexy boots
   [00:32.84] Get on your boots, yeah

A sharp sign means the same than a timed line without any text.

   [00:32.41]Oh baby dont you know I suffer?
   [00:36.12]Oh baby can you hear me moan?
   [00:39.92]You caught me under false pretences
   [00:44.20]How long before you let me go?

No lines must be blank in the lyric file and presence of ID tags (such ti:, ar:, au, al:) are not necessary and there must not be any of them in the file, althought they are ignored.

Word Karaoke

Word karaoke brings real word-by-word karaoke support. The format is similar to enhanced '.lrc' files, and they are contained in a '.ki2' file.

It follows all the rules from 'line karaoke' and add <mm:ss.xx> tags for each word or syllable we want to get timed.

   [00.32.50] Life <00.33.000>leaves <00.33.500>the <00.34.000>leaves
   [00.35.00] by lo<00.35.500>gical <00.36.000>deduc<00.36.500>tion
   [00.38.00] now the <00.39.000>self-des<00.39.500>truction <00.40.500>defeats <00.42.500>you 

Again the timecode can follow any of the fomats listed above and the space between it and the text is optional.

The first word takes the timing of the line timecode between [] and the rest take it from the previous <> tag.

To know words from syllables, words are followed by a space " ".

Ultrastar compatibility

All regular Ultrastar & deriv. '.txt' lyrics files are supported, so download any you like from the Internet, change the extension to '.ki3', converse '.mp3' to '.ogg' and if you want to you can use the album cover too by resizing it to 180x180px and switching to PNG format. Songs files must be named exactly the same as the karaoke file and album cover image. All media gets put directly into the songs folder, subfolders are only to be used for scripting. References in the lyrics to the image file (which are usually jpg) to the the newly converted png file. References in the lyrics to the mp3 will also need to be changed. Often there are several versions of the song such as lead or backup, choose one and name it as the main file. Finally cover images often have separate identifiers such as [CO] for cover art and also must be removed.


All '.kii', '.ki2' and '.ki3' typefiles feature '.png' images scripting to show animated images while the song is playing. The starting character that tells the software wether a line contains scripting data is '@'.

That's the format:

   @file t0 t1 x0 x1 y0 y1 zx0 zx1 zy0 zy1 r0 r1 o0 o1


   file is the name of the image file without '.png'.
   t0 and t1 mean appearing and desappearing time in milliseconds since the song started.
   x0 and x1 mean x coordinates in pixels at start and end of the animation.
   y0 and y1 mean y coordinates in pixels at start and end of the animation.
   zx0 and zx1 mean horizontal percentual zoom at start and end of the animation.
   zy0 and zy1 mean vertical percentual zoom at start and end of the animation.
   r0 and r1 mean inital and finishing rotation of the image in degrees.
   o0 and o1 mean inital and finishing opacity of the image in perecentage.

All this data are integers except file that is char string.

There is a script command analog to FillScreen that allows you to choose the background color to use while song is being played. Its opening label is two at signs '@@'as seen here:

@@FFFFFF //Fill the screen in white (Hexadecimal RGB format). 

Images used in script have to be be inside a folder whose name must be the same used as lyrics and audio filename.

Album covers

Each song can (and should) have an album cover to be shown in the song selection menu. This images must be '.png' and sized 180x180px.



Wiimote.svg GameCube Controller Action
Wiimote HOME Button GameCube START Button Quit game / return to loader

While song selecting

Wiimote.svg GameCube Controller Action
Wiimote D-Pad Left Wiimote D-Pad Right Gamecube D-Pad Left Gamecube D-Pad Right Move through song list (coverflow).
Wiimote A Button Gamecube A Button Play selected song

While song playing

Wiimote.svg GameCube Controller Action
Wiimote A Button Gamecube A Button Pause/Play
Wiimote B Button Gamecube B Button Return to song selection menu

Development stat and Screenshots

Old Screenshot. (2009-07-24) Note that the big 'L' at bottom left corner means the selected song has 'Line Karaoke' lyrics. Else if it was 'Word Karaoke', a 'W' would be shown.
Supposed cover.

(Newer first)

Finally it was released at the promised date! Thanks to every one who has tested the software, helped and given new ideas for cool stuff.--Pedrocrespo 10:52, 3 September 2009 (UTC)

I changed my opinon again... lol. First public release will appear on September 3rd WITH Ultrastar songs support!--Pedrocrespo 22:08, 28 August 2009 (UTC)

First public release (0.04) will be done by next week. It'll come without support of ultrastar songs because I have no freetime enough to finish this feature until my next holydays.--Pedrocrespo 17:24, 17 August 2009 (UTC)

Scripting support is now complete. No '.ki3' special files are needed, any '.kii' or '.ki2' file can contain now script data. Scripted songs may last up to 2 or 3 seconds when loading in order to load the lyrics, song, script data, cover, images, reallocate memory... so I think it's not much time! Anyways this time is pretended to be reduced to 1 second or 2 at the most, and scripting will be optional by selecting or deselecting it in settings menu. Next step: Ultrastar compatibility.--Pedrocrespo 23:43, 29 July 2009 (UTC)

The software is ready to be released as it can read both line and word karaoke, but I want to add some new features as image scripting and Ultrastar compatibility.--Pedrocrespo 10:14, 27 July 2009 (UTC)

A new interface showing album covers in a coverflow-alike slider is being implemented. Now it looks similar to Ultrastar.--Pedrocrespo 13:15, 23 July 2009 (UTC)

Progressing slowly. A lot of tests are being made in order to support a wide variety of formatted lyrics files. The first release will include 'Broken Stereo (Acoustic Version)' from Sean Fournier album 'Oh My' as sample song. In adittion a website where people may upload songs packages will be made. --Pedrocrespo 19:57, 20 July 2009 (UTC)

'Word Karaoke' also working. Currently adding some functions and file support improvements.

'Line Karaoke' working 100% succesfully! --Pedrocrespo 23:24, 13 July 2009 (UTC)