Notifications
Clear all

unify 1.6 select in key switch the output of a midi layer


user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

I see in unify 1.6 video it is possible that midi layer can disable or enable with a key switch. this is very usefull to have diffrent patterns for example for vers ,chorus, bridge. in a post previous you write it is much work to do change that layers can have more than 1 midi layer input.  i have maybe a better idea. Is it maybe easy to program to have a parameter to change the midi input of a instrument layer ?. so can change with key switch the input of a instrument layer and it use the midi input from the midi layer witch the bridge verse or chorus pattern and is select with the keyswitch

This topic was modified 3 months ago by user476565

Quote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

Interesting idea, but I can foresee potential pitfalls (e.g. stuck notes) which would have to be addressed carefully.

However, I'm not sure I see the point. What you propose would basically allow you to dynamically select which of a group of MIDI layers is active. If all you want to do is change the pattern, it would be better to use MIDIBox's track-selection ability, which already exists and works well.

In most cases, changing song-sections (verse, chorus, bridge, etc.) will involve more than just MIDI. You would usually want to change the instrumentation as well; the layer enable/disable capability supports this.


ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

the track selection can this work with key switches too ?. currently it use macro knobs(controller numbers). I see midi box have in 1.5.3 ability to set start bar and count over macro knob. this is usefull too, to select diffrent patterns. i think it is more easy as do multi track midi. arranger keyboards too have all patterns in 1 track. and it is define which bar is verse, chorus . the .xf spec for yamaha arranger keyboard is public. here can download in steinbergforum 

https://forums.steinberg.net/t/can-dorico-elements-3-5-export-to-a-yamaha-xf-midi-file-containing-chord-meta-events/706227/6

This post was modified 3 months ago by user476565

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 
Posted by: @user476565

the track selection can this work with key switches too ?

At the moment, no, but I will look into this.


ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

@getdunne or maybe this is not need when get note mapper https://www.codefn42.com/notemapper/ working inside unify that i can map notes to control change for a macro knob. currently it work only outside unify but bad on studio one is that there is no easy way to add this before unify. in multi instruments can only stack instruments parellel and not in series


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

To effectively route a MIDI-effect in front of Unify, you can use an embedded Unify instance on an INST layer, and put the MIDI effect before it.


ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

thanks, i test it and it work. only problem the unifiy in a layer have a too small GUI. is this easy to correct ?. the notemapper is able to work in 4k and it is show with correct size in unify. see screenshot


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 
Posted by: @user476565

...the unifiy in a layer have a too small GUI. is this easy to correct ?

I'm sorry, no. I've been struggling with this GUI size problem for a long time, and still do not have a solution.


ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

have  you done this in unify ? https://forum.juce.com/t/default-font-size/9753/12

 

LookAndFeel::setDefaultSansSerifTypefaceName()  ??

Or for full control you can override LookAndFeel::getTypefaceForFont() and remap fonts in any way you like. 

 

or here https://forum.juce.com/t/use-font-and-size-from-daw-in-juce-popup-menus/46303  

does this not help ?. it seem easy what he write.  maybe you tell more to answer his question ? . i think you need tell juice a font as default text. then it scales all so that the text fit.

 

https://github.com/audioplastic/Juce-look-and-feel-examples/blob/master/JuceLibraryCode/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.h

 

 

 

 

 

This post was modified 3 months ago by user476565

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

Thank you for these links, but the situation with Unify is far more complicated. I promise you, I have tried a great many things. I can get GUI scaling to mostly work, but there are always problems. I will get it sorted out eventually.


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

I'm looking again at your screenshot, and it seems you have Unify running in some kind of DAW or host program which magnifies it. When Unify itself opens another window (in this case, the embedded Unify), it does not apply the same magnification, because it does not know anything about it.

Which host program are you using?


ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

I think you are a top programmer. but nobody does know all, also because you have not written juce or can look at the source code. so it is not weak when you ask other for help and explain how unify work wy it not scale the GUI in childwindow or popup menu

 

I use studio one 5 and i do not have scale activate in s1 for unify. s1 do not offer a scale option for unify. for example for kontakt i get the scale menu in s1. so this wy i think it is a small problem when know complete juce, because fonts and all is ok in main window but not in child window.

 

maybe in juce is a function miss, that it can easy transfer fontsize to child windows. but when you talk about that problem in juce forum then you maybe get help. see my post, i get also answer and suggestions. but of course i can not answer because i have no unify source.

 

in reaper unify work better it is always scale and look blur. in studio one unify is sharp. here is screenshot of unify in reaper and studio  one in compare. you can see in reaper look very blur and font is ugly. i have only reaper 5.


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

Thank you for your kind advice, but as I said before, the situation is not as simple as you suggest.

I certainly can read the JUCE source code, and I have asked for help (and helped others) in the JUCE forums for years. I promise you, if this were a simple issue, I would have solved it long ago.


karlfranz liked
ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  
Posted by: @getdunne

@user476565

Thank you for your kind advice, but as I said before, the situation is not as simple as you suggest.

I certainly can read the JUCE source code, and I have asked for help (and helped others) in the JUCE forums for years. I promise you, if this were a simple issue, I would have solved it long ago.

 

then maybe you can tell more what the problem is, or answer the question he ask, or what you need to do so it work ?. because the main window work ok, in 4k and this confirm that the GUI is scalable.  it is hard to understand that it can not easy change. maybe i can send you a private mail ?. I develop on operating systems, programming languages, automatic scalable gui, emulators in the past and i am on surceforge. i do also some windows coding which was need for emulator. maybe you can do a little example program which can compile and cause this problems(4k small popup menu or unify small in other instance). so can ask and see what can do with juce ?. I have no juce experience, but i have time to learn and want no money, because i like unify use

This post was modified 3 months ago by user476565

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 
Posted by: @user476565

then maybe you can tell more what the problem is, or answer the question he ask, or what you need to do so it work ?.

...

I have no juce experience, but i have time to learn and want no money, because i like unify use

  1. Get a copy of JUCE, and set up to develop using it. See https://getdunne.net/wiki/doku.php?id=starting_from_scratch_with_juce.
  2. Have a look at the included AudioPluginHost example program, which you'll find in the extras folder.
  3. Add a GUI-scaling option for the main window.
  4. Figure out how to propagate the scale factor to hosted plug-ins.
  5. Verify it works in multiple versions of both Windows and MacOS.
  6. Test in multiple DAWs on both platforms, especially Studio One with its own scaling set up.
  7. Verify it works in a multi-monitor Windows 10 setup with different DPI settings per monitor.

ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

@getdunne what happen with unify on mac ?. do this work in same way as on windows(small popup menus) on studio one ? .i try it. mac i can not test.

 

>Figure out how to propagate the scale factor to hosted plug-ins.

unify work partly for example scaler or note mapper work correct in 4k on hostet plugin. but unify as plugin in unify work not.

maybe the solution is to ask studio one developers about this and they have a hint. can you add please in this example a popup menu in same way you do in unify and it opemn a new window same way as when in unify choose about unify ?.  so i can show the source studio one developer and juce developer ?

 

here can see a screenshot how the about unify window look. it is too small so the first way for success is get the popup menu correct and the about window correct. then i guess the rest work too

 

 

 

 

 

 

 

 

This post was modified 3 months ago by user476565

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

I appreciate that you are trying to be helpful, but I honestly do not have time to carry on this conversation. If you can figure this out on your own based on the steps I have listed, that would be great, but I can't coach you through it.


karlfranz liked
ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

@getdunne here can see answer https://forum.juce.com/t/use-font-and-size-from-daw-in-juce-popup-menus/46303/3 in short the example program that show how this should program is this. does this help ?

/modules/juce_gui_basics/windows/juce_TooltipWindow.cpp#L153-L159


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

See my response in the JUCE forum. Unify already uses the trick of overriding jucegetDesktopScaleFactor(), but this does not solve the problems of scaling third-party plug-in GUI windows, and inheriting a scale-factor applied by a DAW.


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

Let's continue our discussion here, rather than clutter the JUCE Forum with questions that are entirely specific to Unify.

On the JUCE forum, you wrote:

I am happy enough when popup menu in unify and unify plugin inside unify over which you have control and source(for example midi box and all other) scale correct to 175%.

Thank you for clarifying about the scaling of pop-up menus. I have put this onto the to-do list and will investigate.

Plug-ins over which we have full control (i.e., Unify's built-in plug-ins) already scale according to the scale factor you specify in Unify's settings. When a host such as Studio One imposes its own scale factor, Unify currently has no way of knowing what that is, so cannot adjust its own child-window scaling to match. I will contact Presonus to ask if there is a way to access their scale factor.

 


ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

@getdunne studio one have no own scale factor. as you can see in screeenshot unify main window work correct. and tooltip of unify is scale too correct. you only need transfer to child windows you open this lines in the class.

float TooltipWindow::getDesktopScaleFactor() const
{
if (lastComponentUnderMouse != nullptr)
return Component::getApproximateScaleFactorForComponent (lastComponentUnderMouse);
 
return Component::getDesktopScaleFactor();

}

 

then change to this i think

 

float MidiBoxWindow::getDesktopScaleFactor() const
{
 
 
 
return Component::getDesktopScaleFactor();

}

 

important seem that the code for lastcomponentundermouse is only in the tooltip window in

 

This post was modified 3 months ago by user476565

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

"reuk" from the JUCE development team seems interested to help. I will try to work this out with him on the JUCE forum.


mj_prod liked
ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

@getdunne I see you like comment on juce forum from

 

or see my original post 4 for the full post incl. attachments and more details (the post quoted by calvin is a partial re-post by a new user).

is this usefull and it is not too much work ?. that you have written in juce forum

 

does it help to get with easy work larger popup menu and requesters ?. that you have written in juce forum the text

 

I’m well a ware that plug-ins are not supposed to create extra windows at all, so I don’t really expect JUCE to support it. Any advice would be welcome nonetheless.

 

i think not so good, because juce should support hidpi and open all windows with same scaling as the screen it use. thats OO rules. child window get attributes of parent window in font and look. so juce should handle that

This post was modified 2 weeks ago by user476565

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 

@user476565

You can now see how the JUCE Forum actually works: Someone raises an important point, there is a brief flicker of interest, then nothing.

The "JUCE development team" is just three very overworked people. Sometimes they can fix problems, but it may take a long time. Most companies end up hacking the JUCE code to fix problems themselves. It's not much fun, because there is no clear documentation or guidance on how to do this.

The "Unify development team" is just one very overworked person -- me. I have to choose battles I can actually win, and this is not one of them.


ReplyQuote
user476565
(@user476565)
Trusted Member
Joined: 2 years ago
Posts: 77
Topic starter  

then maybe you can add a switch that unify can work complete as a non hidpi plugin. then i can enable for this plugin in studio one Enable System DPI scaling. kontakt work not hidpi too. it is then scale automatic. look a little blur but much better as unify with 1 correct window and all other windows too small

but because unify use for main window desktop scale for other windows not, studio one do not offer this menu. so you need disable the code that tell the DAW that it is a hidpi ready plugin. then studio one give the menu see in screenshots from kontakt

 
 
in the enabled system dpi scaling picture you need click on browser to zoom image. so can compare size
This post was modified 2 weeks ago 3 times by user476565

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2957
 
Posted by: @user476565

then maybe you can add a switch that unify can work complete as a non hidpi plugin.

I will add this to the to-do list, but please understand, it's not a simple thing. I must basically study the JUCE code in detail to reverse-engineer how it handles DPI awareness. I don't know when I will be able to spare the time that will require.


ReplyQuote
Share: