reuk
83e5264c86
Formatting: Remove double-dots from comments and other strings
2025-11-18 15:47:42 +00:00
reuk
ba7593df26
MIDI: Add support for MIDI 2.0 I/O using Universal MIDI Packets
...
Includes support for communication with USB and Bluetooth devices, as well as virtual devices.
2025-09-17 12:50:07 +01:00
reuk
7001ed0a89
UMPStringUtils: Add new header with utilities for printing MIDI packet info
2025-09-17 12:50:06 +01:00
reuk
2e0175cc28
UMPReceiver: Remove unused header
2025-09-17 12:50:06 +01:00
reuk
444eb0c85e
GenericUMPConverter: Implement using variant
2025-09-17 12:50:06 +01:00
reuk
7dc906fa1b
MIDI: Update UMPDispatcher to allow dispatching on a specific group
2025-09-17 12:50:06 +01:00
reuk
fa1f8ed54e
MIDI: Switch BytestreamMidiView for BytesOnGroup in a few places
2025-09-17 12:50:06 +01:00
reuk
2dd69dd0ad
Midi1ToMidi2DefaultTranslator: Use std::byte in implementation
2025-09-17 12:50:06 +01:00
reuk
dd3d555bb9
UMPMidi1ToBytestreamTranslator: Refactor to separate responsibilities between translator and extractor
2025-09-17 12:50:06 +01:00
reuk
835216c581
MIDI: Use Spans instead of pointer pairs in more places
2025-09-17 12:50:06 +01:00
reuk
fb4f04e4d1
MIDI: Add span getters for MidiMessage and MidiMessageMetadata
2025-09-17 12:50:06 +01:00
reuk
85191fa50a
UMPIterator: Fix misleading variable naming
2025-09-17 12:50:06 +01:00
reuk
8799a73d6a
UMPFactory: Use new stronger types
2025-09-17 12:50:05 +01:00
reuk
6d58bf637b
MIDI: Add stronger MessageKind type in UMPUtils.h
2025-09-17 12:50:05 +01:00
Anthony Nicholls
36d07a6ce3
Docs: Replace doxygen preprocessor conditionals with @cond and @endconds
2025-07-21 18:11:43 +02:00
Anthony Nicholls
5e803ded5f
Deprecations: Add ignore deprecation warning macros
2024-11-27 11:07:04 +00:00
reuk
281c56f2f9
MidiFile: Fix invalid comparator argument to stable_sort
...
Previously, stable_sort was used to reorder note-ons and note-offs, with
the intention that note-offs would always be ordered before note-ons
with the same time stamp. However, stable_sort requires the comparator
to be a strict-weak ordering, which was not the case for the previous
implementation.
Additionally, the old implementation could unnecessarily reorder events.
Note ons and offs only need to be reordered if the note numbers and
channels match. It's fine for a note-on to be ordered before a note-off
if the note itself is different.
The new implementation only uses stable_sort to order events by
time-stamp. Then, for each range of events with matching timestamps, the
first note-on event will be swapped with the last following note-off
event with matching channel/number.
2024-07-31 19:36:51 +01:00
reuk
9112911122
MinGW: Remove support
2024-06-27 18:10:21 +01:00
Tom Poole
94d98a2b10
Update licensing information
2024-04-16 11:39:35 +01:00
Oliver James
627d01b9a2
UMP Tests: Remove checked iterator macro
2023-12-12 16:24:26 +00:00
reuk
8ebbc20311
MIDI-CI: Add module
2023-10-31 11:46:49 +00:00
reuk
94ee60041f
Enumerate: Replace some non-ranged loops
2023-10-31 10:57:43 +00:00
Tom Poole
6bf9bb9a2e
Add final specifiers in implementation files
2023-10-10 16:12:38 +01:00
Anthony Nicholls
158220ddfa
Formatting: Use nested namespace definitions
2023-10-09 14:49:18 +01:00
Tom Poole
4153d59e39
Formatting
2023-10-02 15:42:20 +01:00
Tom Poole
7d45d498b9
Removed some superfluous consts from definitions
2023-09-20 16:31:10 +01:00
reuk
e1da55ccc7
MidiRPN: Adjust MSB and LSB order for improved conformance to the MIDI 1.0 spec
2023-04-19 19:59:49 +01:00
reuk
28414a6af8
Global: Avoid floating-point equality checks where possible
2023-04-04 19:55:11 +01:00
reuk
fd69d347b4
CoreMidi: Never convert messages to MIDI 2.0 protocol
2023-03-02 12:03:33 +00:00
reuk
d5ad26a162
AUv2 Client: Add support for new MIDIEventList APIs on supported platforms
2023-02-15 22:23:56 +00:00
reuk
78a12d2f57
UMP: Migrate to std::byte
2023-02-14 22:29:01 +00:00
reuk
28f2157912
Convert ignoreUnused to [[maybe_unused]]
2022-12-01 11:41:50 +00:00
reuk
7d2a11e222
Fix typo in docstring
2022-09-27 15:18:21 +01:00
reuk
7c14c1fcd7
Use more concise stdlib type aliases
2022-09-26 18:03:47 +01:00
Tom Poole
e984395b1d
GCC: Fix some compiler warnings in GCC 11
2022-04-26 15:30:54 +01:00
reuk
5d096b46d7
Add simple Optional type
2022-04-22 14:18:48 +01:00
Tom Poole
dea3fe60e4
Update copyright banners
2022-04-04 12:36:32 +01:00
reuk
b710a248bd
UnitTests: Rename UMPTests file for consistency
2022-03-23 16:51:39 +00:00
reuk
75981dd4b3
MidiFile: Fix typo
2022-02-18 16:43:25 +00:00
Tom Poole
c072b1bc8e
Fix some typos
2022-01-25 11:48:46 +00:00
reuk
d5099ecf4d
Documentation: Add doxygen guards to UMP namespace
2021-12-08 15:26:07 +00:00
ed
fc0f6b1f2f
Tidy up
2021-12-02 09:24:55 +00:00
reuk
f269f1d6c9
UMP: Make documentation private until APIs become public
2021-12-01 15:44:07 +00:00
ed
b9542ccc4c
Update code to use C++14 [[deprecated]] attribute
...
This commit removes the various compiler-specific JUCE_DEPRECATED macros and replaces them with C++14's deprecated attribute. It also removes the JUCE_CATCH_DEPRECATED_CODE_MISUSE flag as we can rely on the override specifier catching usage of these old virtual methods, and tidies up the DOXYGEN preprocessor checks as they were inconsistent across the codebase.
2021-09-29 16:14:00 +01:00
reuk
485699020a
UMP: Fix warning about missing braces
2021-09-28 11:31:50 +01:00
reuk
20bcee5047
MidiMessageSequence: Add tests for createControllerUpdatesForTime
2021-09-28 11:31:49 +01:00
Tom Poole
f1fecfdc88
Add some missing Doxygen tags
2021-09-20 11:36:56 +01:00
ed
cffb544941
UMP: Remove juce_audio_devices dependency
2021-07-27 12:32:22 +01:00
reuk
1fb2203517
MidiFile: Allow reporting the type of parsed files
2021-07-05 12:21:36 +01:00
reuk
31a7c62baf
Windows: Fix and suppress some analysis warnings
...
This fixes warnings that are emitted when building with the `-analyze`
flag enabled.
2021-05-26 15:34:26 +01:00