擅长:python、mysql、java
<p>好的,经过更深入的调查,最初的怀疑被证实了,也就是说,因为NTSC加密狗不是作为成像设备处理的(它被视为视频控制器,所以类似于电视调谐器卡的模拟),这意味着尽管我们可以用cam_index=0调用cv2.VideoCapture,但视频通道本身并没有传输,因为我们需要定义一组参数</p>
<ol>
<li>编码</li>
<li>帧大小</li>
<li>fps速率等</li>
</ol>
<p>问题是,该设备不支持作为调用cv2.VideoCapture.set(参数、值)的成像设备,似乎不会更改原始视频源上的任何内容。</p>
<p>我没有找到解决办法,但我找到了解决办法。网上似乎有很多选择。搜索关键字DV到网络摄像机或摄像机作为网络摄像机。</p>
<p>我用的是DVdriver(<a href="http://www.trackerpod.com/TCamWeb/download.htm" rel="nofollow">http://www.trackerpod.com/TCamWeb/download.htm</a>)(我用的是试用版,因为我很便宜!)。</p>
<h2>为什么有效?</h2>
<p>据我所知,DVdriver从设置为视频控制器(类似于从“Windows Movie Maker”或ffmpeg捕获)的设备接收数据,然后通过“fairydust”将cam_index=0上的帧(假定没有连接其他cam)输出为“成像设备”网络摄像机。</p>
<h2>摘要</h2>
<p>TLDR使用DVdriver或类似产品。</p>
<p>我找到了一个解决方法,但我真的很想从第一个原则来理解它,并可能从python中生成类似的NTSC加密狗初始化,不需要任何其他软件依赖项,但在那之前,希望这将帮助其他人也在挣扎或假设这是硬件问题。</p>
<p>我现在给你留点贝克特:
曾经尝试过。曾经失败过。没关系。再试一次。又失败了。失败得更好。(!) </p>