Commit graph

369 commits

Author SHA1 Message Date
Zakk
052207f2bb Globally turn off writing python byte code (.pyc) files 2015-08-23 01:00:34 -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
669eef9271 Fixed a bunch of audio system bugs: PCM inputs now properly convert sample rates and changing sample rate of the entire audio system behaves better/properly 2015-08-18 11:57:46 -04:00
Zakk
ec87503f7d Remove some NSLogs 2015-08-18 00:59:59 -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
92e964b97f Re-add CA flush to layout renderer loop 2015-08-17 01:46:54 -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
36cfb06d8c Added ability to control a layer's compositing filter. Also added a 'use as mask' config option that sets the compositing filter to minimum filter 2015-07-26 22:12:32 -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
e5204de054 h264 compressor: if PTS is a repeat or non-increasing just don't encode the frame and only send audio to the outputs. 2015-07-19 18:41:10 -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
f93f810e41 Set transition time via object controller and commitEditing when goLive is pushed 2015-06-29 06:24:12 -04:00
Zakk
3aa45104ae Added cancel button for midi learning sheet 2015-06-21 23:25:39 -04:00
Zakk
ed4633e401 Cleaned up layout transition code by using a copy of the current staging layout when self go live happens 2015-06-21 16:20:51 -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
bec8aa7f90 Added save and restore of down mixer crosspoint volumes 2015-06-10 05:32:06 -04:00
Zakk
a0df4eeb58 Audio changes: all inputs are now behind a AUMatrixMixer that down mixes the input to a stereo output. The input channels are just mapped like LRLRLRLRLRLR. All crosspoint and input gains are set to max. The input's volume is controlled by setting the MatrixMixer's master gain.
There was some rearranging/cleaning up of the audio graph code so that AudioUnits are configured in the 'proper' order (no format changes after Initialization,, explicit AudioUnitInitalize calls etc).
Todo: on the fly sample rate changes, full crosspoint gain control UI.
2015-06-06 23:18:14 -04:00
Zakk
9e0c2cd024 Added animation function to trigger multi-source transition. Fixed manual trigger of multi-source transitions to ignore timers 2015-05-31 22:19:00 -04:00
Zakk
dc5c8f2a47 Added Vaughnlive.TV output plugin 2015-05-31 16:16:08 -04:00
Zakk
b8fd2968f0 Added mapping count to MIDI mapping window 2015-05-31 12:33:44 -04:00
Zakk
6f745eb16e Added midi mappings for 'global' input control. Which input it applies to is controlled via previous/next input events and staging/live toggle events. Also added a setting to automatically double-map global input MIDI to another channel for live layout control. 2015-05-30 22:24:40 -04:00
Zakk
673890965f Don't try to use the animation module source as the filename to save to.......... 2015-05-26 11:09:27 -04:00
Zakk
6bd0a2e3d6 Added saving and importing of animation files alongside layouts 2015-05-26 10:52:02 -04:00
Zakk
e947723b60 Added import and export of layouts 2015-05-25 23:18:14 -04:00
Zakk
45bfa1063f Added save/restore of current MIDI mappings 2015-05-25 17:21:17 -04:00
Zakk
131902a0a4 Changed 'Clear' to 'Forget' in MIDI mapping window. Remove 'devices' pane for now. 2015-05-25 16:44:23 -04:00
Zakk
79c6640f6d Added ability to clear all mapped midi controls for a given command identifier and responder. Midi responders can now provide short identifier names to display in the mapping window (no more Live-23423402340-2389423408-234) 2015-05-25 16:28:38 -04:00
Zakk
35107d7a04 Add modal dialog during MIDI control learning 2015-05-25 15:44:50 -04:00
Zakk
09e9b118d5 Added rough start to midi control 2015-05-23 20:16:30 -04:00
Zakk
aa732cfcce Finished adding keyframe animation support to all existing animation functions 2015-05-13 04:48:50 -04:00
Zakk
a59d42bcfc Start of keyframe animation support in animation scripts. 2015-05-11 04:32:25 -04:00