Browse Source

added capture card

add-capture-card
mht 1 month ago
parent
commit
48e06828ea
  1. 52
      cvStreamer.py

52
cvStreamer.py

@ -0,0 +1,52 @@
import cv2
from pywt.version import release
class cvStreamer():
def __init__(self, idx):
self.cap = cv2.VideoCapture(idx)
self.idx = idx
def isOpened(self):
isOpen = self.cap.isOpened()
if not isOpen:
self.release()
else:
print(f"usb cam open at {self.idx}")
return isOpen
def release(self):
self.cap.release()
def get_frame(self):
_, frame = self.cap.read()
# Get the original dimensions of the frame
height, width = frame.shape[:2]
# Define the maximum dimensions
max_width = 1920
max_height = 1080
# Calculate the aspect ratio
aspect_ratio = width / height
# Resize the frame if it exceeds the maximum dimensions
if width > max_width or height > max_height:
if aspect_ratio > 1: # Landscape orientation
new_width = max_width
new_height = int(new_width / aspect_ratio)
else: # Portrait orientation
new_height = max_height
new_width = int(new_height * aspect_ratio)
# Resize the frame
frame = cv2.resize(frame, (new_width, new_height))
return frame
def __del__(self):
self.release()
Loading…
Cancel
Save