Skip to content

VidGear Stable v0.3.1

Compare
Choose a tag to compare
@abhiTronix abhiTronix released this 22 Jul 18:36
· 129 commits to master since this release

πŸ““ Complete Release Notes can be found here ↗️


New Features ✨

  • WebGear:
    • Added an option to add a custom video endpoint path.
      • Users can now change the video endpoint path from "/video" to any alphanumeric string.
      • Added the custom_video_endpoint optional string attribute for this purpose.
      • Only alphanumeric strings with no spaces in between are allowed as its value.
  • ScreenGear:
    • Added dxcam backend support for Windows machines.
      • dxcam is now the default backend for Windows machines when no backend is defined.
      • Added support for variable screen dimensions to capture an area from the screen.
      • Added the optional flag dxcam_target_fps to control the target fps in dxcam. Defaults to 0 (disabled).
    • Added support for tuple values in the monitor parameter to specify device and output indexes as (int[device_idx], int[output_idx]) in the dxcam backend only.
      • Default int index is also allowed as a value for selecting device index.
  • Helper
    • Added multiple servers support for downloading assets.
      • Added GitHub server to the generate_webdata method to make it more robust for rate limits and other shortcomings.
      • Now, the generate_webdata method will retry a different server when one fails.
  • Setup.py
    • Added dxcam dependency in core and asyncio extra requires for Windows machines.

Updates/Improvements ⚑️

  • WebGear:
    • Improved the conditions logic to check if non-empty values are assigned to optional parameters.
  • WebGear_RTC:
    • Improved the handling of the format parameter when constructing a VideoFrame from ndarray frames.
  • ScreenGear:
    • Enforced dxcam backend (if installed) when monitor is defined on Windows machines.
    • Refactored code blocks to ensure backward compatibility.

Breaking Updates/Changes πŸ’₯

  • ScreenGear:
    • πŸ’£ Previously enforced threaded queue mode is now completely removed, resulting in a potential performance boost.
      + πŸ’¬ Reason: The IO is automatically blocked by the screen refresh rate, so adding the overhead of maintaining a separate queue is pointless.
    • πŸ’£ Removed the THREAD_TIMEOUT optional flag.

Bug-fixes πŸ›

  • WebGear_RTC:
    • Fixed a bug caused by PyAV's error when ndim==3 grayscale frames are encountered.
      • The API will now drop the third dimension if ndim==3 grayscale frames are detected.
  • Setup.py:
    • Starting from version 8.0.0, the python-mss library dropped support for Python 3.7, so as a temporary measure, mss dependency has been pinned to version 7.0.1.