aboutsummaryrefslogtreecommitdiffhomepage
path: root/assets/TODO
blob: e5f7b4e9dd1364804db7fadcab23dc81d904c1f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
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
		- When binding an interface instead of an address, multicast and interface addressing should work naturally
			-> ArtNet ArtPoll handling
	- 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