All Projects ā†’ dwhinham ā†’ Mt32 Pi

dwhinham / Mt32 Pi

Licence: gpl-3.0
šŸŽ¹šŸŽ¶ A baremetal kernel that turns your Raspberry Pi 3 or later into a Roland MT-32 emulator and SoundFont synthesizer based on Circle, Munt, and FluidSynth.

Projects that are alternatives of or similar to Mt32 Pi

mt32-pi-control
MT32-PI.EXE/MT32-PI.TTP/mt32-pi-ctl is a control program for the mt32-pi MIDI synthesizer available for DOS PCs, Atari ST and Amiga computers as well as modern systems running Linux and Windows.
Stars: āœ­ 22 (-90.48%)
Mutual labels:  midi, synthesizer, retrogaming
Otto
Sampler, Sequencer, Multi-engine synth and effects - in a box! [WIP]
Stars: āœ­ 2,390 (+934.63%)
Mutual labels:  raspberry-pi, audio, synthesizer
Awesome Music Production
A curated list of software, services and resources to create and distribute music.
Stars: āœ­ 340 (+47.19%)
Mutual labels:  audio, midi, synthesizer
Omnimidi
A software MIDI synthesizer for professional use.
Stars: āœ­ 181 (-21.65%)
Mutual labels:  audio, midi, synthesizer
Balena Sound
Build a single or multi-room streamer for an existing audio device using a Raspberry Pi! Supports Bluetooth, Airplay and Spotify Connect
Stars: āœ­ 1,306 (+465.37%)
Mutual labels:  raspberry-pi, raspberrypi, audio
Adlplug
FM Chip Synthesizer ā€” OPL & OPN ā€” VST/LV2/Standalone
Stars: āœ­ 249 (+7.79%)
Mutual labels:  audio, midi, synthesizer
Webaudiofont
Use full GM set of musical instruments to play MIDI and single sounds or effects. Support for reverberation and equaliser. No plugins, no Flash. Pure HTML5 implementation compatible with desktop and mobile browser. See live examples.
Stars: āœ­ 600 (+159.74%)
Mutual labels:  audio, midi, synthesizer
Romplayer
AudioKit Sample Player (ROM Player) - EXS24, Sound Font, Wave Player
Stars: āœ­ 445 (+92.64%)
Mutual labels:  audio, midi, synthesizer
Audiokitsynthone
AudioKit Synth One: Open-Source iOS Synthesizer App
Stars: āœ­ 1,258 (+444.59%)
Mutual labels:  audio, midi, synthesizer
Dspi
Digital Signal Processing (or Pi). Adventures in making my Raspberry Pi 3 realtime, and running audio DSP.
Stars: āœ­ 71 (-69.26%)
Mutual labels:  raspberry-pi, audio, synthesizer
Audiobench
Open source modular synthesizer
Stars: āœ­ 63 (-72.73%)
Mutual labels:  audio, midi, synthesizer
Fsynth
Web-based and pixels-based collaborative synthesizer
Stars: āœ­ 146 (-36.8%)
Mutual labels:  audio, midi, synthesizer
Fas
C Pixels-based graphical audio synthesizer implemented as a WebSocket server
Stars: āœ­ 100 (-56.71%)
Mutual labels:  raspberry-pi, audio, synthesizer
Shaden
šŸŽ§ A modular audio synthesizer.
Stars: āœ­ 175 (-24.24%)
Mutual labels:  audio, midi, synthesizer
Mixxx
Mixxx is Free DJ software that gives you everything you need to perform live mixes.
Stars: āœ­ 2,510 (+986.58%)
Mutual labels:  audio, midi
Rpi gpio
Ruby conversion of RPi.GPIO Python module
Stars: āœ­ 185 (-19.91%)
Mutual labels:  raspberry-pi, raspberrypi
Geonkick
A free software percussion synthesizer for GNU/Linux
Stars: āœ­ 187 (-19.05%)
Mutual labels:  audio, synthesizer
Piwheels
Python package repository providing wheels (pre-built binaries) for Raspberry Pi
Stars: āœ­ 180 (-22.08%)
Mutual labels:  raspberry-pi, raspberrypi
Briarids
An All-In-One home intrusion detection system (IDS) solution for the Raspberry PI.
Stars: āœ­ 187 (-19.05%)
Mutual labels:  raspberry-pi, raspberrypi
Multi Room Audio Centralized Audio For Home
šŸŽµ This Github Repository provides details on setting up a centralized audio system for your home using nothing but Raspberry Pi's and Old Speakers.
Stars: āœ­ 189 (-18.18%)
Mutual labels:  raspberry-pi, audio

mt32-pi CI

  • A work-in-progress baremetal MIDI synthesizer for the Raspberry Pi 3 or above, based on Munt, FluidSynth and Circle.
  • Turn your Raspberry Pi into a dedicated emulation of the famous multi-timbre sound module used by countless classic MS-DOS, PC-98 and Sharp X68000 games!
  • šŸ†• Add your favorite SoundFonts to expand your synthesizer with General MIDI, Roland GS, or even Yamaha XG support for endless MIDI possibilities.
  • šŸ†• Includes General MIDI and Roland GS support out of the box thanks to GeneralUser GS by S. Christian Collins.
  • No operating system, no complex Linux audio configuration; just super-low latency audio.
  • Easy to configure and ready to play from cold-boot in a matter of seconds.
  • The perfect companion for your vintage PC or MiSTer FPGA setup.

āœ”ļø Project status

  • Tested on Raspberry Pi 4 Model B and Raspberry Pi 3 Model A+, B, and B+.
    • Pi 2 works, but only with concessions on playback quality.
    • Pi 0 and 1 are unfortunately too slow, even with an overclock.
  • PWM headphone jack audio.
    • Quality is known to be poor (aliasing/distortion on quieter sounds).
    • It is not currently known whether this can be improved or not.
  • IĀ²S Hi-Fi DAC support.
    • This is the recommended audio output method for the best quality audio.
  • MIDI input via USB or GPIO MIDI interfaces.
  • Configuration file for selecting hardware options and fine tuning.
  • LCD status screen support (for MT-32 SysEx messages and status information).
  • Simple physical control surface using buttons and rotary encoder.
  • MiSTer FPGA integration via user port.
  • Network MIDI and auto-update is planned.

āœØ Quick-start guide

  1. Download the latest release from the Releases section.
  2. Extract contents to a blank FAT32-formatted SD card.
    • If you are updating an old version, you can just replace the kernel*.img files. The other boot files will not change often; but keep an eye on the changelog just in case.
  3. For MT-32 support, add your MT-32 or CM-32L ROM images to the roms directory - you have to provide these for copyright reasons.
    • You will need at least one control ROM and one PCM ROM.
    • For information on using multiple ROM sets and switching between them, see the MT-32 synthesis wiki page.
    • The file names or extensions don't matter; mt32-pi will scan and detect their types automatically.
  4. Optionally add your favorite SoundFonts to the soundfonts directory.
    • For information on using multiple SoundFonts and switching between them, see the SoundFont synthesis wiki page.
    • Again, file names/extensions don't matter.
  5. Edit the mt32-pi.cfg file to enable any optional hardware (Hi-Fi DAC, displays, buttons). Refer to the wiki to find supported hardware.
    • MiSTer users: Read the MiSTer setup section of the wiki for the recommended configuration, and ignore the following two steps.
  6. Connect a USB MIDI interface or GPIO MIDI circuit to the Pi, and connect some speakers to the headphone jack.
  7. Connect your vintage PC's MIDI OUT to the Pi's MIDI IN and (optionally) vice versa.

šŸ“š Documentation

More detailed documentation for mt32-pi can now be found over at the mt32-pi wiki. Please read the wiki pages to learn about all of mt32-pi's features and supported hardware, and consider helping us improve it!

ā“ Help

Take a look at our FAQ page for answers to the most common questions about mt32-pi.

If you need some help with mt32-pi and the wiki doesn't answer your questions, head over to the discussions area and feel free to start a topic.

āš  Note: Please don't use the Issues area to ask for help - Issues are intended for reproducible bug reports and feature requests. Thankyou!

šŸ™Œ Acknowledgments

  • Many thanks go out to @rc55 and @nswaldman for their encouragement and testing! ā¤ļø
  • A huge thankyou to everyone who has donated via Ko-Fi, PayPal, or Amazon - your support means a lot! ā¤ļø
  • The Munt team for their incredible work reverse-engineering the Roland MT-32 and producing an excellent emulation and well-structured project.
  • The FluidSynth team for their excellent and easily-portable SoundFont synthesizer project.
  • S. Christian Collins for the excellent GeneralUser GS SoundFont and for kindly giving permission to include it in the project.
  • The Circle and circle-stdlib projects for providing the best C++ baremetal framework for the Raspberry Pi.
  • The inih project for a nice, lightweight config file parser.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].