jamulussoftware / jamulussoftware/jamulus
Add Plug-in Support: Proposal for CLAP Support
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C
- Sterne
- 1.1k
- Forks
- 248
- Ø Merge
- 2 T. 3 Std.
- Gemergte PRs (30 T.)
- 9
Beschreibung
What is the current behaviour and why should it be changed?
Currently there is no ability for the Jamulus user to add audio processing, other than the built-in Reverb in the client and Jam Recorder in the server. There are several other proposals to extend audio processing, including additional effects and Jam Streaming.
So there is a choice of whether each of these feature should be added and maintained inside Jamulus, duplicating functionality available elsewhere or whether to adopt a means of adding these features to Jamulus on a plug-in basis.
Describe possible approaches
A number of plug-in APIs are available. However, many are either platform-specific or have restrictive licences.
The proposal here is to adopt CLAP both on the Client and the Server so that features can be added:
- In the Client
- To audio input prior to sending to the server
- To audio received from the server before output
- In the Server
- To receive a pre-mixer stream from each connected client during a session (opening the server's configured max clients stereo pairs)
- To receive a post-mixer single stereo pair (potentially increasing the number of stereo pairs by one)
https://cleveraudio.org/developers-getting-started/
https://github.com/free-audio/clap-host?tab=readme-ov-file#minimal-clap-host
Has this feature been discussed and generally agreed?
See https://github.com/orgs/jamulussoftware/discussions/3382#discussioncomment-10743921
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Es werden keine Quelldateien oder Tests genannt. Beginne mit der Durchsicht der verlinkten CLAP-Dokumentation zu getting-started und minimal-host und lies anschließend die verlinkte Diskussion, um die vorherige Vereinbarung zu verstehen. Als erledigt gilt die Aufgabe, wenn vor Beginn der Implementierung ein abgestimmter Umfang der Implementierung für die Plug-in-Verarbeitung auf Client- und Serverseite festgelegt wurde.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- c
- Bereich
- audio-video-rtc
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100