Skip to main content

Implementation of musical dice games from the 18th century.

Project description

This package features an implementation of various musical dice games by Mozart, Kirnberger and Stadler. These dice games are also known as “Musikalisches Würfelspiel” (German for “musical dice game”).

The earliest printed edition of a dice game is Johann Philipp Kirnberger’s “Der allezeit fertige Menuetten- und Polonaisencomponist” (The ever-ready minuet and polonaise composer”), published in 1757. Afterwards, many composers, such as, for example, C.P.E. Bach, Hayden, and Mozart, published these so called “Musikalische Würfelspiele” (musical dice games) all over Europe. The music style varies roughly between Gregorian chants up to and including the salon pieces of the Romantic period. See [Reuter2013] for more details.

To play a dice game, one would need:

  • two dice

  • a tables sheet with the measure indices

  • a measures sheet with all the numbered bars

  • music paper to write down your composition

The measures and tables where composed by the composer of the dice game and were organized such, that random compilations made a musical composition. To play the game, you would have to throw the dice, and then look up the measure corresponding to your dice throw and your bar index in the dice table. Having found the right bar number, you then select that bar from the measures sheet provided.

This software package automizes the production of these musical pieces. All pieces (tables sheets and measures) have been inserted into this software package and suitable software has been created to allow production of the musical pieces.

For a use case of this library, and more information on these dice games, please visit http://opus-infinity.org, a website by the same author.

For complete functionality, this package requires the following packages to be installed on the user’s system:

  • lilypond, to convert the compositions into midi and pdf files

  • fluidsynth or timidity, for converting midi to wav

  • ffmpeg, to convert wav to other audio formats

  • imagemagick, to prepare the image outputs of the compositions

Python API

The major component of this library is the class “DiceGame”. All dicegames implement this class and its funcions. For use cases, please see the demo’s in the scripts folder.

Technical details

All musical dice games are stored internally using Lilypond bars. When composed into a musical piece, these bars are combined to form a complete piece. The external package Lilypond is then called to convert the composition into a midi file and a pdf file. Next, fluidsynth, or timidity is used to convert the midi to wav, either using a default soundfont, or a user provided soundfont. Afterwards, the composition pdf can be transformed to png for display in, for example, a browser.

[Reuter2013]

Reuter, Christoph. (2013), Der Würfel als Autor, Würfelmusik und Zufallstexte des 17. bis 19. Jahrhunderts. In: Herbert Bannert, Elisabeth Klecker (Hgg.), Autorschaft, Konzeptionen, Transformationen, Diskussionen. Wien, Praesens Verlag. p. 195-222.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

musical_games-0.7.0.tar.gz (70.8 kB view hashes)

Uploaded Source

Built Distribution

musical_games-0.7.0-py3-none-any.whl (77.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page