Commit graph

46 commits

Author SHA1 Message Date
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
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
Zachary Girouard
12c19f5ee5 Change the source outline view so it doesn't leak CFStrings (!?!?!) 2017-10-29 12:08:14 -04:00
Zakk
91c50bcb60 Added repeat options to move source 2017-08-11 05:17:15 -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
652e4e0b80 Cleaned up init functions of some input plugins; defer heavy initialization until required 2017-04-09 10:52:28 -04: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
bd17b49612 Allow/cleanup manual adding of Movie source strings (paths or network urls) 2016-06-27 06:04:35 -04:00
Zakk
41f3c337ab Renamed FFMPeg to 'Movie' and the old movie to 'AppleMovie' 2016-06-27 04:35:17 -04:00
Zakk
4c7bdb9cce Added start of ffmpeg based movie source. A/V sync is slightly off after seeking, nothing saves and it doesn't quite have the repeat/pause controls of the previous Movie source. WIP. 2016-06-20 05:38:56 -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
7ebec18edd Fix movie source warning about a very small timebase. May have fixed some instances of blank/black movie inputs.
Change all the video and audio timescales to be more friendly to various containers. Still requires extensive AV sync/drift testing.
2016-03-30 04:01:02 -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
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