The Universal MIDI Packet (UMP) is a fundamental aspect of MIDI 2.0, which allows programs to negotiate and communicate with MIDI 1.0 and MIDI 2.0 products.
Florian Bomers joins us again to lead 3 workshops across November and December to explore this in detail. Florian runs his own company Bome Software, creating MIDI tools and hardware. He has been an active MIDI 2.0 working group member since its inception. He serves on the Technical Standards Board of the MIDI Association and chairs the MIDI 2.0 Transports Working Group. He is based in Munich, Germany.
The first workshop will set the scene and you can chose to join the 2nd and or 3rd depending on if you are developing with Apple or JUCE.
An automatic 20% discount on workshop 2 and/or 3 will be applied when purchased with the first workshop, discount will show at final checkout.
Difficulty level: Requires a working knowledge of C++ and MIDI
MIDI 2.0 is set to power the next generation of hardware and software with enhanced features for discovery, expression and faster communication. The Universal MIDI Packet (UMP) is a fundamental aspect of MIDI 2.0, which allows programs to negotiate and communicate with MIDI 1.0 and MIDI 2.0 products.
In this workshop, you will learn from a member of the MIDI Association Technology Standard Board, who wrote the specifications, how to get started working with UMP, and write a simple C++ program that utilises UMP.
This workshop will provide developers with knowledge and code for starting MIDI 2.0 Universal MIDI Packet (UMP) development in C++. The concepts of UMP will be explained. Then, the participants will co-develop a first simple implementation of a generic UMP parser in plain C++. For that, a stub workspace will be provided. Exercises will let the participants practice the newly learned concepts.
Who is this workshop for:
Developers wanting to learn how the new MIDI 2.0 packet format works under the hood, and how to get started writing software for it right away.
At the end of the workshop the participants will:
Understand the core concepts of UMP
Be able to build applications in C++ using UMP
MIDI 1.0 in UMP
MIDI 2.0 in UMP
Protocol Negotiation in MIDI-CI
Inspecting the UMP C++ class in the stub workspace
A simple UMP parser in C++
Unit Testing the UMP class
Level of experience required:
Some experience with C++ coding
Have a development environment set up and ready with Xcode (macOS) or Visual Studio (Windows).
Working knowledge of MIDI 1.0
Any technical requirements for participants
A computer and internet connection
A webcam and mic
A Zoom account
Xcode (macOS) / Visual Studio (Windows)