MobMidi.InputScreen (mob_midi v0.1.0)

Copy Markdown View Source

MIDI in demo: pick a source, then watch incoming notes light up.

Visual-first (v1): incoming Note On adds to the lit set, Note Off removes it, and a short event log shows the raw stream decoded by MobMidi.parse/1. An audible sine per note is a fast follow once Mob.Audio grows a tone primitive (today Mob.Audio only plays files).

Render tree is plain node maps (the idiom for list-driven mob screens).

Summary

Functions

dump_state(assigns)

Callback implementation for Mob.Screen.dump_state/1.

handle_event(event, params, socket)

Callback implementation for Mob.Screen.handle_event/3.

handle_info(arg1, socket)

@spec handle_info(term(), term()) :: {:noreply, term()}

Callback implementation for Mob.Screen.handle_info/2.

load_state(vsn, stored)

Callback implementation for Mob.Screen.load_state/2.

mount(params, session, socket)

@spec mount(term(), term(), term()) :: {:ok, term()}

Callback implementation for Mob.Screen.mount/3.

render(assigns)

@spec render(map()) :: map()

Callback implementation for Mob.Screen.render/1.

terminate(reason, socket)

Callback implementation for Mob.Screen.terminate/2.