Zakk
82f695dbb7
Fixed broken building of layout export and fullscreen menus
2019-05-27 18:31:54 -04:00
Zakk
2e8ab9c1f0
Layout transitions now default to autoFit.
...
Restore drag and drop functionality of layouts/inputs etc onto transition view
Inputsource autofit keeps trying until the captureSource reports a non-zero size.
2019-05-27 05:01:10 -04:00
Zakk
cbf6f41f03
When creating layout transition subtype menu, set the transition name explicitly so it doesn't fall back to instantiating an actual LayoutSource and creating a bunch of audio engines.
...
Dealloc transition menu when it closes
2019-05-26 17:26:36 -04:00
Zakk
b69f46ac8a
Layout source uses proper startEncoders call for the underlying audio engine
2019-05-25 07:42:11 -04:00
Zakk
21273b2428
Use a separate audio engine when recording a layout
2019-05-21 04:09:39 -04:00
Zakk
e74f3cc376
Audio engine dealloc properly references audio tracks now
2019-04-30 04:28:31 -04:00
Zakk
a22500e112
Use the pixel buffer pool provided by VTCompressionSession instead of creating one ourselves that is possibly the wrong format (AMD encoder doesn't like 422)
2019-04-07 02:27:02 -04:00
Zakk
1f14a767b3
Instant recorder now uses default audio track
2019-04-06 06:49:31 -04:00
Zakk
ae8408e801
Audio tracks can now be renamed.
2019-04-06 06:42:27 -04:00
Zakk
14897b2784
Add sorting to all instances of output track lists
2019-04-06 05:10:05 -04:00
Zakk
d51bd2a43c
Refactor output tracks to use a real class.
...
Give output tracks a unique identifier that is reference internally instead of a name.
2019-04-03 05:30:31 -04:00
Zakk
897c765fba
Right click+change name on layout button now correctly sets the layout's name
2019-03-10 23:33:14 -04:00
Zakk
c24adf5b83
Outputs now have an audio output selector/deleting.
...
Audio track configuration is now saved
2019-03-06 12:45:15 -05:00
Zakk
82245709ff
Multi track audio support. New audio tracks can be added dynamically and audio inputs assigned to them.
...
TODO: removing them, saving them and allowing outputs to subscribe to only a subset of tracks.
2019-03-04 13:42:56 -05:00
Zakk
11508edddb
Lots of changes for upcoming multitrack audio support. For now all outputs use the 'Default' track
2019-03-03 13:08:40 -05:00
Zakk
60d8fcb8c4
Slight rework of audio graphs:
...
The encode mixer is now a "down mixer".
Various changes to base node class and down mixer to handle keeping track of multiple inputs and outputs.
Added methods to down mixer for enabling input and output busses, and connecting them via crosspoint volume settings.
2019-03-03 00:58:34 -05:00
Zakk
d6f07a5d4e
If the main window is occluded, stop the DisplayLink and hide the CALayer
2019-03-01 06:43:43 -05:00
Zakk
ac8355147e
Fixed some warnings.
...
Display capture no longer uses deprecated IOPort functions, now iterates over the IOServices and finds the display via serial number.
Display capture now uses CGDisplay services UUID to identify displays.
2019-02-28 04:33:43 -05:00
Zakk
4a4326ae35
Make default layer color opaque
2019-02-27 05:04:58 -05:00
Zakk
0954c9025c
Removed some NSLogs.
...
Don't spam observers/mouseevents on an already moused-on source
2019-02-24 05:22:58 -05:00
Zakk
a986fdd61f
Version 2.1.8
2019-02-24 02:47:23 -05:00
Zakk
499343e7d5
Do proper macOS version check for CALayer update style in AVFoundation capture
2019-02-24 02:35:33 -05:00
Zakk
44ea53c11e
Webcam capture limits the 'best format' choices based on the size of the currently active layout. It tries to match the resolution exactly, without exceeding it.
...
Some minor changes to auto meters
2019-02-22 06:42:26 -05:00
Zakk
1736bd8b38
Make script transitions toggle able
2019-02-19 03:35:26 -05:00
Zakk
5486d9ae11
Passthrough compressor was not checking output status before processing the frame. Added that check
2019-02-18 00:04:12 -05:00
Zakk
1ead60288b
Added a menu to the system status item. Start/Stop stream only
2019-02-10 23:40:35 -05:00
Zakk
6d0d6aaeb0
Input source lists accept input library drops
2019-02-10 18:22:10 -05:00
Zakk
d382e1b9bb
Input library items are re-nameable via clicking on their label.
...
Added an 'add' button to input library items: adds it directly to active layout. cmd-click adds directly to live layout
2019-02-10 10:20:33 -05:00
Zakk
6b8b62604e
Fixed an issue where the live view would not render if the application started with Instant Recording enabled.
...
Protect layout renderer from multi-thread access
2019-02-09 23:36:54 -05:00
Zakk
7ca4930c9a
Instant record files are now added as transient input library items (they do not save across application shutdown)
2019-02-09 14:07:39 -05:00
Zakk
26aa579601
Drag+dropped inputs into a preview view are now created on top of all other inputs
2019-02-05 03:58:37 -05:00
Zakk
4f28f0cad0
Added an option to movie inputs for deactivation upon play queue completion
2019-02-05 03:47:22 -05:00
Zakk
ddd87b07b7
Movie sources now default to playing when live, including when drag+dropped into a layout
2019-02-04 10:28:57 -05:00
Zakk
01bfad1ca2
Run input source frameTicks in parallel.
...
Improve formatting of some output statistics.
Add an encoder delay output statistic
2019-02-04 03:16:31 -05:00
Zakk
df38b7b535
When creating an input based transition via drag+drop, immediately save the input and dealloc it.
2019-02-03 00:46:22 -05:00
Zakk
6fb7e6f68a
Remaining storage/use of x/y/w/h converted to CGFloat instead of float
2019-02-02 06:21:04 -05:00
Zakk
a8c00b753e
Change save/restore of position/width to double
2019-02-02 05:55:59 -05:00
Zakk
1287397d8b
Add missing CVPixelBuffer release to CALayer preview renderer.
...
Input based transitions now have a flag to autofit the input when it is added to the layout
2019-02-02 03:30:58 -05:00
Zakk
028ef54be5
Fix concurrency and CATransaction flushing issues with CALayer based preview view.
...
Fix resizing of inputs causing a dispatch/kvo storm due to mismatched coordinate types
2019-02-01 08:07:55 -05:00
Zakk
f2eb4ad0b4
Transition effects/filters now propagate through go live/swap.
...
Added support for applying multiple transition effects simultaneously.
2019-01-31 07:27:32 -05:00
Zakk
e22329f8cd
Fixed an issue where input transition types would not properly save/restore if they'd never been used since program launch
2019-01-31 05:13:13 -05:00
Zakk
be69274d5d
Toggled input source based transitions (input, layout for now) have a depth that is set relative to the order they are added. Most recently shift-clicked is on top of all other transition inputs
2019-01-31 04:48:33 -05:00
Zakk
81fdd1c773
Don't use metal for the LayoutRenderer, it seems to have issues with CIFilter transitions not being rendered
2019-01-31 04:02:44 -05:00
Zakk
d6f6becc38
Apple H264 compressor properly restores hardware force/disable settings
2019-01-30 05:36:40 -05:00
Zakk
619f257fc2
FFMpeg capture: only update layer contents when a new frame is available, instead of updating with an old frame.
...
CSPreviewCALayer: don't bounce rendering out of the DisplayLink thread via dispatch_async, movie playback is not smooth when doing so (but is ok bouncing out to main, or other threads without dispatch_async??!)
2019-01-29 04:05:19 -05:00
Zakk
a7de45a9c0
If a previewView is hidden, signal to the display layer that it doesn't have to bother displaying anything. (Turn off CVDisplayLink for the CALayer based preview renderer)
2019-01-28 04:32:56 -05:00
Zakk
bf47d8382d
When moving on to the next movie in the ffmpeg source, if the 'next' item is the same as the 'current' one, just seek to time zero instead of reopen it. (fixes repeat/looping not working)
2019-01-28 04:00:25 -05:00
Zakk
ac406eb371
Don't hold onto the CVPixelBuffer in the metal preview render path: the renderer will do that for us and always serve us the latest one.
...
When InputSource updates x/y/w/h in frameTick, bounce the willChange/didChange calls through the main thread. We may be rendering on a background thread and just calling those causes the notification to update UI on non-main
2019-01-27 05:11:23 -05:00
Zakk
cf31677d9e
Bump version to 2.1.7
2019-01-26 02:58:12 -05:00
Zakk
5be3889800
Remove some NSLogs in the audio code.
...
Add a NSStatusItem to the menu bar. Right now it only indicates stream status and hides/unhides the application on click. In the future It will provide quick access to outputs and other things
2019-01-26 02:54:04 -05:00