Skip to content

Added "Video Capture Device" as a capture method #143

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 157 commits into from

Conversation

Avasam
Copy link
Collaborator

@Avasam Avasam commented Apr 9, 2022

Based on #141

Relates to #134
This adds "Video Capture Device" as a capture method. A different dropdown is used to select the capture device. I've tried putting them all in the same dropdown (https://github.com/Avasam/Auto-Split/pull/18/files), but this way is so much cleaner.

There's a huge limitation with Capture Devices in CV2: You can't list existing devices. This means to get all devices, we need to try all of them individually by index, which is slow as the camera also needs to initialize then close. I'm currently maxing out this process at 8 devices. We also currently have no way of obtaining a device's name.

I'm also setting this as draft, because while DroidCam, my Logitech cam and my StartTech capture card all worked, (they seem to use the MSMF backend). There's one DSHOW backend cam that didn't (black screen, video glitches, slows down the app to a crawl). And I'm assuming that would be the OBS virtual camera. Which is the whole reason behind this feature. (see comment below)

Result:
image
The framerate is decent too:
image

Avasam and others added 30 commits November 27, 2021 17:09
…pty-masks

Fix #52 Comparisons with empty masks
…hread

Fixes Toufool#86 Stop uncaught exceptions from silently crashing the app
…on't allow a start image to load if hotkeys are not set.
Configured VSCode and Markdownlint settings
Added and configured the following linters as strict as I could: pylint, flake8, mypy, bandit, pyright
Partially filled in some type stubs: cv2, imagehash, keyboard, pyautogui, pythonwin, win32helper
[Breaking change] Using interpolation=cv2.INTER_NEAREST everywhere as it is the fastest interlpolation method
Hide generated/compiled files
SelectRegionWidget width and height as functions
Added validate_images_before_parsing() to validate images both before maxFPS and starting autosplitter
…-Open'-immediatly

Async check for updates + Save 'check for updates on open' immediately
Configured Building and linting workflow
@Avasam Avasam force-pushed the camera-capture-split-cam-option branch from 7a2ad2c to 3ca7dbe Compare June 17, 2022 01:57
Avasam added 2 commits June 17, 2022 00:13
Fixes #21
Updated some doc
max fps will show `...` while working
@Avasam Avasam force-pushed the camera-capture-split-cam-option branch from b84f075 to 0ad99bf Compare June 17, 2022 04:39
@Avasam Avasam force-pushed the camera-capture-split-cam-option branch from 0e8583f to 0af8ce3 Compare June 17, 2022 06:01
@Avasam Avasam force-pushed the camera-capture-split-cam-option branch 4 times, most recently from 5fa5572 to de40b92 Compare June 29, 2022 01:43
- Use win32gui.IsWindow for hwnd checks
- is_valid_image TypeGuard
@Avasam Avasam force-pushed the camera-capture-split-cam-option branch from de40b92 to 33c46d4 Compare June 29, 2022 01:46
@Avasam Avasam force-pushed the camera-capture-split-cam-option branch 2 times, most recently from 7f6eff9 to 0269cb4 Compare July 12, 2022 20:54
@Avasam Avasam force-pushed the camera-capture-split-cam-option branch from 0269cb4 to 6dbb6da Compare July 13, 2022 04:49
@Avasam
Copy link
Collaborator Author

Avasam commented Sep 3, 2022

Closing in favor of #141

@Avasam Avasam closed this Sep 3, 2022
@Avasam Avasam deleted the camera-capture-split-cam-option branch September 4, 2022 00:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants