Rust Audio

Steps to Finish UI Component?

Hey All!

I am really interested in getting the UI component in rust-lv2 to the point where it can be merged to the main development branch. I was looking at using rust-lv2 in a school project, and this is the one feature holding me back.

What would be the necessary work in getting the UI component to the point where it is up to spec with the rest of the project? I am happy to submit PRs!

Cheers,
Carson

Hi, @memchk, welcome to this forum!

I’m afraid that with Janonard’s resignation from the LV2 project, the timing is quite unfortunate. I’m afraid I can’t be of much help since I have no experience with LV2 yet and I try to stay away from UIs for now. My guess is that the amount of work that still needs to be done is quite substantial, but on the other hand, @johmue is already using it in his LV2 plugin envolvigo using Cargo.toml patches, so I think you can give it a try and figure out which parts are still missing.

Hi,

I can confirm it’s definitely worth while testing the UI component. What needs to be done is basically cleaning, consolidation, unit testing and implement/merge parts of the UI spec as well as some other stuff of the LV2 specs that relate or can relate to UI, like for example LV2Options which is partly implemented.

By consolidation I mean that the whole UI module is programmed in a like explorative way of programming, I consider my self still new to rust, and I also knew nothing about the LV2UI specs and the rust-lv2 architecture, when I started coding. So there is probably a lot that needs to be improved. For example I have written a new Space struct for the LV2Atom communication between the UI and the Plugin, which might be not actually needed if you design everything properly.

Recently I worked a bit on unit testing in the pugl-sys, pugl-ui and jilar crates, especially adding unit tests.