好吧,经过深入调查后,最初的怀疑得到了确认,即因为NTSC加密狗没有作为成像设备处理(它被视为视频控制器,所以类似于电视调谐器卡的仿真),这意味着虽然我们能够使用cam_index = 0调用cv2.VideoCapture视频通道本身没有传输,因为我们需要定义一堆参数
编码
框架大小
fps率等
问题是因为设备不支持作为调用cv2.VideoCapture.set(参数,值)的成像设备似乎没有改变原始视频源上的任何内容.
我没有找到解决办法,但我找到了解决办法.网上似乎有很多选择.搜索关键字DV to webcam或camcorder作为网络摄像头.
我使用DVdriver(http://www.trackerpod.com/TCamWeb/download.htm)(我使用试用版因为我很便宜!).
尽管我可以告诉DVdriver从设备接收数据,该设备被设置为视频控制器(类似于从"Windows Movie Maker"或ffmpeg捕获),然后通过"fairydust"输出cam_index = 0上的帧(假设为no其他凸轮连接)作为"成像设备"网络摄像头.
TLDR使用DVdriver或类似产品.
我发现了一个解决方法,但我真的很想从第一原理中理解它,并且可能在python中生成类似的NTSC加密狗初始化,没有任何其他软件依赖,但在此之前,希望这将有助于其他也在努力或假设它的人是一个硬件问题.
我现在要告诉你一些Beckett:曾经尝试过.曾经失败过.不管.再试一次.再次失败.失败更好.(!)