Re-enable proper restoration of audio input source settings (oops)
Clear layout source list if a layout recording is stopped and there is no longer a recorder attached to the layout
Fix OAuth request percent encoding for auth codes
Don't change ffmpeg input source size on input file swap
Uninit audio unit with setting input stream format
Start of virtual camera plugin (soooooon). Disabled for now
Update Youtube output plugin
Fix pause/play state tracking bugs in ffmpeg movie player config dialog.
Properly reset the "is_ready" flag when closing a ffmpeg movie item
Fix potential div0 error in Downmixer
Provide default needsSetup method for compressors
Audio Graph now keeps track of connections via connection objects.
Connecting nodes now requires an AudioFormat, and the format is set on both ends of the connection. No more explicit setting of stream formats.
CAMultAudioPCM is now based on AVAudioPCMBuffer
Most instances of AudioStreamBasicDescription are replaced with AVAudioFormat
Support segmentation for file output. This is based on libavformat's segment muxer. May move it to a custom internal file rotator in the future.
Changed instant record buffer to a rotating disk based buffer. Saving a live recording now just remuxes a time range of the on-disk buffer to a new file.
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??!)
Improve the feel of Desktop Capture's crop overlay window. (Don't implement resizing and moving manually, let system do them)
Desktop capture no longer destroys+recreates the display stream multiple times when the cropping region is changed.
Desktop capture 'reset crop region' button now works...
Fixed some warnings.
Restore dark UI mode when running non-Mojave systems. Still ugly, tho.
On older systems (earlier than 10.12) set CALayer preview view contents to the IOSurface, not the CVPixelBuffer
Small changes to SourceLayout; it allocates root and transition layers on demand, so non-visible copies of a layout do not incur any potential CALayer/video resource waste
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
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.
Live view ignores pinned input status and just replaces entire layout like it should
If a cached source has the allowDedup flag set to false when it is retrieved from cache, it is evicted from the cache and replaced with the 'new' object
Introduced a 'uniqueIdfrompasteboard'; if implemented this allows the caching system to use a cached source on drag+drop
Actually bounce the NDIReceiver audio delegate call through the requested queue
Fixed drag and drop reorder bug with source lists that was preventing a source from being placed at the bottom
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)
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.
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.
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
Changed Image source to use NSImages as the CALayer contents, and improved handling of intermediate CGImage/CGImageSource. Fixes a potential memory leak when image sources are used