cv2.VideoCapture(udp_str,cv2.CAP_GSTREAMER) is not working

New to this myself. Does this help

import cv2

def list_available_cameras():
    num_cameras = 10  # Maximum number of cameras to check
    available_cameras = []
    
    for i in range(num_cameras):
        cap = cv2.VideoCapture(i)
        if not cap.isOpened():
            break
        available_cameras.append(i)
        cap.release()
    
    return available_cameras

if __name__ == "__main__":
    cameras = list_available_cameras()
    print("Available cameras:", cameras)