Blitzar Patch 2 (ScopeSync 0.2.2-beta)

The latest ScopeSync news
Post Reply
User avatar
w_ellis
Posts: 630
Joined: Sat Apr 13, 2013 5:38 pm

Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by w_ellis » Wed Aug 20, 2014 10:09 pm

The next ScopeSync patch release is now available here: https://github.com/bcmodular/scopesync/ ... 0.2.2-beta. We also have a shiny new Wordpress-based homepage here: http://www.scopesync.co.uk/. Obviously not much content there yet, but we plan to use it for tutorial blogs and news articles, as well as more formal documentation of the ScopeSync features. We've also started using GitHub for issue tracking (https://github.com/bcmodular/scopesync/issues), so feel free to review/comment on what's already there, or log your own issues.

This patch mops up a few of the outstanding issues regarding layouts, as well as adding a number of handy new features for layout builders. Please note that there have been some fairly big changes to the layout XML, so if you have started looking into it, you might want to review some of the changes to the example layouts and the XSD to see what's different. We aren't intending any further major changes to the XML format for layouts for now, so this version should be pretty safe to work with.

Release notes

Highlights
Consistent handling between host and GUI of parameters making use of the skew (curve) functionality, plus display of formatted values in host. Screenset support for Control Panel in ScopeSync128A BC Modular Module.

Instructions
Download the scopesync-0.2.2-beta.zip file (or clone the repository if you'd like to browse the Source Code). See Installation.rtf for details on how to install ScopeSync

Known Issues
See http://git.io/k5_L6A for issues known about at the time of this release

Key feature enhancements
  • Host and UI values relating to parameters with skewed (curved) value ranges are now automatically synchronised (can be manually disabled on a per-parameter basis as needed)
  • Text display in host now uses the UI value ranges and suffixes, e.g. 50 cents or -50.0dB
  • Control Panel SS128A BC Module now stores visibility and position information for Screensets (note related issue that resulted from this change: #5)
  • (#6) Support for dB-based parameters in Scope without need of a Control Ranger
  • (#7) New ways to define position and size of UI elements through a bounds element, including RelativeRectangle
  • (#22) Added ability to switch Tabs in a TabbedComponent by clicking on a Slider
  • (#11) Added support for Rectangles and Images within a Component
  • (#12) Added support for Slider mouse-over images
Bug fixes
  • LookAndFeels are now correctly inherited throughout a layout definition
  • Added Reload Configuration button to Loader window, to handle situation where user fixes issue with layout and wants to be able to reload it
Admin
  • Refactored the parameter system out of the ScopeSync class into a BCMParameter class and most of the usage has changed to refer to BCMParameter objects, rather than going via paramIdx.
  • Tightened up layout XML validation by converting many elements to attributes
  • Moved to using GitHub issues (https://github.com/bcmodular/scopesync/ ... +is%3Aopen) and started to include references to them in the Release Note on GitHub

User avatar
cwmod
Posts: 283
Joined: Wed Oct 30, 2013 5:16 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by cwmod » Thu Sep 04, 2014 8:48 pm

Thanks Will and Simon!
I'm just about getting things sorted out:
To create a ScopeSync Vst instrument, you have to edit *.layout, *.device, *.paramtypes, *.configuration files via an xml editor like xml notepad. :shock:
Is that correct?
I know that's no problem for xml pros, but - for lazy guys like me this sounds like hours of work.
As a Live user, maybe the Max solution (despite Ableton's gui limitations) with will be the faster / more comfortable way?

User avatar
w_ellis
Posts: 630
Joined: Sat Apr 13, 2013 5:38 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by w_ellis » Thu Sep 04, 2014 9:04 pm

Hi Roy,

I'm just in the middle of getting GUI editing of the configuration working, which will mean you won't have to edit XML files for the device, paramtypes and configuration files as of the next release.

Building a GUI editor for the layouts is a massive job and we're not convinced that it's particularly valuable, as we're finding it relatively straightforward to create layouts using the XML anyway. It's just like building a website really and we've included some handy features, like being able to reload a layout from the plugin, including updated images, so changes can be checked as the XML is updated.

The lookandfeel definitions allow you to easily build up libraries of GUI content that you can re-use between layouts just by copying and pasting blocks of text. There's an XSD file, which makes it easy to check whether you have valid XML and in most XML editors (e.g. Eclipse), it'll even give you drop-down lists of valid attributes or elements, as well as auto-completing sections for you.

The intention is to build a set of generic layouts that can be used by people that don't fancy getting their hands dirty creating their own layouts, with the first examples being Simon's BCR2000 and BCF2000 layouts. We'll also be building a series of tutorial layouts, of which Simon's Sliders demo is just the first (with an accompanying tutorial page to follow).

The major advantage of this version vs. the Max one is in the sharing of GUIs between the VST plugin and the Scope device, which means the device only needs to be defined once to be used in both places. Personally I find it a lot quicker to build a GUI using the XML than I do with the Scope SDK, which may be just my inexperience with the SDK, but it can be very fiddly.

Anyway, just let us know if there's any GUI ideas you'd like to try out and we can help build them with you.

Thanks,
Will

User avatar
w_ellis
Posts: 630
Joined: Sat Apr 13, 2013 5:38 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by w_ellis » Thu Sep 04, 2014 9:05 pm

P.S. One other thing that's trickier in Max/Ableton, which I haven't yet come up with a good solution for, is handling skewed/curved value ranges in a consistent way. The ScopeSync VST solution handles all of that very neatly now, including custom support for dB skews.

User avatar
sharc
Site Admin
Posts: 589
Joined: Thu Apr 11, 2013 12:02 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by sharc » Thu Sep 04, 2014 9:27 pm

The layout XML will seem a lot more intimidating if you look at it in plain text form using Notepad than if you use an XML editor.

It's actually quite simple to build your own layout or edit an existing one. Of course all software interfaces require a little bit of time and thought. The ScopeSync layout option is intended as an alternative to (and can even be used alongside) SDK built GUIs. Like BC Modular, it's certainly not a replacement for the SDK.

It does have great benefits though. The user can have the same GUI in Scope as their DAW or can load a custom GUI for the Scope device in one and a GUI which follows the layout of their MIDI controller in the other. Also, if a user doesn't like your device interface for whatever reason then they can change it to suit their preference.

The M4L implementation is fully supported by the SS128A module - It doesn't need to have a configuration loaded - so if you're happier to use ScopeSync M4L with BC Modular then that's fine too :)

User avatar
w_ellis
Posts: 630
Joined: Sat Apr 13, 2013 5:38 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by w_ellis » Thu Sep 04, 2014 9:43 pm

P.P.S. I'm extremely lazy, so the aim will be to make it as simple as humanly possible to set up a Configuration :)

User avatar
sharc
Site Admin
Posts: 589
Joined: Thu Apr 11, 2013 12:02 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by sharc » Thu Sep 04, 2014 10:05 pm

For a Max4Live user it's probably worth considering M4L as the easier option. For users who don't have M4L or haven't used it before I'd be more wary. As an SDK developer, I would recommend taking in the tutorials we post on layout XML (sorry about the delay on that front) and then deciding if your device or patch would benefit from it.

The good news is that it doesn't need to be one or the other. You can have both. It just takes a little more work ;)

User avatar
cwmod
Posts: 283
Joined: Wed Oct 30, 2013 5:16 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by cwmod » Fri Sep 05, 2014 3:41 pm

I'm quite sure you already thought of using an already existing software like Ctrl.
Would be cool if that would work though :)

User avatar
sharc
Site Admin
Posts: 589
Joined: Thu Apr 11, 2013 12:02 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by sharc » Fri Sep 05, 2014 4:43 pm

It's something we considered quite early on Roy. A convertor to take Ctrlr panel XML and spit out ScopeSync layout XML might be possible but I think it would only work to a certain extent. You'd still need to edit the XML.

User avatar
w_ellis
Posts: 630
Joined: Sat Apr 13, 2013 5:38 pm

Re: Blitzar Patch 2 (ScopeSync 0.2.2-beta)

Post by w_ellis » Sat Sep 06, 2014 4:52 pm

Yeah, Ctrlr is a great piece of software, but we didn't think it was a close enough fit for what we wanted to achieve. Looking back, I'm really glad we made that decision, as it's not been plain sailing getting the GUI panels to work in both Scope and the VST plugin. If there was a more complex implementation underneath, like Ctlr's, I'm sure we'd have a lot more problems and we'd struggle to get it to be stable.

Our aim is to offer all of the key features for people to build GUIs for regular Scope devices and modular patches and over time we want to keep making that easier and easier to achieve. I suspect that people who want to make more complex or unusual device GUIs (e.g. Mattomat) will still need to use C++ frameworks directly to build them.

Post Reply