#music #file #file-format #song #time #chip #chipper

yanked chipper_player

Do not use yet! Placeholder for the Chipper Music file format

0.1.1 Jul 16, 2022
0.1.0 Jul 16, 2022

#44 in #song

MIT license

36KB
750 lines

chipper-player

Core playback engine for the Chipper Music format. Small and easy to integrate.


Chipper is a music editor designed for games.

it is a small library that allows real time playback of Chipper songs using the Godot Engine or any custom engine using SDL2 . Other Engines may be added in the future. The Chipper library will be free and open source and can be added without licensing issues to any codebase using Godot or SDL2, while the editor itself will be sold in App Stores for a small fee to help support the project.

Instead of rendering your song into a compressed file, a Chipper song is a tiny file a few Kilobytes large that is processed at runtime, like old school "tracker" music files such as .mod or .xm. You have full interactive control over the playback via code - individual tracks can be muted, the order of pages in a song can be seamlessly changed, even the notes themselves can be modified in real time.

Unlike trackers, Chipper is designed for modern devices like laptops with small keyboards and tablets, although it can be used without issues on a desktop computer and a keyboard. Another key difference is that Chipper doesn't use samples yet. This first release will focus on "Virtual Chip" Based Instruments that can recreate the distinct characteristics of 1980's and 1990's video game sound hardware such as pulse wave generators and simple wavetables, making it perfect for retro styled games that need to feel as authentic as possible without resorting to emulation.

Chipper is currently in early development, and an alpha version will be available soon. For maximum portability, safety and performance, the Chipper runtime library is being developed using the Rust Programming Language and minimal dependencies. You can learn more about Rust at rust-lang.org.

Dependencies

~1–2MB
~40K SLoC