Zakk
cb356f9556
movie source properly deregisters observers when the movie queue is empty due to a movie playing until the end.
...
shift-selecting a layout will no longer re-add the same sources to the target layout. If they already exist they are reverted to the state of the source layout. shift-adding is undoable now.
Added an auto fit "+" button to sources.
2015-09-13 23:33:26 -04:00
Zakk
87ec750d00
Added background loading of python classes. Nothing uses it of course...
2015-08-29 14:06:31 -04:00
Zakk
6e05be0634
Use thread local storage to store CSAnimationBlock frame data.
...
Revert setting staging/live layouts in background queues, need to re-think how to do that (of if it is even worth it)
2015-08-29 06:04:37 -04:00
Zakk
2529712e38
Fixed some warnings.
...
Layout transitions fixed again: don't set to active = NO until transition is finished, keep sending frameTick to 'old' layout until transition is done.
2015-08-24 06:25:39 -04:00
Zakk
896496daa2
Added exception handling for shape capture callouts to python
2015-08-24 00:43:21 -04:00
Zakk
a537a65b71
Added an arc shape, for half circle sort of things.
...
Fixed 'always display' being broken for the main input of a multi-input set
2015-08-23 22:05:25 -04:00
Zakk
ffcd885998
Added captureName changes for all capture types
2015-08-22 14:01:35 -04:00
Zakk
2a2553f1c6
Python class loader now loads each class in a separate namespace/global dict
...
Preview OpenGL layer holds onto the rendered CVPixelBuffer until the next render.
Fixed up some more audio stuff.
2015-08-22 12:31:52 -04:00
Zakk
1c8d99a4c7
Properly guard access to a layout's sourceList so that constant frameTick doesn't keep some objects alive. Seemed to only happen on program launch...
...
Fixed potential ioSurface reuse/garbage in preview views.
2015-08-18 00:56:46 -04:00
Zakk
30ae53ffb4
CSIOSurfaceLayer keeps track of asynchronous toggles and delays changing it for a few frames. This is an ugly hack that stops some openGL layers from just...not displaying on restore. I hate it but I have no idea otherwise...
2015-08-17 01:28:44 -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
bf71c90f2c
Make the default shape color white, so it works properly as a mask layer without fiddling with colors
2015-08-15 00:56:28 -04:00
Zakk
6231b4d340
Modified python shape scripts so they are compatible with 10.9
2015-08-15 00:54:40 -04:00
Zakk
a16724402d
Completely changed how python is handled internally. No more py2app plugins with a private copy of a bunch of python stuff. Now link directly against Python.framework. There is now an internal plugin service/api for evaluating a python file, so any plugin can implement python functionality fairly easily.
2015-08-14 22:15:39 -04:00
Zakk
5486ff8c70
Converted preview views to layer backed NSViews with CAOpenGLLayer. Resolves some weird behavior of NSOpenGLView.
...
Staging view is now rendered in a timing loop just like main view.
2015-08-09 15:24:17 -04:00
Zakk
fcf56805cf
Added x/y flip options for shapes. Also added rotation. It's easier to rotate the shape directly than to rotate the layer and try to pin it using constraints.
...
Did a little bit of re-structuring of the shape python bits.
2015-08-02 08:14:45 -04:00
Zakk
30c45f1e5c
Added shape 'capture' inputs, with python modules for drawing shapes/paths.
...
Made some changes to audio graph and audio engine: there were some hardcoded 44khz instances. Changing sample rate should work now.
Fixed an ordering issue that would sometimes cause sourceLayers to be replaced with nil
2015-07-26 09:34:25 -04:00
Zakk
04bf7f3397
Added ability to exclude a source from multi-source transitions.
2015-07-19 14:36:33 -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
a2e1d22b3f
Added repeat controls for MovieSource
2015-07-08 05:58:44 -04:00
Zakk
924b912fc2
Properly manage movie player audio tap so that the MovieCapture object isn't deallocated until the tap is finalized. Fixes crash when going live when a movie input is active in the live layout
2015-07-06 07:51:55 -04:00
Zakk
7f42d0661d
MovieSource uses pre-effect audio tap instead of post-effect audio tap. For some reason in 10.10 it results in audio glitches
2015-07-06 04:56:57 -04:00
Zakk
f8b98d054c
Bump version to 1.9.10, include MIKMIDI copyright/license
2015-07-01 09:01:58 -04:00
Zakk
2a3b01ecd9
When deactivating a layout, clear the animation list and selected animation to release any referenced inputsources
2015-06-30 08:18:31 -04:00
Zakk
10562a2a5a
Remove source dropdown on input types where it is not appropriate
2015-06-20 08:44:22 -04:00
Zakk
857264db99
Properly extract boolean value of onLive animation setting
2015-06-19 15:29:41 -04:00
Zakk
3e1f9818d6
Save and restore black magic input setting
2015-06-18 22:07:16 -04:00
Zakk
695c9acd18
Black magic Decklink input can change the input port directly
2015-06-18 08:24:25 -04:00
Zakk
94cf7e5827
DeckLink remove device changed to compare deckLink pointer value and not unique ID.
2015-06-18 05:18:32 -04:00
Zakk
b4d0aee675
Wrapper class for managing IDeckLink objects. Added support for device removal.
...
AbstractCaptureDevice now declares the captureDevice as a strong property
2015-06-17 23:03:37 -04:00
Zakk
fe7546b4f2
Added configuration option for animations to enable auto-running of an animation when a layout goes live.
...
Extra None/null checking in animation python source to defend against runtime errors.
Added Blackmagic SDK capture source. You can now use more than one black magic card, yay
2015-06-15 23:04:06 -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
7207216942
Fixed exception that occurred when the saved WebCam source is no longer connected to the system
2015-04-29 19:24:05 -04:00
Zakk
dfe3bdb4e1
Force a setNeedsLayout/layoutifNeeded call when constraints are set on an input layer. This seems to fix the weird constraint dimensions on restore.
...
Also force a layout when a source is added to an input, I'm not sure if this actually fixes the non-rendering gl layer problem, though.
2015-04-25 12:00:45 -04:00
Zakk
77dd533d7c
Base Text capture doesn't re-render unless the assigned text has changed. Should improve CPU use of non-static text. (Timers etc)
2015-04-23 07:12:21 -04:00
Zakk
d1956a4c4f
The glorious return of user defined filters on sources. Now with background, source-only and source-and-all-sublayers varieties.
2015-04-20 09:31:27 -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
884a73689d
Source layers converted to Constraint based layout. Cleaned up some unneeded CATransaction calls.
2015-04-15 04:36:37 -04:00
Zakk
850169b02f
Some changes to CSInputLayer to handle text centering and alignment. Modified some of the size animations to be more sane. CAOpenGLLayer resizing is still stupid tho :(
2015-04-12 04:58:37 -04:00
Zakk
1b6859e4fd
Animations are now explicitly added to a layout, instead of showing all possible animations. Added animations and input assignments are saved and restored along with the layout.
2015-03-27 10:04:35 -04:00
Zakk
1113ad1047
Revert to display stream desktop capture. Seems it sucks on some systems. Fixes #75
2015-03-15 15:45:33 -04:00
Zakk
6bd53f426e
Added frame rendering/arrival options to DesktopCapture
2015-03-13 19:29:59 -04:00
Zakk
c3a9a55d8c
Converted Desktop Capture to use AVCaptureScreenInput.
2015-03-13 19:17:44 -04:00
Zakk
b28cdbc2e3
Remove various references to InputSource when it is deleted so that the dealloc happens immediately instead of when NIBs are auto-deallocated.
2015-03-09 10:36:00 -04:00
Zakk
972301c3b5
Preview views are now responsible for allocating a LayoutRenderer. Added layout change transitions.
2015-03-02 00:08:11 -05:00
Zakk
a4a1237c84
Remove some debugging output in SourceLayout.
...
Don't use 10.10 specific CMSampleBuffer creation function.
Bump version up to 1.9.8
2015-02-24 22:45:09 -05: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