
Subscription id: 22499
Course id: 1364129
Course product id: 1429092
Subscription end date: 01/01/1970-12:01:00
Next payment date: 04/04/2023-02:04:50
Highest membership access level: 0
User membership allows access to this course: No
Not logged in, cannot sync.Getting started with MIDI 2.0 development - On-demand
Taught by: Brett Porter
This workshop will provide developers with knowledge and code for starting MIDI 2.0 development. At first, the concepts of MIDI 2.0 are explained. Then, the participants will co-develop a first implementation of a MIDI-CI parser for robust device discovery, and for querying and offering profiles. For that, a stub workspace will be provided. Exercises will let the participants practice the newly learned concepts. Last, but not least, this workshop also includes automated testing as a tool to verify the implementation.
Level
What you'll learn
- Session 1: MIDI-CI, Profiles, protocol negotiation, PE, UMP, Concepts, Tools and MIDI-CI Message Layout
- Session 2: Workspace setup, Starting with a unit test, Implementing a MIDI 2.0 message parser and Implement MIDI 2.0 discovery
- Session 3: Making the parser more robust, MUID collision handling, Multi-port and MIDI Thru issues and unit tests + implementation
- Session 4: Use CasesSending and receiving Profile messages, Implementation and tests and Quick introduction to PE and to UMP
Course content
- Part 1 - Background and MIDI-CI
- Session 1 presentation slides
- Quiz 1 + Answers
- Validate your learning with an exercise
- MIDI 2.0 Specification collection download
- Property Exchange Foundational Resources download
- Part 2 - Profiles
- Quiz 2 + Answers
- Part 3 - Property Exchange
- Quiz 3 + Answers
- Part 4 - UMP
- Quiz 4 + Answers
- Part 5 - Closing slides & Small talk
- Session 2 presentation
- Session 2 zip file to download
- Session 2 breakout room activities - updated
- Profile: Default Control Change Mapping download
- Part 1 - Test-driven development
- Exercise 1 - Testing
- Exercise 1 - Solutions
- Part 2 - MIDI-CI Parser
- Exercise 2 - “Project” Workspace Setup
- Exercise 2 - Solutions
- Part 3 - Unit Tests - Discovery
- Exercise 3 - Coverage
- Exercise 3 - Solutions
- Part 4 - Implementing Discovery + Exercise 4 (Discovery) & Solutions
- Week 3 presentation slides
- Download file and links
- Test program to download
- Week 3 exercises
- Part 1 - Profiles Introduction
- Part 2 - Exercise 1 + Solutions
- Part 3 - Addendum to Previous Session
- Part 4 - Profiles implementation
- Exercise 2 + Solutions
- Part 5 - Class Design
- Part 6 - Unit Testing - Profiles
- Part 7 - Exercise 3 + Solutions
- Part 8 - Profile Handler Implementation
- Exercise 4 +Solutions
- Session 4 zip file to download
- Breakout room activities
- Week 4 presentation slides
- Part 1 - Property Exchange
- Exercise 1 + Solutions
- Part 2 - PE Implementation
- Exercise 2 + Solutions
- Part 3 - Protocol Negotiation and UMP
- Exercise 3 + Solutions
- Part 4 - MIDI 2 Channel Voice Messages
- Exercise 4 + Solutions
Access this course and 100s more for
From: £12 / month with a 7-day free trial
SubscribeBuy this course and own it forever
£ 149
Add to cartRequirements
- A computer and internet connection
- Xcode (macOS)/Visual Studio (Windows)
- JUCE workspace
Who is this course for
- Developers wanting to learn how MIDI 2.0 works under the hood, and how to get started writing software for it right away
Useful links
About the workshop leader
Brett Porter is Lead Software Engineer at Artiphon, member of the MIDI Association Executive Board, and chair of the MIDI 2 Prototyping and Testing Working Group. He is based in the New York City area.