Zakk
f6df032852
Bump version to 2.1.1
2017-12-26 03:05:21 -05:00
Zakk
a67a6d8f5f
Get rid of some NSLogs
2017-12-26 02:47:16 -05:00
Zakk
c3854307e6
Add experimental apple HEVC encoder.
...
Make ffmpeg writer aware of HEVC metadata and have it force set 'hvc1' tag for compatibility with apple utilities.
Fix embarrassing save file vs restore file name mismatch :/
2017-12-26 02:45:30 -05:00
Zakk
c5c2dd9c57
Provide an NSBezierPath -> CGPath method for when we run under 10.9
...
Make single-view the default view
Save to a 2.1 specific file
Release 2.1.0
2017-12-25 02:38:58 -05:00
Zakk
c5a2d2a940
Changes to main window layout so it properly works in pre 10.11 releases
...
Call [super layout] where required to suppress warnings in 10.10
Use menuForEvent instead of rightMouseDown; menu now shows up when ctrl-clicking a single button mouse/trackpad
2017-12-24 16:47:42 -05:00
Zakk
f4b4c2fec3
Go live now uses javascript; this allows source scripts to fire
2017-12-23 19:58:41 -05:00
Zakk
add06e927c
Run input scripts in isolated animation blocks so their wait calls don't interfere with other inputs.
...
Added waitScript(), this propagates the timing info of the currently running script into the parent block
2017-12-23 17:34:05 -05:00
Zakk
2cabfce494
Some changes to suppress/fix various runtime warnings
2017-12-17 23:37:00 -05:00
Zakk
b2fe1c3809
Make shape capture type compatible with pre 2.1 saves
2017-12-17 17:57:40 -05:00
Zakk
522ee81b34
Increase width of compressor type label in config window
2017-12-17 16:39:42 -05:00
Zakk
31240748e1
Renamed "AppleVT" compressor to "AppleH264"
2017-12-17 16:08:46 -05:00
Zakk
ed107cf61b
Clean up some pixel transfer sessions on dealloc
...
Prevent double-remove of audio source from the audio engine
Improve memory use of movie source (don't use unreasonably large buffer)
Fix instant recorder output (wasn't writing trailer data)
2017-12-17 15:57:35 -05:00
Zakk
980961137e
Re-implement audio level meters as normal NSViews with drawRect instead of CALayers with masks
...
If a PCM player is in a pending exit state, refuse to queue more PCM samples (so we don't leak them)
When an FFMPEG movie player deallocates, check if we still have a retained CVPixelBuffer and release it if we do.
2017-12-10 07:58:01 -05:00
Zakk
af6c5b1606
Removed a bunch of NSLogs
...
Audio engine mixer nodes now dynamically allocate input busses as needed, and reuse ones from disconnected nodes.
2017-12-09 09:02:32 -05:00
Zakk
426df6465d
Dealloc pixel buffer pool when FFMPegPlayer is realloced
2017-12-06 05:54:06 -05:00
Zakk
cac26cb5e9
Add default implementation of -[CAMultiAudioInput didRemoveInput]
...
Don't double add inputs to the source layout's presentation list.
2017-12-04 06:14:50 -05:00
Zakk
a7c744bf40
Added a callback for CAMultiAudio node inputs when they are removed from an engine. This allows the PCM player to clean up the pending deallocation queue.
...
Chased down some more minor memory leaks in the ffmpeg movie player
2017-12-04 05:31:23 -05:00
Zakk
d4238c2224
Allocate one single buffer for planar PCM data, instead of multiple buffers.
...
Expose the single buffer as a property, so 'external' libraries can write PCM data into it.
Convert FFMPEG player so it uses the new single buffer system.
Add missing audio frame deallocation in ffmpeg movie audio consumer.
2017-12-04 01:37:39 -05:00
Zakk
f8925a449d
Fix some movie playback related memory leaks
2017-12-03 15:35:28 -05:00
Zakk
a63c01b009
Properly restore name of movie input
2017-12-01 22:07:52 -05:00
Zakk
5b591cf4bb
Set down mixer volume to node volume when mixer is created
2017-12-01 20:53:51 -05:00
Zakk
aafa92bffe
Add pcm input creation into CSCaptureBase. This version is audio engine aware, so it will work properly for recorders
2017-11-27 01:06:07 -05:00
Zakk
44c284a122
Emit notifications when audio inputs are added or removed.
...
Have audio source type listen for audio add notifications in their engine and apply audio settings if it is relevant.
FFMPEG movie source now generates proper UUIDs for the PCMPlayer
2017-11-26 23:32:08 -05:00
Zakk
d66bc5de0d
Use correct image name for audio source icon
2017-11-26 15:55:05 -05:00
Zakk
8f69fd87d1
Fix up some warnings and ffmpeg related deprecations
2017-11-24 23:12:39 -05:00
Zakk
0c0baefccb
Frame timer based frame fetching now honors the records recordingActive flag and doesn't try to render a new frame (prevents crashing when the preview window takes over rendering)
...
When failing to encode a frame due to too fast timing, send along the codec_ctx with the audio data (x264 encoder)
2017-11-24 02:17:28 -05:00
Zakk
e046cb436d
Restore layout transition functionality. Broken due to previous commit that moved application of animations to the time of commit
2017-11-22 04:35:42 -05:00
Zakk
2464f9d3d6
Hide instant record button when instant record isn't enabled
2017-11-21 05:55:18 -05:00
Zakk
105d4cb9bf
Visual improvement of stream/stop button while a stream is active and dark mode is being used
2017-11-21 05:53:36 -05:00
Zakk
829f24c2a2
Some changes to various buttons (via a button cell subclass) to support dark mode
2017-11-19 18:59:12 -05:00
Zakk
9b3d83ebbd
Layout buttons now react to dark/light theme changes
2017-11-19 04:32:31 -05:00
Zakk
7205343ea3
Purge user facing kwargs usage; all animation config is function based now
2017-11-19 04:03:51 -05:00
Zakk
026e0fb5e5
Mass apply all animations at commit; this allows animation configuration to take advantage of method chaining instead of "keyword" arguments
2017-11-19 02:51:01 -05:00
Zakk
2cac068b8d
Make midi control config window slightly less disgusting
2017-11-19 00:55:45 -05:00
Zakk
a3b28595aa
Don't try to highlight non video sources when they are selected in the preview view context menu
2017-11-19 00:25:42 -05:00
Zakk
3aee1a4d56
Added a dark theme.
...
Move all initialization to the 'willLaunch' callback, which makes the launch less weird
2017-11-18 23:49:53 -05:00
Zakk
a58db937fb
Apply infinite animations asynchronously so they don't delay the transaction completion blocks forever
2017-11-18 18:19:53 -05:00
Zakk
585996b0f6
Do input adjustment based on presentation source list
2017-11-18 02:05:08 -05:00
Zakk
56fbf2e14f
Don't clobber existing superlayer when adding inputs to a source. This preserves restored parent/child input relationships
2017-11-17 19:41:08 -05:00
Zakk
e3fc99017b
Detect lack of 'attr' member in constraint map and skip it
2017-11-17 14:54:45 -05:00
Zakk
8ac26c1f15
Don't build layer constraints until after the transaction that adds the layer to the tree
2017-11-17 14:46:28 -05:00
Zakk
1d41a35c3e
Revert back to NSNull based constraints attributes (zero is used as left edge...)
2017-11-17 03:08:26 -05:00
Zakk
83494f06c9
when loading a layout edit window, adjust all the layout inputs to account for possible resolution changes
2017-11-17 00:46:58 -05:00
Zakk
62e7a0a70d
Script 'save all' button converted to a 'discard' button that discards all edits to the current script
2017-11-16 22:09:45 -05:00
Zakk
70e4229137
Scripts now save when the window is closed, the tab is changed or another script type is selected
2017-11-16 19:27:16 -05:00
Zakk
3bcdf48a39
Set input edit to double click instead of single click in layout edit window's outline view
2017-11-16 18:33:57 -05:00
Zakk
7cca8eaac4
Updated constraints in various input config tabs
2017-11-16 18:21:18 -05:00
Zakk
ad9522540a
Properly reference 'self' in the javascript animation callback.
...
Fix a bad property/function call in javascript input object.
When cloning an input, create a new UUID
2017-11-16 11:41:39 -05:00
Zakk
6846349b42
Finish script editing interface for audio sources
2017-11-14 23:50:58 -05:00
Zakk
dfb724edce
Remove frame arrival setting from Syphon source.
...
Restore flip functionality to Syphon source
2017-11-14 23:02:29 -05:00