2012-04-08 3 views
2

Ich arbeite an ein paar Audio-Plugins. Gerade jetzt sind sie Audioeinheiten. Und während der "DSP" -Code zwischen den Implementierungen/Ports zum größten Teil nicht geändert wird, bin ich nicht sicher, wie ich mit der GUI verfahren soll.Was ist der "beste" Ansatz zum Erstellen der Benutzeroberfläche eines Audio-Plugins, das sowohl Audio Unit als auch VST für OS X und Windows ist?

Zum Beispiel sah ich mir die von Apple gelieferten AUs in Lion an. Weiß jemand, wie sie über die Benutzeroberfläche gegangen sind? Wie sind die Knöpfe und Steuerelemente nur Unterklassen von Cocoa-Steuerelementen? verwenden sie ein separates Framework oder kodieren diese Knöpfe und so von Grund auf neu?

Und dann werden die Stecker, an denen ich arbeite, auch als VSTs für Windows verfügbar sein. Ich habe sie bereits mit generischen Schnittstellen eingerichtet. Aber ich frage mich, ob ich nur darüber hinwegkommen und alle meine Schnittstellen mit dem vstgui-Code von Steinberg neu erstellen sollte oder ob es einen praktischeren Ansatz gibt, die Schnittstellen plattformübergreifend zu machen.

Antwort

2

Es macht nicht viel Spaß mit VSTGUI zu arbeiten, besonders, da Ihre Schnittstelle komplizierter wird. Die Quelle ist ein Durcheinander und Sie haben eine sehr hartcodierte GUI, die schwer zu umgestalten ist.

Ich würde empfehlen, Juce auschecken, die einen netten GUI-Builder enthält. Wenn Ihr DSP-Code gut modularisiert ist, wird der Wechsel zu seiner Architektur nicht so schmerzhaft sein. Als zusätzlichen Bonus wird es die x-Plattform (wo "Plattform" sowohl OS als auch die zugrunde liegende Plugin-Plattform bedeutet) für Sie ein wenig einfacher machen.

+0

So zum Beispiel, habe ich jetzt meine AU und VST-Versionen des Plugins arbeiten, aber ich habe nur eine benutzerdefinierte Benutzeroberfläche für die AU-Version (mit den nativen OS X-Ressourcen, im Grunde eine Mischung aus CoreGraphics, CoreAnimation und Cocoa)). Was Sie vorschlagen, ist, dass ich diese OS X-spezifische Benutzeroberfläche vergessen und stattdessen versuche, eine Plattform-unabhängige Benutzeroberfläche mit JUCE zu erstellen, die ich dann für die Mac- und Windows-Versionen des Plugs verwenden könnte? – SaldaVonSchwartz

+2

Wenn Sie unter Windows auf VST zugreifen möchten, dann würde ich Ihnen vorschlagen, ein ausgereifteres x-Plattform-Framework zu verwenden. Selbst die VST auf OSX wird wahrscheinlich ein wenig Kopfschmerzen bereiten, um die AU GUI daran anzupassen. Zumindest würde ich empfehlen, nur Juce zu überprüfen; Es ist ein Rahmen, von dem ich wünschte, ich hätte ihn vor langer Zeit entdeckt, statt mich hartnäckig dafür zu entscheiden, alle Räder auf eigene Faust neu zu erfinden. –

+0

Warum haben Sie gesagt "Wenn ich VST unter Windows gehen möchte"? Gibt es irgendwelche Knicke, wenn ich zu ASIO oder einer anderen spezifischen Spezifikation, die Sie kennen, gehen würde? – SaldaVonSchwartz

Verwandte Themen