Commit graph

57 commits

Author SHA1 Message Date
Zakk
e71240fc85 Fix a bunch of deprecations that came along with deploy target 10.12
When a new audio device connects don't force add every device to the audio engine.
Implement layout delete event in layout capture
Various fixes for some multithread access issues
2019-12-07 22:26:28 -05:00
Zakk
9f1ad626f4 Allow multiple instances of the same hardware audio input so they can be attached to different output tracks with separate volume/effects etc.
Added a flag to audio inputs (in layouts) that toggles if they cause a new instance of a hardware input to be created, or use one that already exists (if it does)
2019-10-20 20:42:34 -04:00
Zakk
795091c2fc Improve process detection of SyphonInject captures
File based text input can now handle HTML formatted files. You need to set a style in the file for font/font size.
2019-09-26 01:32:55 -04:00
Zakk
fe99869347 Update settings files for localization changes Xcode was complaining about.
When restoring audio engine, don't re-attach the default output track
2019-06-06 05:54:15 -04:00
Zakk
953a61dee6 Add WKWebView based capture source plugin 2018-11-11 04:29:30 -05:00
Zakk
77e082bc2f Instead of hiding sources that are removed/changed, set the opacity to 0.0f. Setting them to hidden was causing broken animations under Mojave. 2018-10-10 02:51:14 -04:00
Zakk
97986ad7e9 Update to latest syphon framework 2018-10-02 17:12:24 -04:00
Zakk
db113d6d7e Fixed some warnings 2018-04-14 05:17:11 -04:00
Zakk
dd9b89c258 Update project settings for new Xcode.
added dummyAnimation function to animation input wrapper.
slightly reworked how input.waitAnimation() works; the previous implementation possibly messed with other input timings.
converted input transitions to use input specific waits and dummy animations. This allows scripts/other transitions to run simultaneously
2018-03-31 08:14:13 -04:00
Zakk
4d7e296a8e Sources now use restore/saveWithCoder instead of init/encodeWithCoder. This allows restoring to be a bit smarter about cached sources, replacing them transparently at restore time.
Old style initWithCoder is still functional, just not as cache friendly.
If the capture "device" is changed in the input config window the capture object may be swapped out for a different one depending on caching/flags.
2018-02-03 23:56:32 -05:00
Zakk
17c59b7fc8 Added NewTek NDI source. Requires the user to install the NewTek NDI runtime library 2018-01-20 04:35:06 -05:00
Zakk
af6c5b1606 Removed a bunch of NSLogs
Audio engine mixer nodes now dynamically allocate input busses as needed, and reuse ones from disconnected nodes.
2017-12-09 09:02:32 -05:00
Zakk
dfb724edce Remove frame arrival setting from Syphon source.
Restore flip functionality to Syphon source
2017-11-14 23:02:29 -05:00
Zachary Girouard
12c19f5ee5 Change the source outline view so it doesn't leak CFStrings (!?!?!) 2017-10-29 12:08:14 -04:00
Zachary Girouard
0ee694ad7e Actually call the path creation function in shape layers... 2017-07-02 21:47:46 -04:00
zakk4223
d9dee6611e Merge pull request #81 from MaddTheSane/gitignore
Add .gitignore file
2017-07-02 03:00:43 -04:00
Zakk
1bb640cbe0 Added script-only input type.
First pass at executing input-scripts on layout changes/operations.
2017-07-02 02:36:29 -04:00
Zakk
0c5b423163 Fixed a bunch of warnings.
Start work towards supporting non-video Input sources. Created an InputSource protocol and base class.
2017-06-26 00:51:10 -04:00
Zakk
1ba042311d Introduced CSOpenGLLayer which handles cropping of OpenGL sources.
Vastly improved the feel of resizing and moving inputs.
Snap/magnetism improvements.
2017-02-25 20:07:47 -05:00
Zakk
ada259ac61 Newly added sources are now auto-centered in the layout and sized according to their source size. If the input is bigger than the layout window it is resized to the layout's dimensions. 2016-11-25 12:02:45 -05:00
Zakk
8eba5fa9b2 Merge branch '2.0UI' 2016-11-19 10:34:15 -05:00
Zakk
2369583d8d Use UUID reference for add input undo, preventing infinite InputSource retain.
Start of better UI for inputs
Some UI changes to fall in line with apple HIG
2016-05-08 06:20:20 -04:00
Zakk
80f35176ba Move sample animations to Resources directory, fixes a code signing issue.
Bump version to 2.0.6
2016-05-05 07:43:22 -04:00
Zakk
71410c620a Added support for non-h264 compressors. First addition: Apple ProRes.
Some rearrangement internally of configuration interfaces, compressor classes and how libavformat muxers are created.

Quicktime MOV muxing may still have some quirks...
2016-03-28 07:51:44 -04:00
Zakk
239743fbb5 Combined status and output tabs 2015-11-15 18:24:34 -05:00
Zakk
49ad6bb24f Hi? 2015-10-05 05:00:24 -04:00
Zachary Girouard
784c1b80e8 Settings changes for xcode7 2015-10-03 16:30:15 -04:00
Zakk
beb3e9cd6a Bounce Display capture update layer through main thread.
DisplayCapture now properly saves the value of the render type variable
2015-08-16 14:43:56 -04:00
Zakk
7c0fe02cd9 A layout's render loop timing can now be tied to some types of capture inputs. Most useful when used on video capture cards 2015-07-12 07:04:15 -04:00
Zakk
f8b98d054c Bump version to 1.9.10, include MIKMIDI copyright/license 2015-07-01 09:01:58 -04:00
Zakk
857264db99 Properly extract boolean value of onLive animation setting 2015-06-19 15:29:41 -04:00
Zakk
35107d7a04 Add modal dialog during MIDI control learning 2015-05-25 15:44:50 -04:00
Zakk
8703a2a323 IOSurfaceLayer no longer uses CIImage to render to the context; instead it renders the surface manually and uses fragment shaders/built in apple extensions to handle non-RGB IOSurfaces. Sources that use this layer no longer have to convert to 'known' pixel formats, which should save on some CPU in the case of AVF captures 2015-05-09 20:53:19 -04:00
Zakk
cfb5fe4f6b Removed some spammy NSLogs 2015-05-03 13:09:25 -04:00
Zakk
64a3c4a596 The base TextCapture class handles loading the settings interface now and inserts standard text controls (font, alignment) in addition to whatever the actual capture source requires.
Fixed the excessive amounts of blank space in source setting pane(s)
2015-04-18 21:33:48 -04:00
Zakk
6bd53f426e Added frame rendering/arrival options to DesktopCapture 2015-03-13 19:29:59 -04:00
Zakk
caff673352 Added frame update options to webcam capture type 2015-02-22 23:35:40 -05:00
Zakk
3231b414df Add a CATransaction around updateLayersWithBlock. Fixes some instances of freezing syphon sources. 2015-02-22 23:08:06 -05:00
Zakk
d1eb892308 Don't change framerate mid-stream on layout change. Fixes #67 2015-02-22 03:56:16 -05:00
Zakk
fb02503b7f Syphon based sources now have an option to select how frame updates to the layer are handled. 2015-02-20 05:55:19 -05:00
Zakk
a84cba9733 Added a 'plugin loaded' call for extraplugins, so they can do any on-load setup they might need to do. Moved application observation in layout switcher to the plugin load call instead of the menu click event. Fixes #65 2015-02-17 01:41:42 -05:00
Zakk
23162314c0 Syphon sources now use a subclass of CAOpenGLLayer and render the texture directly via OpenGL, instead of going through a CIImage/IOSurface. 2015-02-16 05:15:46 -05:00
Zakk
96455ca5b0 Syphon source now grabs the IOSurface before receiving a frame notification, so restored Syphon Sources from 'fast' SyphonInjected processes work 2015-02-15 08:37:15 -05:00
Zakk
56e054a0d1 Fixed restoration of syphon sources 'flipped' setting 2015-02-13 23:10:36 -05:00
Zakk
5e1b3b9ac5 SyphonInject server app list now updates based on app launched/terminated events. Should also handle apps that aren't part of a bundle. 2015-02-13 16:10:10 -05:00
Zakk
88f9c792ad Moved some files around to corral headers into the Pluginheaders directory 2015-01-28 23:52:51 -05:00
Zakk
cb28b094cd Start of bringing back shared sources. API changes to all plugins to support this. 2015-01-23 20:47:14 -05:00
Zakk
c9cb1bf0f1 Some changes to CSIOSurfaceLayer: now handles CVImageBuffers, now properly marks IOSurfaces as used. Also some changes to support cropping in a way that acts like other CALayers. AVFoundation capture and MovieCapture use the CVPixelBuffer support now. 2015-01-22 09:11:40 -05:00
Zakk
1f26f0d7c6 Restore image flip functionality for Syphon based sources. The flip ability applies to all CSIOImageLayer based sources 2015-01-17 17:42:55 -05:00
Zakk
99a4765241 Massive update/change: Sources and rendering are now CoreAnimation (CALayer) based. Still a few broken things, but now with all the added functionality of CoreAnimation. More interesting things to come ;) 2015-01-17 09:23:02 -05:00