#karaoke #file-format #key-file #emk #extreme-karaoke

emk-rs

Pure-Rust implementation of the Extreme Karaoke file format

2 unstable releases

0.2.0 Nov 7, 2024
0.1.0 Nov 6, 2024

#67 in Multimedia

Download history 218/week @ 2024-11-03 22/week @ 2024-11-10 4/week @ 2024-11-17

244 downloads per month

MIT license

35KB
744 lines

emk-rs

This is a library to parse EMK karaoke archives.

EMK (or SFDS) is a proprietary format used by a karaoke player called Extreme Karaoke, which is popular in Thailand.

This pure-Rust implementation can parse the EMK format and extract the MIDI, lyrics, and NCN cursor files from the archive. It can also attempt to crack the XOR encryption key used to encrypt the EMK file, if the key is not known. The file itself is usually encrypted due to DRM. Think of this as the libdvdcss/libaacs of obscure karaoke formats. I hope they don't sue me.

See a video explaining the format here.

Note: This library is not affiliated with Extreme Karaoke or any of its affiliates. This is a reverse-engineered implementation of the EMK archive format.

See the EMK format specification for more information.

Dependencies

~6–8.5MB
~152K SLoC