Commit graph

30 commits

Author SHA1 Message Date
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
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
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
10562a2a5a Remove source dropdown on input types where it is not appropriate 2015-06-20 08:44:22 -04:00
Zakk
35107d7a04 Add modal dialog during MIDI control learning 2015-05-25 15:44:50 -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
972301c3b5 Preview views are now responsible for allocating a LayoutRenderer. Added layout change transitions. 2015-03-02 00:08:11 -05:00
Zakk
41cd0e0ec2 Change movie capture AVPlayer to private instance variable so copying doesn't mess with it. Fixed issue #70 2015-02-19 05:16:14 -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
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
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
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
Zakk
433a7328d9 Added NowPlaying (generate text source based on currently playing song in iTunes or Spotify) and FileText (get text from a file) plugins 2015-01-01 20:50:21 -05:00
Zakk
f4f4cb8882 Added auto fit entry to source context menu. Renamed a bunch of sources to be a bit less programmerese 2014-12-13 10:35:47 -05:00
Zakk
cddd251e92 Default font color: white, default size: 50
Completely redid SyphonSource to use a version of Syphon.framework that exposes the IOSurface.
XIB changes for some constraints. Dumb.
2014-11-30 23:08:10 -05:00
Zakk
87aac17c6c Fixed some warnings.
PCMPlayer scheduling should work in 10.9 now. 10.10 uses the 'easy' scheduling.
2014-11-28 20:02:39 -05:00
Zakk
b68fea5869 Hide CAMultiAudioPlayer behind a 'fake' CSPcmPlayer interface. This way plugins don't need the CAMultiAudioNode header file and aren't tempted to mess with stuff in it 2014-11-25 01:17:20 -05:00
Zakk
904eeb3a52 Movie source now saves pause/play status and position in the timeline.
Changed how item change notifications are done so things are a bit saner on dealloc (no more crashes/exceptions on delete)
2014-11-25 00:28:15 -05:00
Zakk
bb234a6164 CaptureSources now have a isLive attribute for determining if they are part of the live feed or not.
Movie Capture uses isLive to only register audio output when live.
AudioEngine bounces array access through the main queue for UI reasons.
2014-11-23 22:31:59 -05:00
Zakk
a8e728d8e2 Plugins now have the ability to send PCM audio to the audioengine. Audio engine now does sample rate conversion for PCM inputs.
MovieCapture plugin now sends audio through AudioEngine.
2014-11-22 20:31:45 -05:00
Zakk
5a86264630 Some changes for new Xcode and/or my accidental nuking of my local build copy of the source. Signed app now works properly with Gatekeeper settings.
Added hiding of staging view and controls for people that prefer the single view/live editing mode.
2014-10-25 19:43:26 -04:00
Zakk
c86a8b3e07 MovieCapture now saves the queue on quit. Layout preview allows source addition 2014-09-08 06:24:02 -04:00
Zakk
140714f6b3 Implement uniqueID generation for text and movie sources. Fix not removing an observer on InputSource dealloc 2014-08-31 00:42:29 -04:00
Zakk
44b888777f Most of the input plugins 2014-08-29 03:42:33 -04:00