# obs-vst **Repository Path**: lduml/obs-vst ## Basic Information - **Project Name**: obs-vst - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-11 - **Last Updated**: 2025-03-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OBS-VST Use VST 2.x plugins as audio filters in OBS. **As of 2022-07-26 this plugin is in-tree at https://github.com/obsproject/obs-studio/tree/master/plugins/obs-vst. This repository is archived and for reference purposes only.** ![Plugin Preview](screenshot.png) ## Research ### Sites * http://teragonaudio.com/article/How-to-make-your-own-VST-host.html * http://www.reaper.fm/sdk/vst/vst_ext.php * https://forum.juce.com/t/mac-64-bit/6295/5 * https://gist.github.com/t-mat/206e3e7dfc3f89421bc1 * https://github.com/audacity/audacity/blob/17afc51644b2b327e173a23d6066dde598838c03/src/effects/VST/aeffectx.h ### Info > In general VST 2.4 is platform independent. There are only three platform dependent opcodes : effEditOpen audioMasterGetDirectory audioMasterOpenFileSelector > > Here are the required API changes for 64 bit Mac OS X: > > effEditOpen: the [ptr] argument is a WindowRef on 32 bit Mac. On 64 bit this is a NSView pointer. The plug-in needs to add its own NSView as subview of it. > > audioMasterGetDirectory: the [return value] is a FSSpec on 32 bit Mac. On 64 bit this is a char pointer pointing to an UTF-8 encoded string. > > audioMasterOpenFileSelector: the VstFileSelect struct uses FSSpec's on 32 bit Mac. On 64 bit Mac these are char pointers pointing to UTF-8 encoded strings.