Forum Replies Created
-
AuthorPosts
-
Seems that not all my replies got through.
There is this nifty little program named “Everything” from a company named “Voidtools”. It’s a very good search program that lets you search in folders or just files. If you download the Ctrlr commit, you can search the folder locally. Easier than clicking around the Github repository.
If you have layer 0,1,2.. the highest number is the top level.
You can name the layers. Can’t remember if that is what the 0000 is for.
See demo panel layer/ tabs.
Not adding much to the discussion but here’s a nifty little program to search through all .h and .cpp files in a certain folder:
It’s easier to download the commit and do a local search. Under “search” there is an option to search in a certain folder instead of the full HDD.
Ok, finally managed to compile the ctrlr-win32.exe and the ctrlr-x64.exe files. Didn’t test them thoroughly but they open without errors and I can open a demo panel.
I’m going to write a tutorial for all necessary steps to compile the commit next weekend.
Didn’t try to make an installer yet. But it seems that the exe files are independent from the stuff that gets installed with Ctrlr like demo panels, a .git folder and some licenses. There is a way to create an installer in visual studio. Might give that a try.
I think you are one step closer to adding those descriptions, Goodweather.
Next step for me, learn C++.. (Lol, but hey, I learned Lua in a few months.) and try to add a Juce class.
In the case of Juce, it’s quite easy. When you are at the Juce Github page, click “Tags”. Go back to version 4.2.0. There’s a zip file you can download. (I made a mistake in my last post, I said 3.2.0 was the last version with Introjucer, it was 4.2.0)
If you just want to see the files: Click the tag number and again click the tag number with the tag symbol next to it. Otherwise, click the long number (70949aa) and then browse files in the big blue bar at the top.
For Ctrlr. Go to the commit you want to download. For instance on this page:
https://github.com/RomanKubiak/ctrlr/commits/stable?after=2f9ce2ea74e49cb324442eae530b74aff59c35f2+139&branch=stablescroll down to the commit of April 29 2016. Click on the <> at the right hand of the window. And then under “Code” choose Zip.
Small success here. Managed to debug (Yes, debug) the standalone version of Ctrlr from 29-03-2016. The release or nightly release throws a bunch of errors that I know how to solve but didn’t get to yet.
Steps taken:
— Install a very legal version of Visual Studio 2010 (cough)
(If interested, pm me Goodweather)— Download the Ctrlr Repository from said date.
— Extract the boost folder to the Boost folder. Folders should look like:
— ../Boost/boost/(all boost files)— Download Juce (from the Juce Github) Version 3.2.0.
It’s the last version I could find that had the Introjucer in it. It got replaced by Projucer after that version. But Introjucer is needed for the 5.3(.201) version.— Copy the files from the Juce commit to the Ctrlr Commit. Except for the Modules folder.
— Build the Introjucer. Find the Solution file in the Juce/Extras/IntroJucer/Builds Folder.You can try to debug it now. But it will probably throw a lot of errors, something about pre-compiled headers and stuff and some /Ym switch. If it does, do the following:
-In the Solution Explorer in Visual Studio, go to:
Ctrlr Standalone/Core/stdafx.cpp
— Right-click and go to properties.
— Go to: Configuration Properties/ C/C++ /Precompiled Header
— Change Precompiled Header to “Create (/YC)”. It’s probably blank. Just click the blank box.
–Also go to Command Line (also under C/C++). Make sure “inherit from project or project defaults” is checked.Last but not least:
-In the solution explorer in Visual Studio, right-click the “Ctrlr Standalone” and click properties.
-Go to: Configuration Properties/ C/C++ / Command Line
-At the bottom where it says “Additional Options” change /Zm2000 into Zm200. Other values might work, didn’t bother to try.If it throws an error somewhere about CtrlrRevision.h not found, change “CtrlrRevision.Template” in the same folder as the stdafx.cpp file to CtrlrRevision.h. Or, while your at it, change the build and revision name and stuff into something like I did. See screenshot.
G’luck.
Attachments:
You must be logged in to view attached files.September 29, 2020 at 10:54 pm in reply to: Midi Input Overload on Multiple Sysex Dump Requests #120079Novation Bass Station II ??
You are trying to export an overlay? Are you sure the other note overlays aren’t blank?
On another note: Why the hex table?
I think you can do:
for i = 0,24 do
local requestMsg = CtrlrMidiMessage({0xF0, 0x00, 0x20, 0x29, 0x00, 0x33, 0x00, 0x4F, i, 0xF7}) panel:sendMidiMessageNow(requestMsg)
os.execute(sleep(125))
endAbout your question about the date that version 5.3.201 appeared:
https://web.archive.org/web/20160405224602/https://ctrlr.org/
Here is the first appearance of it. If you click on the back button at the top of the window (the date wayback machine crawled the ctrlr site) it goes 20 days back in time and shows version 5.3.199 or something. When you go to downloads, it shows version 5.3.201 was added to the download section at March 29 2016.
That should help to pin down the commit we need to do the things you mentioned. I had a new modem yesterday so I can download visual studio 2013 (he added support for 2015 but reading the comments of the commits he had to make it work for that version later on) and give some commits between 16 march and 29 march a try.
You’ll hear from me soon 🙂
September 27, 2020 at 10:23 pm in reply to: what do you need to know in order to make panels? #120064Actually, it does. Probably when higher values than 127 or 0x7F are required. Because in midi the highest value is 127. When a 2 bytes like 0x08 and 0x00 become 0x80 it’s a way to exceed the 127 limit.
Not quite sure what you are trying to achieve. Could you show an example?
Maybe it’s similar to this:
September 25, 2020 at 9:21 pm in reply to: VST issues, Exported 56 vst index but when in a DAW reports 2000+ vst index #120039The number for the vst index shouldn’t matter. It could start at 2000 or 5000 but the number of vst parameters counts.
It’s 64 (0-63) max but there is a way to exceed that number.
Ctrlr 6.04 is not considered stable or fully functional. Could even break some panels. If it works, fine. If it doesn’t, revert back to 5.3.201.
Finally some success. Managed to compile the stand alone version of Ctrlr 6.04. If I remember correctly it was the version 6.0 bump from January 8th. Done in Visual Studio 2017 by opening the ctrlr.sln file.
Some tips. In the Source\Misc folder there is a zipped Boost file. Unpack it to the same folder. So you get Source\Misc\Boost\*all files*.
Take a good look at the errors.
When it says it can’t find some windows SDK version or some c++ 14.- version, download them as an individual component with the installer for visual studio.
Regarding vcxproj errors. Or the file is missing or the file contains some faults. Easy to fix, it’s easy to spot that there are some lines copied, thus now double, into it which you can delete.
Try to do a release first when it says it can’t find a certain exe file. Press ok when it wants to update some files because they seem out of date.
I’m probably forgetting some important things but it’s easy to forget some things after hours of clicking around and trying different things.
But still trying to figure out how to build an installer. Wonder if that is done in Visual Studio as well. When I look at the log files in certain Commits, it looks like it. But no dice here so far.
Been without internet for two days, hope to get delivered a new modem tomorrow. So I can try other versions. Or so I can upload the working commit to my own repository for you to try, Goodweather.
September 24, 2020 at 12:47 am in reply to: what do you need to know in order to make panels? #120020You are mixing some things up here Baus.
Yes, you do the assigning of midi in the midiMessageReceived the way you do.
But what DnalDoog tried to explain is that there is a better way of assigning your Modulators themselves. Every time you do panel:getModulatorByName(), Ctrlr has to go over all the modulators to search for the modulator with that name. But when you assign the modulator in the init file, before the panel is loaded, the modulator is put in memory (in a table?) and thus easier to find for Ctrlr. Thus faster. It’s a memory against runtime thingie.
You won’t notice it in a panel with just 10 modulators.. but some panels have a lot of modulators and then it becomes better practice to do it that way.
September 22, 2020 at 9:25 pm in reply to: what do you need to know in order to make panels? #119983At line 5:
midiMessageReceived = function(midiMessage)
Instead of
midiMessageReceived = function(midi)
??
I’m doing what Possemo suggested, trying my luck with an ancient visual Studio 2010 Ultimate inside a VM. I’ll report back how things are going.
About the libraries, well, there is Cmake but that is pre-installed with visual studio (or add it as a individual component). There is the Juce Library. For Juce, the windows 10 SDK is needed l. I’m not sure if you need the Vst3 SDK (or vst2 SDK for that matter).
Juce has its own Sln files which I think are Juce specific. They are there to build demo files amongst others. I’m more interested in the Sln files in the Build folder of Ctrlr or any Sln file outside the Juce folder.
Afaik there is no real different between VS 2017 or VS 2019 besides that newer SDK’s might not work for VS 2017. But when you open a VS 2017 SLN file in VS 2019, you might need to “retarget”. If I remember correctly it’s under “project” or it is asked when you open a VS 2017 file in VS 2019.
That is all I can tell you for now. And what I said could or could not contribute to a successful build. So, good luck.
Goodweather.. any luck?
When Visual Studio nags about missing files, like you had, it’s just simply because they’re not in that commit but are referenced in the sln file. You could try add them from another commit.
I got around a few errors by installing VCPKG, and bind some Lua directories in the properties of Cmake inside Visual Studio. Mostly concerning the stdafx problem I described earlier.
I dropped Github Desktop because it’s buggy as hell. Cannot switch branches. Or it should switch after 6 hours because that’s the longest time I tried to switch from Master to Stable. So went back to downloading Zips.
I noticed that when you download the repositories as a zip file, you have to download Juce separately. (Just click on the Juce folder in the Ctrlr commit and download the zip from the Juce repository.) Sometimes it’s necessary for panel folders as well. Depends whether there is a number in light grey after the folder name.
I’m still figuring out how to exclude some files from using precompiled headers. I can see an exclude option from the properties when right click on the sln file. But after doing that, it still produces the same error.
After some clicking and compiling some x32 release, I got an error saying it couldn’t find Ctrlr.win32.exe inside the vs\build folder. When I put the 5.3.201 version inside that folder, it opened. But it was just the stand-alone version.
And trying to find version 5.3.201. I think I need to go further back to 2016. I’m explicitly looking for when Stable Branches got merged inside the Master Branch. Something tells me that those were (partially) working for Roman.
If there is anyone else who wants to join the club or has more experience with compiling on Windows, please join the club. You are being welcomed with open arms.
- This reply was modified 3 years, 7 months ago by Tedjuh. Reason: filename mistake
Not really helpful for the conversation, just wondering:
This is kinda weird though. Both versions depend on the same(?) text editor class.
Version 1.4 is inside a label, limit of 5000. (Checked, cannot go above 5000)
Version 0.9.7 is added directly to the popup menu, without a label. Limited to 1024.Now, in the Label Class (UiLabel.cpp), there is a max length of 1024 chars set. (setProperty (Ids::uiLabelInputMaxLength, 1024) but it shows 5000 at default in a panel. The text editor itself has no restriction set (Search your %ss of in textEditor.cpp.) but is set to the 1024 chars of the label class. It’s also set like this in a panel.
Is there a mixup somewhere?
And why is it that Bauhaus can edit just one, while I can edit both? Different OS?The only thing I can do is delete parts of the sysex string but I can not insert anything when the string is really long….like in a wave file.
Define “really long”. How many bytes is the buffer or string?
Because for me the editing part seems to work. However, there is a problem when you exceed 5000 characters (including spaces) into the UiLabel. That’s because the maximum length of the string is set to 5000 in the component properties. The max for the string to be set is 8192. Maybe you should try that.
Or exclude spaces from being shown in the editor. It makes the Sysex less readable unfortunately.
Not in front of a pc right now but thank you for the zoom function and the editing function already. It’s easy enough to add it to an existing panel (add credits). Something like this should/ could be added like a ready-made component to the components to choose from in ctrlr.
Makes you wonder which components could be ready-made as well. An envelope component (again). A preset/ bank manager/ editor. A slider that controls different modulators at once with assignable ranges at different values of that slider. Oh, I could go on like this.
Thumbs up for the minimalistic look Dnaldoog. It’s working on my end. To make it to version 1.0, the block above [Buffer Size] is hard to find on my 4k screen at 100%. The same goes for the little triangle to hide the menu bar. A real first world problem, I know. But nonetheless, great little some kind of midi monitor. I don’t have to open up MidiOx or BomeSendSx now for this kind of stuff anymore.
Are you planning on releasing his big brother as well? I can think of some occasions that people want to edit the Sysex. It’s not possible with the minimalistic version because there is no editable UiLabel anymore.
(The popup menu doesn’t support a component like an UiLabel. I think I need a ComponentPeer window to open up an UiLabel in a different window. But that’s not supported in Ctrlr.There’s no bind to Lua in the /Source/Lua/JuceClasses.)
-
AuthorPosts