Commit graph

161 commits

Author SHA1 Message Date
Zakk
a0e2f07ed7 Remove layout controller button, move work to new branch 2017-03-10 01:45:35 -05:00
Zakk
10b4fa1411 Re-added transitions to layout switch/replace.
Layout manager view now tracks various layout events and reacts appropriately
2017-03-09 00:45:05 -05:00
Zakk
9607656c8d Added layout grid view (with live previews). WIP 2017-03-06 14:03:31 -05:00
Zakk
73b619a94c Bump to version 2.0.15 2017-03-04 18:52:43 -05: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
8dbe7c77d1 Added a width and height indicator to individual Inputs while they are being resized 2017-02-20 07:56:26 -05:00
Zakk
6826eab507 Restored decklink self cropping, since it was needed due to weird sampling distortion in the final render 2017-02-19 22:30:20 -05:00
Zakk
5978c7f85e Added source menu item to restore the aspect ratio to the input AR 2017-01-01 14:23:14 -05:00
Zakk
448f51b44b Update auto fit code to work with new resizing/layer bounds 2017-01-01 14:01:23 -05:00
Zakk
9c56c902e5 Fixed save/restore issue with cropped sources 2016-12-31 15:02:10 -05:00
Zakk
29eef09f63 More work on having source bounding boxes match up better with their visual area:
InputLayers now use resizeFill content gravity; proper aspect ratio is maintained via InputLayer now.
Cropping now changes the bounds of the source to match the size after cropping. Saving/restore is broken right now.
CAOpenGLLayer based layers are no longer required to self-crop based on the contentsRect property.
Instead of using CSIOSurface layer, just assign IOSurfaces directly to CALayer.contents (seems to work even on 10.9)
2016-12-31 13:00:16 -05:00
Zakk
08f58eaf93 Change normal source resizing to always preserve aspect ratio 2016-12-29 11:26:35 -05:00
Zakk
0cef71dccb Adjusted snap line thresholds so resizing feels less stupid 2016-12-29 09:33:53 -05:00
Zakk
827b2e0849 Avoid double calling frameTick on share sources.
Change calculation of individual source frame rates to not be multiplied by the number of attached layers
2016-12-27 12:25:42 -05:00
Zakk
d02807708f Restored source snapping 2016-12-27 10:06:19 -05:00
Zakk
103b700aef Version 2.0.14 2016-12-19 06:13:38 -05:00
Zakk
a03b312a46 Added support for Twitch's new bandwidth test stream feature. 2016-12-18 07:51:43 -05:00
Zakk
50b55035f3 Added an autorelease pool to frame tick calls; InputSources were staying allocated too long, likely due to a thread without an autorelease pool 2016-12-18 06:15:56 -05:00
Zakk
d2a84e24f1 Change how layout buttons work: normal click -> switch to this layout. shift-click -> merge this layout into the current one, remove it if it already is in.
Fixed up some of the layout/input merging to track input ref counts to compensate for delayed removal of inputs due to transition animations.
2016-12-13 07:50:18 -05:00
Zakk
a033b4d9f0 Added resolution and frame rate statistics for individual inputs 2016-11-26 07:12:26 -05:00
Zakk
e961853940 Fixed config UI layout issues with webcam capture.
Fixed issue with iTunes now-playing when songs were not in your library (apple cloud music)
2016-11-26 05:00:00 -05:00
Zakk
0b523279cb Spawn input configuration window on add when the capture type doesn't have any selectable inputs. 2016-11-25 13:49:12 -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
90607d183b Changed how resizing is calculated since relying on deltas somehow broke under 10.12.X (!?!). 2016-11-24 06:05:05 -05:00
Zakk
03f4001287 Call commitEditing on the compressor view controller so changes to some fields are properly saved 2016-11-22 08:32:22 -05:00
Zakk
e4e74448fc Make default x264 compressor settings less stupid/more twitch friendly 2016-11-22 08:13:10 -05:00
Zakk
ad21cf6ddb Added MIDI action for freeze frame 2016-11-21 04:01:48 -05:00
Zakk
36a9855b35 Added 'freeze frame' to sources; for help when cropping/adjusting video.
Corrected inversion of OpenGL layer top/bottom cropping.
2016-11-20 23:04:38 -05:00
Zakk
8eba5fa9b2 Merge branch '2.0UI' 2016-11-19 10:34:15 -05:00
Zakk
8a6d2c8ac9 Update constraints to allow for vertical resizing of the window when in single view mode 2016-11-19 05:41:59 -05:00
Zakk
cf7ab28d23 Remove NSLog
disable swap button when live transition is happening
2016-08-31 22:23:48 -04:00
Zakk
cb449e5bc2 Some updates for Sierra, hack for the stupid individual transition add+effect.
Remove dependency on SyphonInject extra menu
2016-08-31 06:30:43 -04:00
Zakk
3eba35a150 Re-add transition config to main window, add animation button for opening animation window 2016-08-13 14:18:28 -04:00
Zakk
2aa9e70f86 Improve appearance of combination level meter/volume slider 2016-08-13 04:58:13 -04:00
Zakk
a7ce3e6195 Add 'quick' audio controls to main window 2016-08-13 02:19:28 -04:00
Zakk
c57491bd82 Output config is now a window; removed Output tab from main window 2016-08-07 17:44:48 -04:00
Zakk
79aad5d8b5 Remove animate tab, move to separate window (placeholder animate button for now) 2016-08-07 14:30:04 -04:00
Zakk
255cce8d60 Add new style audio meters to advanced audio window and items 2016-08-07 02:22:15 -04:00
Zakk
4ead205d8b Add a CALayer based audio level meter that is usable either vertically or horizontally.
Add stream audio controls to main Video tab, with a button that opens up the audio mixer/settings in a new window
2016-08-06 21:52:01 -04:00
Zakk
6b09445d99 Removed switching output type via the create/edit dialog. type is now set on creation via a popover menu 2016-07-30 21:28:53 -04:00
Zakk
1490e3a5be Added Youtube output type. Allows selecting configured youtube live 'events' (plus the default live event) and will fetch the destination + stream key when the stream starts.
Added authorization code flow to the OAuth provider.
Added an API call for plugins to get the list of accounts stored in the keychain for a given service
2016-07-25 06:02:48 -04:00
Zakk
4152dc6c59 More work on OAuth2 service.
change to stream service protocol and OutputDestination to support async/delayed fetching of output destination.
Twitch output config allows re-auth to a different account and auto-fetching of the stream key when stream starts.
2016-07-23 15:47:33 -04:00
Zakk
31ffae27a8 Add plugin service for OAuth2 implicit grant flow. convert twitch stream key fetching to use oauth api. 2016-07-19 05:36:20 -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
0f4935bd61 Highlight inputs when they are selected in the input list 2016-05-15 16:38:06 -04:00
Zakk
f25d4c6359 Added an input display area in the main video tab 2016-05-15 10:25:54 -04: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
834cfccd56 Restore rendering statistics 2016-05-01 17:29:50 -04:00
Zakk
2064bd72dc Rewrite of AAC encoder to not do dispatch_async out of the AudioUnit render callback
Sprinkle some @autoreleasepool blocks in some loops to prevent memory ballooning.
Rework of how CaptureFrameData objects are created so everything is a bit cleaner.
Audio buffering and attaching of audio data to frames is now handled inside of CaptureController, instead of inside each Compressor.
2016-04-25 05:00:14 -04:00