Wow. If you have a big template and the patience to tag your patches with metadata, this could change how you work.

Mr. Clouser, any thoughts?

Click to expand...

Curious as to how one goes about the tagging process - like, can we drag-n-drop batches of EXS Instrument files in the Finder, or does the tagging need to happen inside the DAW by using track comments / notes fields to hold the metadata, or what.

I have met MR Miller and he's a deep thinker for sure, so I would not dismiss this as just another gadget. He helped me wrap my brain around AVB Streams and all the new weirdness of the MOTU AVB interfaces when they first came out, and it was obvious that his understanding of the underlying technology was comprehensive to say the least - as it should be, since I believe he helped create the firmware and implement the user interface for those interfaces. As we discussed Thunderbolt bandwidth and bus saturation issues, he rattled off capacities and specs without hesitation and never needed to resort to a calculator, unlike me!

Since I use single-articulation-per-track mode, avoiding keyswitches etc., and generally lay out my template in an orderly, easy-to-grok fashion, I might not need something like this - but I'll be very interested in checking it out for sure. If it comes from the brain of MR Miller that's already a big point in its favor.

At first glance, in terms of the “articulations dashboard” as well as the colored keyboard, this bears some resemblance to what I’m currently setting up in my Lemur template (see IG clips below ... this template is nearing completion). Although ... this Patchboard thing has extra search and tagging options that Lemur can’t do directly since it lacks the ability to preserve user input. (I don’t know if I really would use that, anyway ... I could add something to my Lemur program to mark certain articulations as favorites, but it would need to be configured through code changes, and I’m not sure that’s worth it for me.) Glad to see that OSC support is part of his plans; I wonder if that includes an API allowing an external OSC controller to control the Dashboard?

Hey everyone! Just thought I'd chime in and answer any questions people might have. Patchboard's a fairly niche product and given that it works rather differently from anything else out there, I've had a bit of a hard time conveying what exactly it does, how and why. Feel free to ask me any questions you've got!

Curious as to how one goes about the tagging process - like, can we drag-n-drop batches of EXS Instrument files in the Finder, or does the tagging need to happen inside the DAW by using track comments / notes fields to hold the metadata, or what.

Click to expand...

Tagging happens in Patchboard itself. It's got a built-in editor which you can access from any device. It's basically just a form that you fill in with a bunch of autocomplete based on previously entered data:https://patchboard.app/knowledge-base/patch-editor/

(The documentation is VERY much in progress and full of broken links, but just to give you a sense)

Patchboard requires zero project-specific setup. You don't need to add track comments or notes, you don't need to add any MIDI transformer plug-ins, etc. It integrates directly with the DAW, generally by acting as a control surface. It automatically maintains an up-to-date list of all the tracks in the open project, whether they're record enabled, etc. And it maps that metadata to your tracks based solely on the track name.

If you have a patch defined for a track named "Charlie's Favorite Tuba" and it sees a track named that, it will know that patch is available in the current project. If your tuba becomes record enabled, Patchboard knows and can show you controls specific to the current instrument... that could be available articulations but also CC faders or labeled key ranges so you know that if you play C1-B1, it changes the key for the harp glisses or just shows you where a percussion patch is playable so you don't have to hammer the keyboard like a crazy person.

That DAW integration also means that if you click a track or patch in Patchboard, it will record arm it in your DAW and jump to it. No more hunting for tracks, basically...

Great idea... but only worth buying if there is a large collection of libraries' patches for e.g. Logic and Cubase ready to go, included.

Doing all the config work is not attractive.

Click to expand...

It's not ideal but it goes fairly quickly; there's a lot of autocomplete and you can duplicate similar patches from the same library and just change the slight differences. You don't need to do it for every track in your template and you don't need to do it all at once... you can add to your library of patches as you go along. Since the metadata is part of Patchboard and not part of your DAW project, those changes will apply to old and new projects alike.

I'm thinking about ways to pre-package metadata. Unfortunately, it's a bit of a wild west out there. Every developer does things differently and there are so many different libraries so there's no way to be comprehensive. On top of that, composers tend to have the same patches set up slightly differently. charlieclouser, you and me may all use CineBrass 6 French Horns, for instance, but you use the default (keyswitches), I have it set for CCs which I had to enter manually and charlieclouser has it broken out to individual patches. There's no way to escape editing the metadata to make that work, unfortunately. Best I could do is provide something that worked with the defaults.

Since I use single-articulation-per-track mode, avoiding keyswitches etc., and generally lay out my template in an orderly, easy-to-grok fashion, I might not need something like this - but I'll be very interested in checking it out for sure. If it comes from the brain of MR Miller that's already a big point in its favor.

Click to expand...

I recall you're a Logic guy but I don't actually remember much about your template so it's a little hard to say which features might be useful to your workflow. It's used in a handful of studios on a daily basis and each composer uses it differently.

Since you're in Logic, though, I'd guess you'd appreciate the track search assuming you have a lot of tracks. Because Patchboard is sync'ed with Logic, you can filter tracks down by name. Tap or click that track in Patchboard and it will record enable it in Logic and scroll to it. That would work with absolutely zero setup—no metadata or anything.

I envision Patchboard as a workflow platform tailored to the individual. There just needs to be a good use case. The best way I've found to do this is commissions for additional features specific to a composer's workflow. A lot of new things are possible in terms of features, but the commissions both keep me focused on things people actually want and make it worthwhile for me, especially since this is such a niche tool for a small group of potential users.

At first glance, in terms of the “articulations dashboard” as well as the colored keyboard, this bears some resemblance to what I’m currently setting up in my Lemur template (see IG clips below ... this template is nearing completion). Although ... this Patchboard thing has extra search and tagging options that Lemur can’t do directly since it lacks the ability to preserve user input. (I don’t know if I really would use that, anyway ... I could add something to my Lemur program to mark certain articulations as favorites, but it would need to be configured through code changes, and I’m not sure that’s worth it for me.)

Click to expand...

Nice! Yeah, that overlaps with Patchboard's features as far as the automatic articulation-switching goes. I assume that takes a lot of setup on the project side, however, with MIDI sends that activate when you record arm the track to send a unique CC value that you detect? That's how tools like Composer Tools Pro achieve that. And then other DAWs wouldn't be able to do it at all (e.g. Pro Tools).

Patchboard accomplishes this in a different way. It integrates with the DAW as a control surface (except with Pro Tools, which is done differently). That way, it knows exactly what tracks are in the current open project and whether they're record enabled or not. Each patch definition includes the track name along with all the different articulations. If Patchboard sees a track with that name become record enabled, it will show that set of articulations, faders and labeled key ranges.

The other side of this is that you can click or tap a patch in Patchboard to record arm it in the DAW and scroll to it. Basically, it's pretty well tied into the DAW and truly bidirectional.

Also different from Lemur: because Patchboard's UI is actually a local web page, you can edit things from your computer or a tablet or whatever device you want. You can use it on your computer without a tablet. You can use it in conjunction with a tablet too, where the tablet was only the heads-up articulation display and the computer was for searching and browsing where the keyboard makes it easier. The UI adapts to different screen sizes, too.

The last thing I'd add is that I've tried to make it as accessible as possible. What you've built in Lemur is very cool but doing that took a lot of know-how. You're basically a Lemur wizard (I'm terrible with it so much respect!). Unfortunately, it's tweaky, fragile and difficult to maintain for anyone except yourself. The idea with Patchboard is that it's near zero configuration; easy for users to add and update information as their templates grow. It sits alongside their existing template rather than requiring changes in their DAW project. No big template rebuild and adding a new patch for a track is as easy as filling out a form on web page:https://patchboard.app/knowledge-base/patch-editor/

Currently, the buttons and faders can send OSC messages in addition to MIDI (CCs, program changes or keys) when pressed. And I've also got a very small OSC API so you can ask Patchboard to record a specific track or patch by name by sending it something like:
/track/record "My Track Name" 1

Would you consider adding a tool that extracts cubase expression map data and imports it into Patchboard? Composer Tools Pro offers this feature and it massively speeds up process of getting the keyswitch presets set up for a large template. Not looking forward to the idea of doing it all manually

Nice! Yeah, that overlaps with Patchboard's features as far as the automatic articulation-switching goes. I assume that takes a lot of setup on the project side, however, with MIDI sends that activate when you record arm the track to send a unique CC value that you detect? That's how tools like Composer Tools Pro achieve that. And then other DAWs wouldn't be able to do it at all (e.g. Pro Tools).

Click to expand...

Actually I’m using Osculator’s Logic control surface plugin, which sends the track name as an OSC message, so no stunts with MIDI sends required. So that’s a little bit like what you are doing, maybe, albeit not as advanced - I’m just looking for track selection messages, and you very likely have access to more details with your custom control surface plugin than what Osculator provides. The only other setup I’m doing on Logic’s side is using ARTzID to drive my articulation changes (so my solution is using three tools whereas it appears yours is all in one).

Where my solution is undeniably setup-intensive is in the Lemur template itself. There’s no question in my mind that what you are doing is likely to be both far easier for the average Logic user to configure, and more compatible with other DAWs. And my solution isn’t bidirectional as far as track selection goes, either, although I’ve built in other bidirectional stuff for transport control, piano roll editing, track group filtering, etc.

One thing about Patchboard that might concern me is that the number of articulations available on the screen at one time looks to be smaller (I’m showing up to 63 of them at once, and I have some libraries such as Metropolis Ark 3 that need to have over 40 of them available on a single track). I’m also endeavoring to always have the same articulation (e.g., pizzicato) in the same physical screen location across all tracks, which is why in that clip you see the articulation buttons in various strange patterns rather than a solid block thereof ... the goal being for me to more easily develop some muscle memory than spans all of the strings tracks (for example) rather than always needing to visually search all of the articulation buttons.

The last thing I'd add is that I've tried to make it as accessible as possible. What you've built in Lemur is very cool but doing that took a lot of know-how. You're basically a Lemur wizard (I'm terrible with it so much respect!). Unfortunately, it's tweaky, fragile and difficult to maintain for anyone except yourself.

Click to expand...

Quite true, except for two things: I’m no Lemur wizard yet, hehe ... this is basically my first major project with it, and I’m learning as I go, although I did have the advantage of being a long-time software developer in other languages already. The other thing is the fragility ... I’ve been pleasantly surprised at how reliable this is proving to be once I’ve worked out the kinks. Lemur definitely has some quirks, but it is also proving to be very fault-tolerant. I just wish it had some sort of a debugger. :/

Currently, the buttons and faders can send OSC messages in addition to MIDI (CCs, program changes or keys) when pressed. And I've also got a very small OSC API so you can ask Patchboard to record a specific track or patch by name by sending it something like:
/track/record "My Track Name" 1

Did you have something else in mind that you'd like to see?

Click to expand...

What I was thinking is if there was a way to integrate it with a dedicated Lemur program, such as having it send out an OSC message for each available articulation and continuous controller when a track is selected in it, so that Lemur could dynamically configure a set of buttons and controllers to operate it remotely. If the browser view on a tablet is sufficiently responsive and fully featured this may not have a value, but from your description it sounds like the browser view on a tablet might be more restricted than that seen on a computer, is that correct?

That’s a very, very cool project you’ve got going there, and even though I’m pretty happy with how my own project is coming along, I’ll definitely be keeping an eye on yours as well.

Actually I’m using Osculator’s Logic control surface plugin, which sends the track name as an OSC message, so no stunts with MIDI sends required. So that’s a little bit like what you are doing, maybe, albeit not as advanced - I’m just looking for track selection messages, and you very likely have access to more details with your custom control surface plugin than what Osculator provides. The only other setup I’m doing on Logic’s side is using ARTzID to drive my articulation changes (so my solution is using three tools whereas it appears yours is all in one).

Click to expand...

Ah, great; glad you've got it working that way! Much more sustainable. I wasn't actually aware of the Osculator control surface plug-in so that's good. I probably did a lot of the same work that they did when I wrote my plug-in.

I'm not using anything like ARTzID but now that Logic has expression map-like features, I should probably add a conversion tool like I'm planning on for Cubase. I haven't looked into it yet though.

One thing about Patchboard that might concern me is that the number of articulations available on the screen at one time looks to be smaller (I’m showing up to 63 of them at once, and I have some libraries such as Metropolis Ark 3 that need to have over 40 of them available on a single track). I’m also endeavoring to always have the same articulation (e.g., pizzicato) in the same physical screen location across all tracks, which is why in that clip you see the articulation buttons in various strange patterns rather than a solid block thereof ... the goal being for me to more easily develop some muscle memory than spans all of the strings tracks (for example) rather than always needing to visually search all of the articulation buttons.

Click to expand...

Right now, it's not user configurable but the number of buttons you see depends on your screen size. Smaller screen, fewer buttons. I may make the buttons scale with screen size too. I just want to make sure they're easy to tap, regardless of the display.

One of my major goals is to reduce the amount of tweaking users have to do. I don't give users much control over where the buttons are placed, currently. They're just laid out linearly, left to right, top to bottom. You can add a blank button as a spacer but that's it. I really want to avoid asking users to lay out the buttons manually on a grid, though.

I've been thinking about adding a feature to automatically build a fixed, common layout between all the patches, resulting in something like what you've got. As long as people tag their articulations, e.g. with Tremolo or Pizz, I can dynamically lay out the buttons to keep things as similar from page to page as possible. That way, you don't need to manual configure the layout of the buttons.

My development process is entirely user-driven at this point, so it just takes a paying (or potentially paying) customer who really wants such a thing to request it. I'm trying to avoid developing things just because I think they're cool.

Quite true, except for two things: I’m no Lemur wizard yet, hehe ... this is basically my first major project with it, and I’m learning as I go, although I did have the advantage of being a long-time software developer in other languages already. The other thing is the fragility ... I’ve been pleasantly surprised at how reliable this is proving to be once I’ve worked out the kinks. Lemur definitely has some quirks, but it is also proving to be very fault-tolerant. I just wish it had some sort of a debugger. :/

Click to expand...

Yeah, my worry about the fragility has less to do with Lemur or Osculator or any of the specific tools. More just how adding new stuff can be difficult and break things in hard to diagnose ways. And if you do it infrequently, you forget how to do it, which makes you less inclined to want to do it. At least you don't have to deal with MIDI transformers; that Osculator plug-in makes things much nicer!

Patchboard was initially built for Brian Tyler as a way to manage his oversized Pro Tools template, for instance; if adding a new patch was difficult or prone to breaking things, it just wouldn't fly. And since it's accessible and editable from any computer on his network, his assistants can fix mis-entered patches or add new ones on the fly from another computer even while he's working.

What I was thinking is if there was a way to integrate it with a dedicated Lemur program, such as having it send out an OSC message for each available articulation and continuous controller when a track is selected in it, so that Lemur could dynamically configure a set of buttons and controllers to operate it remotely. If the browser view on a tablet is sufficiently responsive and fully featured this may not have a value, but from your description it sounds like the browser view on a tablet might be more restricted than that seen on a computer, is that correct?

Click to expand...

The browser view on the tablet is completely full-featured. It's identical to the view on the computer, in fact, though you don't have access to keyboard shortcuts for obvious reasons. The view on the computer is literally just a thin wrapper around the web page. Patchboard is essentially comprised of three parts:

Local web server that shows UI

DAW integration service (typically a control surface plug-in, but depends on the DAW)

Background service accessible from the menu bar (Mac) or system tray (Windows) that interfaces between the two components above.

Anyways, it would be easy enough to add such an OSC API. As I said, the goal is really to create a platform for building a fitted workflow tool, tailored to the individual. If someone wants to commission that feature for their workflow or there's enough community demand for it, then it would certainly be addable.

That said, in this case, I'd probably ask what features in the UI you'd want to change to achieve the same result. I'd rather you have a simpler setup with one tool rather than having to manage more components. We've got enough technology to manage—the fewer tools and computers we need talking to each other, the fewer potential areas for breakdown and technological headaches.

I'm all about simplifying the technology stack as much as possible. Let's be musicians first, tech people a very, very distant second.

That’s a very, very cool project you’ve got going there, and even though I’m pretty happy with how my own project is coming along, I’ll definitely be keeping an eye on yours as well.

Click to expand...

Looking forward to see how your turns out! Looks great already And always happy to spitball ideas and answer any questions you might have about how I'm doing things; seems like you've got a bunch of great ideas going.

I'm not using anything like ARTzID but now that Logic has expression map-like features, I should probably add a conversion tool like I'm planning on for Cubase. I haven't looked into it yet though.

Click to expand...

Oh, for sure, I for one would much prefer to see Patchboard’s articulations leveraging Logic’s Articulation IDs as opposed to just storing the key switches as additional notes in the track. I hope you’ll seriously consider supporting that if you aren’t already.

For certain portions of my template I whipped up my own articulation script based upon ARTzID code but with some additional keymapping capabilities, and then Peter S. and I worked together to bring it up to a par with the rest of ARTzID. I’m hoping he’ll include the results in his product at some point before I start making my planned video series about the template construction, as I don’t want to have to tell viewers that they can’t get something they see me using (insert sad face).

I've been thinking about adding a feature to automatically build a fixed, common layout between all the patches, resulting in something like what you've got. As long as people tag their articulations, e.g. with Tremolo or Pizz, I can dynamically lay out the buttons to keep things as similar from page to page as possible. That way, you don't need to manual configure the layout of the buttons.

Click to expand...

That would be pretty amazing if it could be made to work. It could be daunting as well ... if you are able to pull it off, I’d need to buy a bunch more hats in order to doff a sufficient number of them to you (hehe).

The browser view on the tablet is completely full-featured. It's identical to the view on the computer, in fact, though you don't have access to keyboard shortcuts for obvious reasons. The view on the computer is literally just a thin wrapper around the web page.

Click to expand...

This is essentially why I asked about the OSC API for interfacing with something like Lemur. About the only aspect of Pasteboard that would cause me any degree of concern, aside from the number and arrangement of articulation buttons as mentioned earlier, is the responsiveness of a web-based UI, when compared to a native UI. I was thinking that, with a sufficiently complete OSC API, perhaps a native interface could be written using Lemur or similar tablet apps in order to step around the web browser requirement. I realize that would go against your (wise) dictum of having as few moving parts as possible, though. The KISS principle, and all that.

Looking forward to see how your turns out! Looks great already And always happy to spitball ideas and answer any questions you might have about how I'm doing things; seems like you've got a bunch of great ideas going.

Click to expand...

Thanks very much! Certainly I have the same impression of what you are doing. Many of those additional capabilities that you are providing, especially those which require persistent storage and/or more complete DAW bidirectionality than what my config allows, leave me quite envious.

I'd also be interested in there not being a limit to the number of key switches. Some orchestral tools instruments come in at 40/50 keyswitches so this could be a deal breaker.

Click to expand...

Patchboard doesn't have any limits there, FWIW. If a given pitch has more switches (key, CC, or otherwise) than fit on a single screen, then you can scroll down to see the rest. Just drag a finger or scroll with the mouse, depending on what device you're using it on.

Do you need to have a template with pre-loaded tracks for this to work, OR, if I load a preset from the Logic Library, does Patchboard respond to that?

Click to expand...

Patchboard is synchronized to whatever Logic project is open. It reads the list of tracks directly from Logic in realtime. If you add, rename, delete or reorder your tracks, Patchboard will update itself automatically. You don't need to do any data entry for tracks or anything. With just that, you can search for tracks by name and select and jump to them simply by tapping the track in Patchboard.

If you're on a device with a keyboard, you can also use the arrow keys to move between the tracks as if you were in Logic. This can be really nice if you, say, made a group in Patchboard that has your 5 string section patches. You can use the arrow keys to move between them as if they were adjacent, even if they aren't actually next to each other in your Logic session. Or if you're a Pro Tools user, you can use the arrow keys then to move the record track up and down as if you were in Logic or DP.

If you wanted to have switches for a given instrument, you'd need to manually create a patch definition in Patchboard. You tell it the name of the track in your project. If Patchboard sees a track with that name you specified in your current project, it will show you the switches and faders for it whenever it becomes record armed. It's easy (two clicks) to re-link an existing patch to a new track if you've already got the switches defined but the track name has changed.

EDIT: Just to clarify, patch definitions are persistent across projects (unless you delete them) and part of Patchboard's database, not your DAW project. Once you create your definition for an instrument, as long as you always use the same track name, it will automatically link the patch to that track. This is most useful for fixed template workflows. You can always look up the expected name in Patchboard and name your track the same or relink the patch to the new track name (though that would break compatibility with your older session). Or if your DAW saves the track name in its presets (like Pro Tools), it will work as expected.

This is essentially why I asked about the OSC API for interfacing with something like Lemur. About the only aspect of Pasteboard that would cause me any degree of concern, aside from the number and arrangement of articulation buttons as mentioned earlier, is the responsiveness of a web-based UI, when compared to a native UI. I was thinking that, with a sufficiently complete OSC API, perhaps a native interface could be written using Lemur or similar tablet apps in order to step around the web browser requirement. I realize that would go against your (wise) dictum of having as few moving parts as possible, though. The KISS principle, and all that.

Click to expand...

The performance is quite good, though I can't really prove that without giving you a copy to play with. The UI isn't doing anything particularly fancy. Your computer is doing most of the heavy lifting to interface with your DAW. The UI is really just displaying a bunch of buttons, scrolling lists and forms for editing data.