Page 1 of 1

Beta: Got it working

Posted: Fri Jul 17, 2020 6:03 am
by Gold
Hi @Jorge,
Seems that I have made it to be the first one to post here 😊
Thx for the chance to learn something new.

Re: Beta: Got it working

Posted: Fri Jul 17, 2020 11:24 am
by jorge
Hi Rolf,

Thanks for being the first to post here.

Let me know if you have questions about VisualSwift. Also bug reports are very welcome.

I think maybe it's time to start a section in this forum dedicated to Audio/DSP/Music.


Re: Beta: Got it working

Posted: Thu Jul 23, 2020 7:41 pm
by numbuh37
Hello, and thank you for the opportunity to help test this remarkable development effort!

My first question is about how best to report bugs? Should I send feedback through the TestFlight app, email directly, or post here? If posting here, is it better to create a separate topic for each bug, or just make a post in this topic, or?


Re: Beta: Got it working

Posted: Thu Jul 23, 2020 9:47 pm
by jorge
Hi numbuh37, welcome to the forum and thanks for your questions.

>My first question is about how best to report bugs?

My preferred way to answer to bug reports and any other comments or questions is in this forum. I like keeping discussions public so others can join and the forum also helps keep them structured. It's also a good way to keep reference content for the future and to use as a replacement to documentation. Having said that, if anyone prefers to report via TestFlight or direct email that's very welcome too.

>If posting here, is it better to create a separate topic for each bug

I don't really mind, it's up to you. Also if there is a specific forum you'd like me to create let me know like Bug Reports maybe.

Documentation is a bit of a bottleneck at the moment, I hope to write it in response to questions in this forum. If you want a certain Tutorial or Reference about a specific component or a description of the intended future direction of development or any other question you might have, I'll be happy to answer.

I also like to know about the people that join the forum and show an interest in VisualSwift, what they do, what are their interests, which features they're interested in etc...

Re: Beta: Got it working

Posted: Thu Jul 23, 2020 11:43 pm
by numbuh37
Thank you for the quick response. I'm enjoying my testing so far. It helps that I remember much of my Synthmaster experience from long ago. ;) I'm a heavy iOS music app user with lots of technology experience, though somewhat lacking in programming background. I'm currently painfully slowly trying to learn iOS AUv3 app development, so something like this that has the potential to jump-start coding efforts is like hitting the mother-lode. :D

I'm either missing how to access many of the features, such as viewing generated code, and the device-style previews, or they're currently being re-worked, which is fine. I'm just happy to be involved in testing. I will report bugs through the forum. I think for organization sake, a sub-forum for beta test bugs specifically would be good. It might be easier to follow bugs if they're reported each in its own topic - especially if the subject can be edited to -SOLVED when things are fixed. Just a suggestion ...

OK, so I'll post the first bugs I've found here:
  1. On iPad Air 2, iOS 13.5.1, VS 0.5.12 there are some display issues. The sidebar menus aren't sizing and scrolling properly. The top of the libraries section is cut off. The components menu doesn't scroll far enough down to get to the last three items in the views menu. I think it's being covered up by the selector area. It seems like maybe views were sized assuming a single-row horizontal selector area rather than the three-row rectangular design as it is now. Switching to portrait allows to access the full menus, but there are some positioning issues flipping back and forth.
  2. Contents of vStack and hStack views aren't displaying. A simple test was to add a few text items in a vStack. Everything was connected as it should be but nothing displayed in the vStack. Resizing doesn't help. Once, after exiting and re-loading the texts displayed briefly, but not again after that. The same file displays as it should in the Mac version. On iOS I don't seem to be able to get even bundled modules to display.
  3. The MacOS version is displaying everything properly, but doesn't include the bundled modules, and crashes when I try to open a project, created on the iPad, containing any of them.
Amazing stuff! So much fun and so promising.

Re: Beta: Got it working

Posted: Fri Jul 24, 2020 12:50 am
by jorge
Great thanks.

I've created the Bugs sub-forum, I think it's a great suggestion.

I'll give some context that might explain some of the current bugs and state of development.

I've been running VisualSwift on an iPad 12.9 Pro from 2018 with a Magic Keyboard that has a trackpad. In my opinion the iPad with keyboard and trackpad is the best device experience I know. Compared to using a laptop I like the integration of the pointer the way it changes shape and colour depending on context and the cursor itself disappearing. I like the way it's so easy to share files with Airdrop, although you can airdrop on a Mac too I find it a lot easier on an iPad. I like the way the iPad seems to work effortlessly never struggling like my top of the range fully specced MacBook Pro which often has the fans running at high speed. So basically I haven't been running VisualSwift without a keyboard and trackpad which might reflect on bugs/bad user experience when using just finger touching. For example I use two finger dragging gesture on the trackpad to move the schematics around. I'm conscious that I might need to improve the experience when not using trackpad.

Wanting to learn iOS AUv3 fits very well with the main purpose of VisualSwift. I have implemented the engine required for code generation but still need to flesh it out. There are 3 different parts to it: 1) SwiftUI generation for GUI, 2) C code generation for Audio running in real time, 3) Xcode project wrapper to build an AUv3 Extension from 1 and 2 and resource files like images, sound files etc. I've done the SwiftUI code generation in a previous version of VisualSwift but still need to migrate it across. C code generation will basically just follow the schematic and append the C code that is already being used in the DSP components, so not as big a task as it might seem.

I'd also be interested in discussing AUv3 coding separately from VisualSwift as it's obviously something I've been trying to master and there really isn't a lot of information online. If you think it's a good idea, I'll start a new sub-forum outside the top-level VisualSwift forum, maybe a "AUv3 Programming" sub-forum inside the "Swift Programming" top-level forum.

The VStack and HStack I thought were working well in the past but lately I've been focusing on hosting of AUv3 so thanks for reporting the issue with them. Could be that the issue is related with the Text component so would be interesting to know if the issue is there when you use the Color component.

In relation to the MacOS version, my intention is to create a native app and I've been using a lot of SwiftUI in the iPadOS version to make it easy to port. The version that is available at the moment was just a quick Catalyst build of the iPadOS version. I've noticed for example that the hosted plugins don't show the GUI which I've tracked down to a Catalyst issue not knowing how to display an iOS view on a Mac. I think the current MacOS Catalyst version might still be useful for low level DSP and for creating synths but the focus at the moment is on the iPadOS version. I did notice the issue with the bundled modules but forgot about it. The bundled modules themselves will need changing/improving and adding more, they were more of a proof of concept. It is now very easy to create new modules, drag them to the Custom modules ( you need to name them first ), you can also easily share them.

Anyway thanks for your bug reports, lots of them and very useful ones.

Re: Beta: Got it working

Posted: Fri Jul 24, 2020 9:12 am
by jorge
I forgot to say about device previews, I changed the way it works, now it's a Modifier component called "device" which you can insert inside any View component and it modifies it's canvas to show the device and a button that allows you to go full screen. It should work fine, at the moment only allows previewing inside an iPad but it's very easy to add other devices if someone requests it.

Here's an example:


In the image above note the device component inside the annotated yellow circle, if you would disconnect it, the canvas of the parent VStack would go back to normal instead of showing a device preview as follows:


Re: Beta: Got it working

Posted: Sat Jul 25, 2020 7:10 pm
by numbuh37
Thanks for the quick response and clarifications. I'm excited seeing the code showing up in today's update. And thanks for the clarification on the device modifier. 8-)

The MacOS version is working well.

I still get no display in the preview on the iPad Air 2. It's not just the text component, I can't get color or anything else displaying in a VStack or HStack. I can start a separate topic on the bugs section and maybe post some screen shots.

Thanks again - this is so very exciting. I'm a patient guy and will do anything I can to help with testing.

Re: Beta: Got it working

Posted: Sat Jul 25, 2020 7:19 pm
by numbuh37
I think a separate discussion area for AUv3 coding would be super useful! There is so little practical discussion available on the net. Apple's documentation is severely lacking. I'm struggling just getting through the basics of developing a starting point for instruments and music effects. Pulling together all the Swift/Obj-C/C++ needed, mastering parameters, view configuration, presets, etc. ... I haven't even gotten as far as doing any DSP - that seems like it'll be the easy part after all this. :lol:

I don't know if you're familiar with the Audiobus forum, but that's where I heard about VisualSwift. There's quite a bit of interest over there (though probably not a lot of programmer types, mostly musicians with some technical background).

[edit] Oh. I see you already put up an AUv3 section. Great!