我想知道如何使用 ffmpeg 捕获网络摄像头视频并转储原始版本和编码版本。我只想要视频流。我在 Windows xp 上。
大多数便宜的 USB 网络摄像头都可以看到 IR,尤其是当您移除其中的任何 IR 过滤器时。对于我目前使用的相机,我正在使用的 LED 发出的 IR(波长未知)显示为蓝色白色。
Digikey 提供 830 nm 至 950 nm 波长的红外 LED。是否有任何便宜的 USB 相机可以将不同波长的 IR 视为不同的颜色?虽然专用的红外相机最好,但它们很贵,所以我会选择对不同波长有不同反应的相机。即使相对较小的色调差异也会很好,因为我可以在相机上放置一个可见光过滤器并仅捕获 IR。
Timershot 是PowerToys for Windows XP系列的一个很好的部分。但遗憾的是,即使在 XP SP3 兼容模式下运行,它似乎也无法在 Windows 7 上运行。
谁能推荐一个好的替代品?
(...最好是与Eee PC 1005HA上的网络摄像头兼容的。但我会接受我能得到的任何东西。)
我以前从未使用过网络摄像头。我猜有一些预装的程序可以让我拍照或拍小视频。
我有一台运行 Windows 7 的 HP ProBook。
编辑:我不再拥有这台电脑,因为它是我以前工作中的工作笔记本电脑。我感谢最近回答者的帮助,但我不会赞成或接受答案,因为我无法验证它们。
我已将我的笔记本电脑升级到 Windows 8,几乎一切都运行良好。
一个值得注意的例外是内置网络摄像头,虽然它可以在许多 Windows 7 应用程序(包括 Skype)中完美运行,但没有 Metro/Windows 8 应用程序可以看到它。
要让网络摄像头可用于 Windows 8 应用程序,我需要什么?
我想试用新的 Skype 应用程序,但没有网络摄像头支持,那是不可能的。
我有一台 HP Probook 6550b,但我怀疑问题并非特定于该型号。毕竟,驱动程序已安装并且网络摄像头确实可以工作 - 只是不是来自 Metro 应用程序。
自 8 月中旬以来,我一直在运行 Windows 8 RTM,这不是最近的安装。其他设备的驱动程序更新(包括视频驱动程序)已经通过 Windows 更新提供 - 在 Windows 8 零售可用之前有几个;我希望 HP 大约在同一时间发布 Windows 8 特定的驱动程序,但还没有在 HP 网站上看到任何内容。
如果我使用网络摄像头拍摄快照,无论是通过右键单击xawtv还是通过streamer -o snapshot.jpeg,图像都会失真。最简单的解释方式是通过一个示例图片:

下面的两个“框架”应该交换位置。如果我只是跑步xawtv或vlc观看来自网络摄像头的实时反馈,则不会出现这种失真并且视频很好。
我不知道这是怎么发生的。可能有什么问题?我应该从哪里开始故障排除?
更新:事实证明,图片的上部“框架”与其余部分不在同一时间点。我添加了第二张图片来显示这一点。
调试信息
xawtv 是 xawtv-3.101,在 Linux/x86_64 (3.6.8-1-ARCH) 上运行。上图是用 生成的streamer -d -o test.jpeg,它生成了这个调试输出:
checking writer files [multiple image files] ...
video name=ppm ext=ppm: ext mismatch [need jpeg]
video name=pgm ext=pgm: ext mismatch [need jpeg]
video name=jpeg ext=jpeg: OK
files / video: JPEG (JFIF) / audio: none
vid-open: trying: libv4l...
Using libv4l plugin
v4l2: device caps: 2, required 0
v4l2: open
v4l2: device info:
uvcvideo 3.6.8 …Run Code Online (Sandbox Code Playgroud) 当我第一次拿到 Windows 8 笔记本电脑时,我的网络摄像头(内置在我的 Gateway 笔记本电脑中)运行良好。我停止使用我的网络摄像头有一段时间了。
我不记得卸载它,因为在那段时间之后,它会说“连接相机”。申请上没有任何内容说Camera Settings。我研究了几种方法。他们说要去Imaging Devices我的笔记本电脑上找不到。当您转到“设置”>“控制面板”>“硬件和声音”>“设备和打印机”时,我已尝试过该方法,但我似乎永远找不到下一步以及涉及设备管理器的其他解决方案。
但是当我使用像 Omegle 这样的网站时,它似乎有时会起作用,我觉得这很令人困惑。我感谢任何可以分享解决此问题的方法的人。谢谢你。
我已经开始使用罗技网络摄像头进行视频通话。问题是安装在显示器的顶部或底部看起来很糟糕 - 无法与人进行目光接触,角度在我的脸上方或下方。如何安装相机使其与视线水平?
我的一个想法是将视线水平夹在显示器的一侧。但是 A) 我不能旋转图像 B) 很难让它留在那里。
我想用网络摄像头、OpenWRT 路由器和闪存驱动器(或者可能是硬盘驱动器)来构建低成本的 IP 摄像机。
这并不难,但我想像过去 24 小时一样存储,因此实现循环缓冲区。
想到的第一件事是记录例如 1 小时长的记录并删除 24 小时的记录。
我想知道是否有一些简单的方法可以使用真正的循环缓冲区来做到这一点。意思是一个文件正好包含过去 24 小时。
因为如果我使用 24x1hour 文件,内存没有完全使用,因为我需要有 25 小时的内存。
如果我使用1分钟的视频,内存被完全使用,但是浏览1分钟的视频会很不方便。
或者有什么方便有效的方法来做这样的事情?
我正在寻找一种命令行工具,它可以尽可能快地从网络摄像头拍摄照片并将其写入标准输出。此外,我希望能够指定输入格式、分辨率和输出格式等设置。
我的第一次尝试是 ffmpeg:
ffmpeg -f video4linux2 -video_size 1920x1080 -input_format yuyv422 -i /dev/video0 -f image2 -frames:v 1 -qscale:v 2 pipe:1
Run Code Online (Sandbox Code Playgroud)
但是,这有两个缺点:
将图像写入stdout大约需要3秒钟,这似乎是由于网络摄像头需要初始化的时间。
以这种方式拍摄的照片相当暗,可能是网络摄像头需要捕获视图视频帧以调整亮度等。
我的下一个想法是从网络摄像头连续捕获视频帧(即“保持网络摄像头处于活动状态”),将这些视频帧流式传输到某处,然后抓取单个视频帧并按需将它们转换为图像。但是,我不知道该怎么做(以及是否有更好的方法)。
编辑:我需要一个一次性命令将图像写入标准输出,所以我可以在 http 服务器中使用它来提供 http GET 请求。它需要快速,因为拍照会阻塞机器中的机械过程。