Pop-up 'Show Notes'

I’d need to know if there is a way to pop-up automatically notes after a song is loaded, for example an image or just some text (used as memo). On stage, maybe the laptop is bit far away and not so comfortable to reach the laptop to switch on “Show Notes” tab, and neither a “good view” for the audience…

Also, in the “Text” field is possible to insert “Date”, “Time”, “Folders”… what’s the meaning?


As far as I know, and my experience also tells me so, Cantabile will startup the way you’ve left/saved it.
So if you save it in live mode with the notes enabled, they will show up per default on next run.

Those date, time and so on are placeholders, that will be replaced with it’s current value.
So you can inluce “$(yyyy)-$(mm)-$(dd)” in your notes (or any other format) and it will display the current date.
Same for songname, mediafiles, etc.

1 Like

You can also force show notes to appear by using a binding triggered on Song Load.


1 Like

My request is different: I’d need to have an option (enable/disable) for each song to load showing notes.

Thanks, it’s a possibility, though quite tricky and not immediate…

Hi All,

I’d like to revisit this request from Mistheria from waaaay back. With the recent advances I was wondering if a feature like this would be possible. A pop up window that the user can determine what is displayed in it and that can have timed duration that could be set including always on. There is an Display Alert pop up window but this other pop up I speak of would be more for controlled display of temporary messages that could stay up till closed or till their timer ran out. Is this something you have already on the back log @brad ? Or are there longer range plans for user GUI spaces on the back burner of the development? I remember you talked about the possibility of user control panels in some discussions previously.

Any one else think this would be useful for them?



This topic touches on a few different areas with different timelines and development costs, but here’s some ideas thoughts:

  • Cantabile already has several similar places that display information:
    • The status panel on the main toolbar at the top of the main window
    • The delay load popup panels
    • The show notes panel
  • The show notes panel is the only place capable of displaying anything more complex than simple text (ie: it can display images and has some simple formatting)
  • The status panel and the delay load popup panel can both display messages with timeouts
  • The display alert binding point can display a message but it’s more for diagnostic purposes and is modal and requires ok click to close.

Some ideas:

  • What if there was a binding point that could display a message in the status panel, or as a delay load style popup?
  • What if there was a "“user message” binding point that you could send a message to (with optional timeout) and it becomes available in a $(UserMessage) variable - which you could then display in a show note, on the controller bar, read from binding expressions etc…

The other thing I’ve considered in the past is a message log window that could display messages, with a history.

Does any of that sound useful?


There’s a simple tool I built some time ago that does this - but just some very simple pop-ups.

see here: MidiAlert2 – LivePrompter

It does timed or toggled pop-ups and is controlled by sending sysex via (physical or virtual) MIDI connections. But the messages it can show are limited to a single line of text - just quick status messages.

May be useful…




I am more in favor of the delay load style pop up that can auto size and as stated have control over duration. It would also need to remember the screen position it pops up at per/song. It would need to be able to display text strings and/or existing functions. Selectable stay on top would be a nice feature too.

Interesting, what would you be able to use as a message? Text, Text & functions? In my case I would prefer it was available as a pop up but I see where for the show notes where your normal show notes were prepared and the message over rode the view and forced the “user message” to the front. When it timed out the regular show notes would return.

Anyway, just a few thoughts on it.


Thank you for this Torsten, it does a lot of what I had in mind but as you noted was designed for simple messages and I had hoped to tap into Cantabile’s functions for display as well as simple messages. What you created is a nice piece of kit though and it may find it’s way into my world. :slight_smile:



Thanks for the feedback. I’ll see what I can come up with.


1 Like

Hmmm, I like both options - great ideas!

We’d need to be able use all the great variables available in constructing this “user message” - maybe also a way to convert part of a eceived sysex to string and use this in a user message?

Currently you can’t bind from a sys-ex message but I was thinking about providing a way to use a sys-ex pattern to extract a value and use it as a binding source. But… sys-ex patterns don’t support extracting strings and not sure how hard that would be to add - I guess it depends how complex the sys-ex is.

Essentially I’m thinking about it this way: make receiving a sysex message on a specific port a binding source, so the value of the binding source would be the sysex message (array of Uint8). Then have a function SysexToString(value, begin, end) to extract a string from a known position in the sysex message.

We’d also have to get a way to have a binding condition that evaluates the first couple of bytes to identify the correct sysex message (something like “value[3…6] == 0x47 0x 53 0x22 0x00”).

With these two capabilities, a lot could be done processing incoming sysex…

I think this needs to be split into two parts - you’d at least want some sort of pattern matching at the source side of the binding so that routing decisions could be made on the audio thread. So maybe a pattern match at the source side, followed by string/value extraction in the mapper.

1 Like