93764
[以下の方法](https://irohaplat.com/python-opencv-camera-id-
detection/)で、Windowsで接続されているカメラのIDは取得できるようですが、カメラデバイスの名前は取得できません。  
デバイスの名前を取得する方法があれば知りたいです。

```

    import cv2
    
    for i1 in range(0, 20): 
        cap1 = cv2.VideoCapture( i1, cv2.CAP_DSHOW )
        if cap1.isOpened(): 
            print("VideoCapture(", i1, ") : Found")
        else:
            print("VideoCapture(", i1, ") : None")
        cap1.release() 
    
```

Pythonの実行環境は、WinPythonとPython 3.10.4です。
CC BY-SA 4.0
2022-12-26T20:11:51.677
93028
2023-02-08T04:46:20.807
2022-12-27T00:59:31.487
34471
34471
question
python windows opencv
Windows環境のPythonで、接続されているWEBカメラの名前を取得する方法はあるかどうか
以下により，カメラ名を一覧できました．

```

    import subprocess
    import re
    
    output = (
        subprocess.check_output(["powershell.exe", 'Get-PnpDevice -Class "Image"'])
        .decode("utf-8")
    )
    
    camera_infos = output.splitlines()[3:-2]
    
    cameras = [re.split(r"\s{2,}", camera)[2] for camera in camera_infos]
    print(cameras)
    
```

`output`： PowerShellから取得した全カメラ情報の文字列  
`camera_infos`：各カメラ情報を要素に持つリスト  
`cameras`：`camera_infos`からカメラ名だけに絞ったリスト
CC BY-SA 4.0
2023-02-08T04:46:20.807
93764
2023-02-08T04:46:20.807
50560
93028
answer