Skip to content

Releases: leikareipa/vcs

v3.1.0

25 Oct 17:18
Compare
Choose a tag to compare

Changelog

  • Re-added the ability to customize the output window's title bar text
  • Re-added the dropped frames indicator to the output window's title bar, now also showing the number of frames dropped per second if any
  • The control panel's view can now be split by right-clicking a tab button
  • The UI is now less Datapath-specific, with a view to eventually supporting non-Datapath hardware
  • Added a sample implementation (for educational purposes) of a generic V4L capture backend, generally compatible with UVC capture devices
  • Added an experimental workaround for a Datapath Vision driver bug where setting a horizontal size of 800 in a video preset would make the other parameters unresponsive
  • Video preset files (.vcs-video) are now saved in a revised format, not recognized by previous versions of VCS
  • Fixed loading a video preset file sometimes triggering an assertion
  • The command-line option for setting the input channel (-i) is now 0-indexed
  • Various in-code refactorings

v3.0.2

07 Oct 04:49
Compare
Choose a tag to compare

Changelog

  • Fixed the filter graph's mouse input sticking when connecting nodes
  • New analog presets' activation rules are now pre-filled with the current capture parameters
  • Added a basic CRT filter
  • The control panel window now opens on top of the output window rather than in a random position on the screen
  • Merged the user's manual into a single Markdown file
  • Removed the Doxygen-based developer's manual

v3.0.1

05 Oct 05:15
Compare
Choose a tag to compare

Changelog

  • The default build configuration is now geared toward OpenCV 4 rather than the older OpenCV 3
  • The code should now be more compatible with various recent versions of GCC and Clang

v3.0.0

02 Oct 03:26
Compare
Choose a tag to compare

Notes

  • The user's manual wasn't updated for this version due to time constraints. It might be done post-release.

Compatibility

This release has been tested briefly on the following platforms:

OS Capture device Signal type Works?
Linux 5.15 (Ubuntu 20.04) Datapath VisionRGB-E1S Analog Generally speaking, yes

Changelog

Too long to list. Give it a go and be surprised or disappointed depending on your situation.

v2.7.0

18 Feb 18:59
Compare
Choose a tag to compare

Notes

  • This release drops support for Windows, which means VCS is now supported only on Linux. If you'd like to maintain Windows support, you can fork the previous release, 2.6.1.

Compatibility

This release has been tested to some extent on the following platforms:

OS Capture device Signal type Works?
Linux 5.13 (Ubuntu 20.04) Datapath VisionRGB-E1S Digital Yes

Changelog

  • Removed support for Windows. VCS is now Linux-only.
  • Increased maximum capture resolution from 1920 × 1200 to 4096 × 4096.
  • Screensaver activation and screen blanking are now prevented while VCS is running. Supported on X11.
    • You can use the -s command-line option to disable the prevention.
  • Removed the pre-allocated memory cache. VCS will now use as little or as much memory as needed, though the difference is likely not noticeable in normal use.
    • This deprecates the -m command-line option, which now does nothing but might one day be used for something else.
  • Removed all video recording functionality.
  • The release and non-release builds are now more cleanly separated, with the non-release build compiling with -O0 and -g, while the release build compiles with -O2.
    • This does rely on some assumptions about qmake's default flags, so drop an issue report if you find it using inconsistent values for -O and -g on your setup.
  • Added sanitizers to the non-release build. They mostly replace the memory checking that was previously done by the now-removed memory cache implementation.
  • Small reorganization of the output window's context menu.
  • Removed the output FPS indicator from the output window's title bar. You can still find this info in the signal info dialog (Ctrl+S)

v2.6.1

23 Jan 18:50
Compare
Choose a tag to compare

Compatibility

This release has been tested to some extent on the following platforms:

OS Capture device Signal type Works?
Linux 5.13 (Ubuntu 20.04) Datapath VisionRGB-E1S Digital Yes
Linux 5.13 (Ubuntu 20.04) Datapath VisionRGB-E1S Analog Yes

Changelog

  • Fixed regression where only half of the frame was drawn when the input color depth was set to 16 bits
    • This bug was specific to the input color depth that is set via VCS, rather than the color depth of the source being captured.
  • Filter/Source FPS estimate: Added ability to sample a single pixel row
    • When sampling the entire image (default mode), image tearing resulting from the source render rate being lower than its refresh rate will count incorrectly as multiple frames, inflating the FPS number. Sampling a single row is immune to this, although it's also oblivious to activity outside of that row.
  • Filter/Source FPS estimate: Improvements to accuracy
  • Filter/Blur: The blur radius can now be specified with two decimals rather than one
  • Animated the virtual capture backend's test pattern
  • GUI/Signal info: The info is no longer hidden while receiving an invalid signal

v2.6.0

21 Dec 03:33
Compare
Choose a tag to compare

You can read an introduction to some of the key features of this release at https://www.tarpeeksihyvaesoft.com/blog/whats-new-in-vcs-2.6/.

Notes

  • This release has been developed on Linux, and tested only lightly in Windows. As always, you should consider contributing an issue report if you see the program working in a way that you'd consider unusual – but especially so with the Windows version.
  • Some of the changes in this version touch on capture code, so in theory it's possible that there are capture-related regressions.
  • Some of the overlay editor's variables were renamed. See the user's manual for details.
  • Custom letterboxed output aspect ratios are now handled via the output scaling filter in the filter graph dialog (Ctrl+F).

Compatibility

This release has been tested to some extent on the following platforms (also see known issues, below the table):

OS Capture device Signal type Works?
Linux 5.13 (Ubuntu 20.04) Datapath VisionRGB-E1S Digital Yes
Linux 5.13 (Ubuntu 20.04) Datapath VisionRGB-E1S Analog Yes
Windows XP (VM) Datapath VisionRGB-PRO2 Analog Yes
Windows 7 (VM) (VCS virtual) N/A Yes
Windows 10 (VM) (VCS virtual) N/A Yes

Known issues

  • Seen in a Windows XP virtual machine but not in a Windows 7 virtual machine:
    • Unusually frequent frame drops (once per second vs. once per several minutes) in eco mode. This may be due to that particular VM's low performance, which the eco mode doesn't handle well yet.
    • Dialogs' menu bars ARE NOT rendered properly.
  • (Minor) If you delete an active input resolution alias, the resolution doesn't reset to its pre-alias version.
  • (Minor) If you force an input resolution with an analog signal, it gets applied twice (as per console output).
  • In the filter graph dialog, dragging a connection from a node's input or output may not always draw the connecting line.
  • Using a hardware input color depth lower than 24-bit will result in only half of the output image being displayed. (This issue applies only to the color depth to which the capture hardware has been set, not the color depth of the source being captured. With a hardware depth of 24, you can capture any color depth from 32 and down.)
    • Fixed in the next release.
  • Changing the dialog font size requires a program restart for all GUI elements to scale properly.
  • If a modal popup dialog blocks the output window while the input signal is lost, the output window may not properly repaint itself after the modal to indicate the no-signal condition. This may be a Windows-only issue, or specific to the virtual machine where I saw it.
  • The user's manual still lacks content about various things, like image filters.

Changelog

  • Various improvements to the filter graph dialog
  • Windows: Fixed capture not starting with the correct input resolution
    • Note: My ability to test capture in Windows is somewhat hardware-limited at the moment, so post an issue report if you still come across this bug.
  • Linux: Fixed not triggering a display update when signal was lost
  • Fixed the record dialog's "Zero latency" setting not persisting
  • New filters:
    • Output scaler
    • Text renderer
  • Renamed filters:
    • "Delta histogram" => "Histogram: pixel delta"
    • "Frame rate" => "Source FPS estimate"
    • "Kernel (3 × 3)" => "3 × 3 kernel"
  • Moved the cropping filter in category from Reduce to Distort
  • Made the source FPS estimation filter more Fraps-like in its presentation
  • Improved the presentation of the pixel delta histogram filter
  • Demoted an assertion into a debug message in the anti-tear system
    • This relates to a bug where the anti-tearer can receive transient invalid values when the video mode changes. The assertion would trigger and VCS would close. Now it just prints a debug message in the console and ignores the values.
  • Added the ability to change dialogs' font size
  • Added an optional power-saving eco mode
    • Note: This feature has been tested primarily on Linux, where it's shown very few - if any - frame drops. If on Windows you experience worse performance, you should post an issue report to make me aware of it.
  • Reorganized the output window's context menu
    • The eye dropper was removed entirely
    • Upscaler and downscaler were merged into one
    • Removed the ability to customize the output aspect ratio - this functionality is now handled by the output scaling filter in the filter graph dialog
  • Small improvements to the app's styling all over
    • Scroll bars are now a bit smaller
    • Buttons got a hover and focus highlight
    • Dialog titles are more unified
    • The video preset dialog's preset activity indicator now uses an icon image instead of a font glyph
  • Improved Tab navigation in dialogs
  • Screenshots ("Save as image") now use an automatic filename
  • Simplified the overlay dialog
  • Removed support for the USE_OPENCV compile flag - OpenCV is now a non-optional component for building VCS
  • Renamed the CAPTURE_DEVICE_XXX build flags to CAPTURE_BACKEND_XXX
  • A few of the dialogs with analog-specific functionality will now issue a warning if used while capturing a digital source
  • Color-coded the console output on Linux
  • Improved the styling and content of the user's manual
  • Code refactoring here and there

v2.5.2

08 Nov 00:12
Compare
Choose a tag to compare

Changelog:

  • Fixed the output resolution dialog (Ctrl + O) not accepting valid resolutions above 2048 x 2048
  • Removed automatic check for program updates
  • Tweaked the GUI here and there a bit
  • Made the code easier to compile against newer versions of OpenCV (see issue #30)
  • Small improvements to the user and developer manuals

v2.5.1

30 Aug 13:33
Compare
Choose a tag to compare

Notes:

  • I'm currently unable to test the Windows release on real capture hardware; the binaries have been tested briefly using VCS's virtual capture backend. If you find that the release fails to work as expected, please post an issue report.

Changelog:

  • Increased the maximum input resolution from 1920 x 1080 to 1920 x 1200.
    • This may resolve "Signal out of range" errors when capturing modern digital sources that automatically output at the capture device's maximum advertised resolution (1920 x 1200 for the VisionRGB-E series).
  • Linux: Fixed not automatically detecting changes in the input video mode.
  • Linux: Implemented the input resolution dialog (Ctrl + I).
  • Linux: Fixed capture not automatically resuming after an "Invalid signal" condition.
  • Linux: Fixed compilation error with newer versions of the Datapath Vision driver headers.
  • Fixed compilation error when the USE_OPENCV flag was unset.
  • Reorganized the capture window's right-click context menu.
  • The virtual capture backend now outputs an RGB color gradient.
  • Improved the DOSBox MMAP capture backend.
  • Fixed inability to cancel saving a screenshot (it would output a screenshot called ".png" if canceled).
  • Various changes to the user's manual (work in progress).

v2.5.0

24 Dec 12:48
Compare
Choose a tag to compare

Warning:

  • I'm currently and in the foreseeable future unable to test VCS in Windows with real capture hardware (I can on Linux, though). I've tested this release on Windows using VCS's virtual capture device and compiled the distributable to use a real device, but I can't guarantee at all that the distributable works as intended. If there are problems, you're encouraged to report them on VCS's issue page on GitHub.

Changelog:

  • Improvements to the video preset dialog (Ctrl+V)
  • Linux: The 'no signal' condition may now be correctly detected
  • The size of the app's memory cache can now be set via the command line (-m xxxx; you might e.g. reduce the default size if you have memory trouble with the video recorder)
  • New and improved end-user and developer documentation
  • Refactoring of in-code APIs
  • Linux: Support for a new capture device: DOSBox MMAP (intended for testing/debugging purposes only; grabs frames from DOSBox via shared memory and displays them in VCS's output window)