diff options
-rw-r--r-- | .gitignore | 6 | ||||
-rw-r--r-- | assets/TODO | 77 | ||||
-rw-r--r-- | core/config.c | 2 | ||||
-rw-r--r-- | portability.h | 2 |
4 files changed, 70 insertions, 17 deletions
@@ -1,9 +1,13 @@ midimonster midimonster.exe libmmapi.a +*.tgz +*.zip *.swp *.o *.so *.dll __pycache__ -.vscode/
\ No newline at end of file +.vscode/ +deployment/ +local-configs/ diff --git a/assets/TODO b/assets/TODO index 9158e24..1c2441d 100644 --- a/assets/TODO +++ b/assets/TODO @@ -1,15 +1,62 @@ -keepalive channels per backend? -Note source in channel value struct -udp backends may ignore MTU -make event collectors threadsafe to stop marshalling data... -collect & check backend API version -move all connection establishment to _start to be able to hot-stop/start all backends -event deduplication in core? -move all typenames to _t - -per-channel filters - * invert - * edge detection - -channel discovery / enumeration -note exit condition/reconnection details for backends +Misc + - keepalive channels per backend? + - Note source in channel value struct + - Support raw value passthru + - udp backends may ignore MTU + - make event collectors threadsafe to stop marshalling data... + - collect & check backend API version + - move all connection establishment to _start to be able to hot-stop/start all backends + - move all typenames to type_t + +Core roadmap + - Event deduplication in core - cc filters + - [channelconfig] / [filter] + - Per-channel settings / filtering + - dedup (in/out) + - invert + - edge detection + - debounce + - toggle + - libmmbackend: interface bind + - gtk ui + +Backend internals + - Backend properties API + - Streaming input vs Event input (ie Artnet/MIDI) + - Enumerable channels vs Freeform channels (ie Artnet/OSC) + - Discoverable channels + - Store bind/connect details for config reload + +Backend features + - OSC + - Bundle transmit + - data->fd elimination + - Lua + - Standard Library (fade, etc) + - Move to Lua 5.4 + - Separate load/execute steps + - Visca + - Connection recovery + - Python + - Separate load/execute steps + +Backends roadmap + - http + -> vlc + -> vmix + - kinet + - atem + - tcl + - globalcache + +Documentation + - Indicate optional / required backend options + - Document exit condition/reconnection details + +CI & Distribution + - arm64 build + - debian + - brew + +Xref + - check gx7/notes/MIDIMonster diff --git a/core/config.c b/core/config.c index b950b25..a53b7c4 100644 --- a/core/config.c +++ b/core/config.c @@ -208,7 +208,7 @@ static int config_glob_scan(instance* inst, channel_spec* spec){ } if(!spec->internal){ //TODO try to parse globs externally - LOGPF("Failed to parse glob %" PRIsize_t " in %s internally", u + 1, spec->spec); + LOGPF("Failed to parse glob %" PRIsize_t " in %s internally - this may indicate a typing error", u + 1, spec->spec); return 1; } diff --git a/portability.h b/portability.h index c249a10..7a9a961 100644 --- a/portability.h +++ b/portability.h @@ -30,7 +30,9 @@ #include <winsock2.h> #define htobe16(x) htons(x) + #define htole16(x) (x) #define be16toh(x) ntohs(x) + #define letoh16(x) (x) #define htobe32(x) htonl(x) #define be32toh(x) ntohl(x) |