Add VideoSource/VideoSink.
Transition everything to VideoSource/VideoSink (doesn't compile yet).
Completed transition to VideoSource/VideoSink, still needs a lot more testing.
Merge branch 'master' into floating-input
Moved conversion/scaling to FastScaler, moved CPU detection to DetectCPUFeatures, added ElidedLabel, added protocol detection.
Upgrade to autotools 1.14.
Don't clamp speed correction factor at 95% .. 105% (slow/fast video is better than desynchronization), replace preview frame rate lineedit with spinbox, optimize VideoPreviewer locking.
Moved settings to the .ssr directory, fixed setting names for recording page, no suffix changes for protocols, incomplete support for separate file per segment.
Fixed small bug detected by new GCC.

It's incredible that GCC was able to detect this at all!
Capture/record split appears to work but needs more testing. Separate file works too.
Removed useless file.
Improved statistics (frame rate/bit rate).
Fixed memory leak in FastScaler, and changed VideoPreviewer to use FastScaler.
Reset output video size in separate files mode when the recording is stopped.
Save container/codecs by avname instead of index.
FastScaler refactoring.
Rewrote audio frame generation in Synchronizer to support channel counts other than 2.
Removed unused variable from Synchronizer.
Added synchronizer thread.

This is needed to move duplicate frame generation from GLInjectInput to Synchronizer.
Replaced log/preview polling with cross-thread signals/slots.

This should eliminate idle CPU usage and improve the latency.