问题标签 [uvc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
directshow - 使用 DirectShow 连接 UVC 1.1 H.264 扩展设备
使用 DirectShow,我试图在 Windows 8 上访问 Logitech C920 摄像头的 H.264 流。
使用罗技驱动程序,相机似乎只通过UVC 1.1 H.264 扩展暴露其 H.264 输出。
有没有人清楚地解释为了查询/初始化这样的摄像机并随后使用 DirectShow 从摄像机捕获 H.264 编码的视频需要发生什么?
linux - 如何在 Linux UVC 驱动程序中启用 UVC_QUIRK_FIX_BANDWIDTH 怪癖?
我目前正在尝试在 Wandboard 板上运行 2 个网络摄像头,它们必须共享一个 USB 集线器。问题是,当前的驱动程序实现(仅限 YUV)使 USB 集线器饱和,最后我只能连接一个摄像头。
然而,UVC 驱动程序实现对这种情况和其他情况有一个怪癖。
问题是,我没有找到任何关于如何加载这些怪癖的文档。你能帮我解决这个问题吗?
video - 在 Windows 上使用 ffmpeg,从 Logitech c930e 捕获硬件编码的 H264 流的命令是什么
我在 Windows 8 上使用 ffmpeg,我想从罗技 c930e 相机捕获内置的 H264 硬件编码流。H264 内置编码流是 UVC 1.5 接口的一部分。
使用这个命令我注意到 c930e 通过 DirectShow 暴露了两个视频引脚:0 和 1。
ffmpeg -report -list_options true -f dshow -i video="Logitech Webcam C930e"
[dshow @ 0000000002d89360] Pin "Capture" (alternative pin name "0")
[dshow @ 0000000002d89360] Pin "Capture" (alternative pin name "1")
选择 Pin 0 或 1 似乎无关紧要,我仍然可以从 Logitech c930e 网络摄像头获得原始视频。在 Linux 上,假定的命令涉及 v4l2,但这在来自http://ffmpeg.zeranoe.com/builds/的默认 Windows 版本的 ffmpeg 中似乎不存在
ffmpeg的默认windows构建是否支持直接捕获UVC接口?
这是我在这次旅程中最接近的一次,但仍然不太正确:
ffmpeg -report -f dshow -i video="Logitech Webcam C930e" -s 1920x1080 -r 30 -video_pin_name 1 -vcodec H264 -c copy -f mp4 Logitechc930eFeed.mp4
截至 2015 年 4 月 17 日,我仍在努力解决这个问题并获得两条新信息。
我在罗技的网站上发现了这篇有趣的文章,指导用户将默认罗技驱动程序更改为通用 USB 视频设备驱动程序:https: //support.logitech.com/en_us/article/Install-native-UVC-drivers-for-your -Logitech-webcam?product=a0qi00000069v0MAAQ#
我还发现我的 C930e 有一个较旧的固件 (8.0.866),罗技建议将固件更新到 8.0.875 以修复未指定的 UVC H.264 问题。
所以现在我有了最新的固件,并且在 Windows 8.1 上使用通用的“USB 视频设备”。
ffmpeg -list_devices true -f dshow -i
这给出了这个输出:
ffmpeg version N-69608-g9dc45d1 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.9.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma --enable-decklink --enable-zlib
libavutil 54. 18.100 / 54. 18.100
libavcodec 56. 21.102 / 56. 21.102
libavformat 56. 19.100 / 56. 19.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 9.103 / 5. 9.103
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
[dshow @ 00000000045c9360] DirectShow video devices (some may be both video and audio devices)
[dshow @ 00000000045c9360] "Logitech Webcam C930e"
[dshow @ 00000000045c9360] Alternative name "@device_pnp_\\?\usb#vid_046d&pid_0843&mi_00#7&3693c0e6&1&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
[dshow @ 00000000045c9360] DirectShow audio devices
[dshow @ 00000000045c9360] "Microphone (Logitech Webcam C930e)"
[dshow @ 00000000045c9360] Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{BB8BE70B-4DDC-465F-9247-86E6EC98D627}"
dummy: Immediate exit requested
这个命令:
ffmpeg -list_options true -f dshow -i video="Logitech Webcam C930e"
仍然给出这个输出:
ffmpeg version N-69608-g9dc45d1 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.9.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma --enable-decklink --enable-zlib
libavutil 54. 18.100 / 54. 18.100
libavcodec 56. 21.102 / 56. 21.102
libavformat 56. 19.100 / 56. 19.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 9.103 / 5. 9.103
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
[dshow @ 0000000004469360] DirectShow video device options (from video devices)
[dshow @ 0000000004469360] Pin "Capture" (alternative pin name "0")
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=800x600 fps=5 max s=800x600 fps=24
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=800x600 fps=5 max s=800x600 fps=24
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=960x540 fps=5 max s=960x540 fps=15
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=960x540 fps=5 max s=960x540 fps=15
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1024x576 fps=5 max s=1024x576 fps=15
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1024x576 fps=5 max s=1024x576 fps=15
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1280x720 fps=5 max s=1280x720 fps=10
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1280x720 fps=5 max s=1280x720 fps=10
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1600x896 fps=5 max s=1600x896 fps=7.5
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1600x896 fps=5 max s=1600x896 fps=7.5
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1920x1080 fps=5 max s=1920x1080 fps=5
[dshow @ 0000000004469360] pixel_format=yuyv422 min s=1920x1080 fps=5 max s=1920x1080 fps=5
[dshow @ 0000000004469360] vcodec=mjpeg min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=424x240 fps=5 max s=424x240 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=480x270 fps=5 max s=480x270 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=848x480 fps=5 max s=848x480 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=960x540 fps=5 max s=960x540 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 0000000004469360] vcodec=mjpeg min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 0000000004469360] Pin "Capture" (alternative pin name "1")
video=Logitech Webcam C930e: Immediate exit requested
linux - 无法打开 /dev/video0(没有这样的设备)
我正在尝试在 Synology NAS(arm,linux 内核 3.2.40)上安装网络摄像头。我已经编译并安装了内核模块,它们似乎可以工作。这是插入模块并插入相机(Logitech C270)时的内核输出:
这是 lsusb 输出:
但是,我无法访问相机:
在 strace 中:
我尝试了不同的相机型号,另一台计算机上的 C270(工作正常),删除 /dev/video0 并重新创建它(mknod /dev/video0 c 81 0),更改权限等,但我得到了同样的错误。 ..
lsmod 显示 uvcvideo 不用于摄像头:
有任何想法吗?
linux - Beaglebone Black Video Capture:错误“选择超时”
嘿,我正在关注 Derek Molloy 的教程:
使用 Linux UVC 驱动程序支持的 Logitech c310 网络摄像头。
所以我们可以看到它被 Beagleboard 读取没有问题。当我尝试捕获视频时,我只是收到此错误:
看了其他帖子,大家似乎不知道怎么回答这个问题,有这个项目经验的人可以帮帮我吗?
java - 使用 USB 设备更改 Android 相机 ID?
我开发了一个应用程序,该应用程序显示UVC
通过 USB 连接到设备的相机,使用组合libusb
和libuvc
方式JNI
。
我想要做的是找出一种在启动时运行服务的方法,该服务将为这个 USB 摄像头分配后置摄像头的 ID,以便其他应用程序可以通过简单地请求使用后置摄像头来使用它,这实际上是USB 摄像头,因为它具有后置摄像头的 ID。
这样的事情可能吗?另外,我将如何重新分配相机 ID?在此先感谢您的帮助!
device - usb:为什么我的 f_uvc 不响应 GET_DEF 请求?
我需要在我的设备中实现 uvc1.5 规范,我选择 linux3.4 作为我的内核,我想使用它drivers/usb/gadget/webcam.c
作为我的功能驱动程序。但它不能正常工作。
根据wireshark捕获的信号,当主机向GET_DEF
设备发送请求时,我的设备应答-ENOENT
导致枚举失败。
我发现当composite.c
收到这种请求时,它会转发它们f->set_up
以继续。
主要部分f->set_up
是:
v4l2_event_queue
令我困惑的是:谁来处理这个事件?我没有看到任何代码在做这种与事件相关的初始化工作......
我的问题是如何正确处理此事件,以便我可以回答GET_DEF
请求?
ios - 是否可以将外部有线摄像头连接到 ios 设备?
是否可以将外部有线 USB 网络摄像头连接到 ios 设备照明连接器?我想将 USB 网络摄像头连接到 IOS 设备。
这可能是因为有一个例子。
但是,我不知道这是否真的可能。必须是有线连接,不是wifi,因为电池问题。
谢谢你。
android - Android 从外部摄像头录制视频 - 三星 Galaxy S5 - 罗技 C920
我正在尝试通过插入外部摄像头在我的 S5 上录制视频。当我开始录制时,它会启动,但是当我停止录制时,它会崩溃。
我无法理解为什么 Audio Flinger 会死掉。我为记录、写入外部存储、音频等设置了必要的权限,
相同的代码在我的 Moto G 上使用相同的相机也能正常工作。
我附上我的崩溃日志以供参考。我也插入了我的评论...
高度赞赏调试此问题的任何帮助。
我的设备监视器线程:
uvc - 将电路板实现为 UVC 设备
全部,
我想做一个摄像头模块的采集和编码,做成uvc设备的形式,现在我有一个开发板可以采集和编码,如果我实现板子作为UVC设备,当使用otg或usb连接时开发板,可以看到图像采集。