Hello, After some further thought and discussion, I have arrived at the following:
Project name: qtcleveraudioplugin Description: "Qt Integration with the CLever Audio Plugin standard" Namespace: QtClap Responsible persons: Dennis Oberst I will not import existing history. If there are any opinions or questions, please speak up. best, Dennis ________________________ Dennis Oberst Software Engineer The Qt Company GmbH Erich-Thilo-Str. 10 12489 Berlin, Germany dennis.obe...@qt.io https://www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B ________________________________ From: Development <development-boun...@qt-project.org> on behalf of Dennis Oberst via Development <development@qt-project.org> Sent: Tuesday, March 19, 2024 12:12 PM To: Jean-Michaël Celerier <jeanmichael.celer...@gmail.com>; Volker Hilsheimer <volker.hilshei...@qt.io> Cc: development@qt-project.org <development@qt-project.org> Subject: Re: [Development] Playground Request: ClapInterface Hey, Indeed, there is some ambiguity involved with "CLAP". There is also the Rust crate "clap", which is a CLI parsing tool (https://github.com/clap-rs/clap). However, I would expect that any interested soul would read the README or docs where we would resolve the whole ambiguity. Also the word wouldn't be there on it's own as it would be a part of the namespace that we apply to the contained classes, e.g.: QClapNote, QClapParameter. I agree with you, Volker, that 'Interface' is not accurate. What would be more fitting is the name 'Client,' since it's the client-side implementation of the gRPC API provided by clap-rci. Note that 'rci' stands for 'Remote Control Interface'. I'm not a fan of spelling it out since it will become too lengthy in code: QCleverAudioPluginClient or QCleverAudioPluginInterface. What about: Project name: qtclapclient Description: "Qt Integration with the CLever Audio Plugin standard" Namespace: QClap In its current (naive) form, it consists of: - ClapControls: specialized and new controls (Dials, NoteKeys) that are typically required for building audio plugins. - ClapInterface: communication with the server-side through QtGrpc. So we would have the QClapControls (or perhaps later QClapQuick) and QClapClient. As pointed out by Jean-Michaël: > (It's) a recurrent topic in audio conferences and circles. It's establishing itself in the audio-industry and is currently a hot topic running under the name 'clap'. Any deviation would generate confusion. We could think about a more general name like "qtaudioplugin", since CLAP also provides wrappers to many other audio plugin formats (VST3, AU ...) but I'm not sure I like that. Given that it's part of a prefix here it appears to be fine for me. Best, Dennis ________________________ Dennis Oberst Software Engineer The Qt Company GmbH Erich-Thilo-Str. 10 12489 Berlin, Germany dennis.obe...@qt.io https://www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B ________________________________ From: Jean-Michaël Celerier <jeanmichael.celer...@gmail.com> Sent: Monday, March 18, 2024 9:44 PM To: Volker Hilsheimer <volker.hilshei...@qt.io> Cc: Dennis Oberst <dennis.obe...@qt.io>; development@qt-project.org <development@qt-project.org> Subject: Re: [Development] Playground Request: ClapInterface You don't often get email from jeanmichael.celer...@gmail.com. Learn why this is important<https://aka.ms/LearnAboutSenderIdentification> As someone involved in the audio ecosystem, the Clap plug-in API is quickly becoming an industry standard, is now supported by multiple digital audio workstation software (Reaper, Bitwig, qtractor) and a recurrent topic in audio conferences and circles. It has its own wikipedia page: https://en.wikipedia.org/wiki/CLever_Audio_Plug-in - 12 pages of products using CLAP on KVR: https://www.kvraudio.com/plugins/the-newest-plugins/clap-plugins - https://github.com/free-audio/clap - https://u-he.com/community/clap/ - https://lwn.net/Articles/893048/ - https://www.sweetwater.com/insync/clap-the-new-clever-audio-plug-in-format/ - https://www.martinic.com/en/blog/clap-audio-plugin-format - https://bedroomproducersblog.com/2022/08/29/clap-plugin-format/ Never heard of the other one. On Mon, Mar 18, 2024 at 12:11 PM Volker Hilsheimer via Development <development@qt-project.org<mailto:development@qt-project.org>> wrote: > On 18 Mar 2024, at 12:27, Dennis Oberst via Development > <development@qt-project.org<mailto:development@qt-project.org>> wrote: > > Hello all, > > I'd like to request a new playground repository to continue the development > of the "Clap Interface," a client-side library that uses QtGrpc to provide > integration with the CLAP audio plugin standard, ultimately allowing to build > audio plugins with Qt user interfaces. > > Description: Qt interface for the CLAP audio-plugin standard > Project name: qtclapinterface > > The Clap Interface emerged from the research concluded in my thesis, which > you can find and read here. As its counterpart, there is the 'clap-rci' > library, which provides the server-side integration. I won't go into too much > detail, but it works through headless audio processing and remote GUIs to > achieve integration with Qt. You can find it here. > > Given the time constraint of 6 months for writing 2 libraries and a thesis, > they have some rough edges. Nevertheless, they proved my point: Qt > integration with audio plugins is possible! I'm currently in the process of > rewriting those libraries in my free time, but I would still like to have > this version openly available. > > Suggestions/Opinions/Ideas, I take them all. > > best, > > Dennis Hey Dennis, Nice, seems like a cool use case of gRPC for building out-of-process plugins! My knee-jerk reaction is that it might be a good idea to spell this out as QCleverAudioInterface, because https://github.com/LAION-AI/CLAP which, while also “something audio”, is completely not related, so perhaps better to be verbose. And I’m not entirely sure that “Interface” is the right word... since it seems to be more an integration or bridge, perhaps? Volker -- Development mailing list Development@qt-project.org<mailto:Development@qt-project.org> https://lists.qt-project.org/listinfo/development
-- Development mailing list Development@qt-project.org https://lists.qt-project.org/listinfo/development