adafruit / adafruit/Adafruit_CircuitPython_MIDI
Missing parsing of running status messages
- Dominant language
- Python
- Stars
- 56
- Forks
- 26
- PR merge metrics
- No merged PRs in 30d
Description
(edited)
I'm getting messages from BLE MIDI and it happens in a very reproducible manner that I receive bursts of messages with running status (when status is missed, and should considered same as last one)
For example, I sentI sent a group of CC [BA, 63, 6A, BA, 62, 6B, BA, 6A, 00, BA, 6B, 65, BA, 63, 7F, BA, 62, 7F] [FA] but what I receive is BA 63 6A -- 62 6B -- 6A 00 -- 6B 65 -- 63 7F -- 62 7F FA (-- is where status are omitted).
I saw running status was considered in the past. Any chance to implement it ?
Just FYI I actually got it somehow to work modifying the TMIDI library, but I'm not sure if I considered all cases
[tmidi.py](https://github.com/user-attachments/files/22893348/tmidi.py)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the attached tmidi.py and locate the MIDI message parser in the repository. Reproduce the shown BLE MIDI sequence, then verify that omitted status bytes reuse the preceding CC status while the final FA message remains correctly handled. Done means running-status bursts parse consistently across the relevant cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100