obs-studio/plugins/mac-syphon/SyphonOBSClient.h
gxalpha 6e7e4acb93 mac-syphon: Update Syphon, use obs-deps framework
Updates the syphon to use the Syphon.framework from obs-deps instead of
the submodule.
The submodule however was not updated in 9 years and additionally had
custom patches, compared to the obs-deps release that's built on the
current git commit of Syphon, meaning that some code changes are
necessary. It would be nice to split the code and cmake changes into
multiple commits (where the first would update the submodule and contain
the plugin code changes, and the second switch the cmake away from the
submodule to the obs-deps release), but it really doesn't make sense to
update the submodule first if it gets removed anyways.

Adds a subclass for SyphonClientBase that is responsible for receiving
the frames. This has the advantage that it doesn't need an OpenGL
context like the existing SyphonOpenGLClient, and can just return an
IOSurface directly (without some kind of middleman).
2023-06-15 13:08:41 -04:00

12 lines
397 B
Objective-C

#import <Syphon/Syphon.h>
#import <Syphon/SyphonSubclassing.h>
#import <IOSurface/IOSurface.h>
@interface SyphonOBSClient : SyphonClientBase
- (id)initWithServerDescription:(NSDictionary<NSString *, id> *)description
options:(NSDictionary<NSString *, id> *)options
newFrameHandler:(void (^)(SyphonOBSClient *))handler;
- (IOSurfaceRef)newFrameImage;
@end