Skip to main content

Crazily advanced floppy music player for Raspberry Pi

Project description

The Floppi-Music project aims at creating a “crazily advanced” floppy music library for the Raspberry Pi, written in pure Python.

Motivation

Everyone is doing floppy music these days, and it really gets old and boring. However, Eike badly wanted to try floppy music himself, and of course I wanted to meet his desire. Our plan was to create the floppy music code in pure Python, and we wanted to use the Raspberry Pi to have a lot of high-level interfaces available.

The final goal is to build a “floppy music jukebox” for presentation at events and conferences.

Implementation / design goals

Our intention was to break loose from the low-level approach to floppy music controller programming and use modern paradigms in a modern language instead.

The floppy music engine is entirely multi-threaded, with a playback engine scheduling playback of notes for the various floppy drive threads.

The framework is designed so it can be easily extended or used as a library. For example, all recognized input formats are parsed by seperate functions and converted to an internal format suitable for playback by the engine. It is easy to create such parsers for any other (sensible) file format.

Wiring scheme

The wiring scheme for the Raspberry and floppy interfaces can be found in WIRING.txt.

What works

  • Parsing of MML (Music Macro Language) files, via MMLlib

  • Playback of 4 (or 8) simultaneous tracks

  • floppi-play command to play recognized, single files through the engine

What is planned (Roadmap)

  • Parsing of MIDI files

  • A webserver to select tracks and manage a playlist

  • An mpd-compatible network interface

  • Control through an LCD display and buttons on a controller

  • Self-tuning of floppy drives

Credits

Credits go to:

  • Felix “theftf” Falk (felix@b9d.de), for the wiring and hardware advice

  • Thorsten “mirabilos” Glaser (tg@mirbsd.de), for his floppy drive donation and magically always being right

Awards

The Floppi-Music project has won the following (more or less serious ;-)) awards:

  • “Coolest problem of the friggin’ month”-award in #python for “Floppy disk drives being out of tune”

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

Floppi-Music-0.1.tar.gz (10.5 kB view details)

Uploaded Source

Built Distributions

Floppi_Music-0.1-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

Floppi_Music-0.1-py2-none-any.whl (13.3 kB view details)

Uploaded Python 2

File details

Details for the file Floppi-Music-0.1.tar.gz.

File metadata

  • Download URL: Floppi-Music-0.1.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Floppi-Music-0.1.tar.gz
Algorithm Hash digest
SHA256 320c295e190fbd87e1094ddcb8f9fdb3d63b89b58846ab99b9ed1919e19b87e3
MD5 20eeec4f35725ada3898e5ee2710aa7e
BLAKE2b-256 09c6e217bbea4280613330b92d094a05a2412cf00c29fb871a3a1f489fcf403c

See more details on using hashes here.

Provenance

File details

Details for the file Floppi_Music-0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for Floppi_Music-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d30feb0069250816a33f359270706709d9f46d5e087b864498a6df200c70a706
MD5 d91a7892bcb7ae3d31c66bef524e3487
BLAKE2b-256 1081e366bd97e6f35ba9ce3457d4f78390e6f4022963fe1a883164ec13e8d72c

See more details on using hashes here.

Provenance

File details

Details for the file Floppi_Music-0.1-py2-none-any.whl.

File metadata

File hashes

Hashes for Floppi_Music-0.1-py2-none-any.whl
Algorithm Hash digest
SHA256 1105e8b0ce968bc8393a528d576a5fdf5f59208ef75c7c3794c39120c80a502d
MD5 efeca0a05ce9d3fb0866a3789cf02a01
BLAKE2b-256 28d6a0d32398e879ced99682fe59c3b5de5630fbbe8c77807d3f84699431efec

See more details on using hashes here.

Provenance

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