网络摄像头 Intel Realsense 无法在 Fedora 上运行

网络摄像头 Intel Realsense 无法在 Fedora 上运行

我的笔记本电脑配备了英特尔实感 F200 网络摄像头,该摄像头在 Fedora 上无法正常工作,当我启动网络摄像头时,输出图像是绿色的,并带有我的剪影。我在网上搜索并找到了这个图书馆https://github.com/IntelRealSense/librealsense但由于安装指南是针对 Ubuntu 的,所以我不知所措。

有一个脚本(patch-uvcvideo-fc23.sh)可以安装一些依赖项并加载 uvcvideo 模块。但即使之后网络摄像头仍然是绿色的。的输出sudo dmesg | tail -n 50

332.078253] Hardware name: LENOVO 80NV/Allsparks 5A, BIOS CDCN35WW 03/29/2016
[  332.078259]  0000000000000286 0000000015ae496a ffff88006cc27bc0 ffffffff813dbcff
[  332.078266]  ffff88006cc27c10 0000000000000000 ffff88006cc27c00 ffffffff810a740b
[  332.078274]  0000050300000246 ffff88006cc27d88 0000000000000000 0000000000000000
[  332.078282] Call Trace:
[  332.078296]  [<ffffffff813dbcff>] dump_stack+0x63/0x84
[  332.078302]  [<ffffffff810a740b>] __warn+0xcb/0xf0
[  332.078309]  [<ffffffff810a748f>] warn_slowpath_fmt+0x5f/0x80
[  332.078320]  [<ffffffffc119186c>] ? uvc_ioctl_enum_fmt+0x9c/0xb0 [uvcvideo]
[  332.078334]  [<ffffffffc06597d4>] v4l_enum_fmt+0xe24/0x1190 [videodev]
[  332.078346]  [<ffffffffc065a3a1>] __video_do_ioctl+0x291/0x310 [videodev]
[  332.078351]  [<ffffffff81269f14>] ? mntput+0x24/0x40
[  332.078358]  [<ffffffff81258026>] ? path_openat+0x376/0x15b0
[  332.078384]  [<ffffffffc0659e60>] video_usercopy+0x320/0x5b0 [videodev]
[  332.078400]  [<ffffffffc065a110>] ? video_ioctl2+0x20/0x20 [videodev]
[  332.078411]  [<ffffffff8125a4a5>] ? do_filp_open+0xa5/0x100
[  332.078430]  [<ffffffffc065a105>] video_ioctl2+0x15/0x20 [videodev]
[  332.078446]  [<ffffffffc06556ac>] v4l2_ioctl+0xdc/0xf0 [videodev]
[  332.078455]  [<ffffffff8125d4a3>] do_vfs_ioctl+0xa3/0x5d0
[  332.078464]  [<ffffffff8125da49>] SyS_ioctl+0x79/0x90
[  332.078476]  [<ffffffff817dd3f2>] entry_SYSCALL_64_fastpath+0x1a/0xa4
[  332.078482] ---[ end trace 84debfce61a27ff0 ]---
[  332.078496] ------------[ cut here ]------------
[  332.078540] WARNING: CPU: 1 PID: 1961 at drivers/media/v4l2-core/v4l2-ioctl.c:1283 v4l_enum_fmt+0xe24/0x1190 [videodev]
[  332.078544] Unknown pixelformat 0x00000000
[  332.078547] Modules linked in: rfcomm ccm fuse arc4 nf_conntrack_netbios_ns nf_conntrack_broadcast ip6t_rpfilter ip6t_REJECT nf_reject_ipv6 xt_conntrack ip_set nfnetlink ebtable_nat ebtable_broute bridge ip6table_security ip6table_raw ip6table_nat nf_conntrack_ipv6 nf_defrag_ipv6 nf_nat_ipv6 ip6table_mangle iptable_security iptable_raw iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack iptable_mangle ebtable_filter ebtables ip6table_filter ip6_tables nvidia(POE) bnep bbswitch(OE) vfat fat snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic snd_hda_intel intel_rapl x86_pkg_temp_thermal snd_hda_codec ath10k_pci coretemp kvm_intel kvm uvcvideo ath10k_core snd_hda_core snd_hwdep videobuf2_vmalloc videobuf2_memops snd_seq videobuf2_v4l2 videobuf2_core mac80211 videodev
[  332.078622]  snd_seq_device media snd_pcm btusb irqbypass hci_uart btrtl crct10dif_pclmul ath snd_timer crc32_pclmul btbcm btqca cfg80211 snd btintel ghash_clmulni_intel bluetooth soundcore i2c_i801 mei_me ideapad_laptop joydev mei sparse_keymap rfkill pinctrl_sunrisepoint shpchp pinctrl_intel intel_lpss_acpi intel_lpss tpm_crb tpm_tis acpi_pad tpm nfsd auth_rpcgss nfs_acl lockd grace sunrpc vboxpci(OE) vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) i915 8021q i2c_algo_bit crc32c_intel garp drm_kms_helper stp llc mrp sdhci_pci sdhci drm r8169 serio_raw mmc_core mii wmi video i2c_hid fjes [last unloaded: nvidia]
[  332.078710] CPU: 1 PID: 1961 Comm: AudioThread Tainted: P        W  OE   4.6.3-300.fc24.x86_64 #1
[  332.078714] Hardware name: LENOVO 80NV/Allsparks 5A, BIOS CDCN35WW 03/29/2016
[  332.078717]  0000000000000286 0000000015ae496a ffff88006cc27bc0 ffffffff813dbcff
[  332.078722]  ffff88006cc27c10 0000000000000000 ffff88006cc27c00 ffffffff810a740b
[  332.078727]  0000050300000246 ffff88006cc27d88 0000000000000000 0000000000000000
[  332.078733] Call Trace:
[  332.078745]  [<ffffffff813dbcff>] dump_stack+0x63/0x84
[  332.078754]  [<ffffffff810a740b>] __warn+0xcb/0xf0
[  332.078763]  [<ffffffff810a748f>] warn_slowpath_fmt+0x5f/0x80
[  332.078777]  [<ffffffffc119186c>] ? uvc_ioctl_enum_fmt+0x9c/0xb0 [uvcvideo]
[  332.078797]  [<ffffffffc06597d4>] v4l_enum_fmt+0xe24/0x1190 [videodev]
[  332.078817]  [<ffffffffc065a3a1>] __video_do_ioctl+0x291/0x310 [videodev]
[  332.078826]  [<ffffffff81269f14>] ? mntput+0x24/0x40
[  332.078834]  [<ffffffff81258026>] ? path_openat+0x376/0x15b0
[  332.078851]  [<ffffffffc0659e60>] video_usercopy+0x320/0x5b0 [videodev]
[  332.078868]  [<ffffffffc065a110>] ? video_ioctl2+0x20/0x20 [videodev]
[  332.078877]  [<ffffffff8125a4a5>] ? do_filp_open+0xa5/0x100
[  332.078895]  [<ffffffffc065a105>] video_ioctl2+0x15/0x20 [videodev]
[  332.078909]  [<ffffffffc06556ac>] v4l2_ioctl+0xdc/0xf0 [videodev]
[  332.078918]  [<ffffffff8125d4a3>] do_vfs_ioctl+0xa3/0x5d0
[  332.078926]  [<ffffffff8125da49>] SyS_ioctl+0x79/0x90
[  332.078934]  [<ffffffff817dd3f2>] entry_SYSCALL_64_fastpath+0x1a/0xa4

有没有办法让网络摄像头在这个系统上工作?

答案1

不是一个解决方案,但也许这对某人有帮助。 Fedora 25 还需要以下内容才能正确编译:

dnf install numactl-devel pesign

videodev2.h 的补丁失败。打开文件 realsense-camera-formats.path,从第 152 行删除到文件末尾,添加以下内容并保存文件:

diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
index a0e87d1..7e00be4 100644
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
629a630,647
> #define V4L2_PIX_FMT_Y8I      v4l2_fourcc('Y', '8', 'I', ' ') /* Greyscale 8-bit L/R interleaved */
> #define V4L2_PIX_FMT_Y12I     v4l2_fourcc('Y', '1', '2', 'I') /* Greyscale 12-bit L/R interleaved */
> #define V4L2_PIX_FMT_Z16      v4l2_fourcc('Z', '1', '6', ' ') /* Depth data 16-bit */
> #define V4L2_PIX_FMT_Y8       v4l2_fourcc('Y', '8', ' ', ' ') /* Greyscale 8-bit */
> #define V4L2_PIX_FMT_Y10      v4l2_fourcc('Y', '1', '0', ' ') /* Greyscale 10-bit */
> #define V4L2_PIX_FMT_Y12      v4l2_fourcc('Y', '1', '2', ' ') /* Greyscale 12-bit */
> #define V4L2_PIX_FMT_Y16      v4l2_fourcc('Y', '1', '6', ' ') /* Greyscale 16-bit */
> #define V4L2_PIX_FMT_RAW8     v4l2_fourcc('R', 'A', 'W', '8') /* Raw data 8-bit */
> #define V4L2_PIX_FMT_RW16     v4l2_fourcc('R', 'W', '1', '6') /* Raw data 16-bit */
> #define V4L2_PIX_FMT_INVZ     v4l2_fourcc('I', 'N', 'V', 'Z') /* 16 Depth */
> #define V4L2_PIX_FMT_INZI     v4l2_fourcc('I', 'N', 'Z', 'I') /* 24 Depth/IR 16:8 */
> #define V4L2_PIX_FMT_INVR     v4l2_fourcc('I', 'N', 'V', 'R') /* 16 Depth */
> #define V4L2_PIX_FMT_INRI     v4l2_fourcc('I', 'N', 'R', 'I') /* 24 Depth/IR 16:8 */
> #define V4L2_PIX_FMT_INVI     v4l2_fourcc('I', 'N', 'V', 'I') /* 8 IR */
> #define V4L2_PIX_FMT_RELI     v4l2_fourcc('R', 'E', 'L', 'I') /* 8 IR alternating on off illumination */
> 
> 
>

现在转到 librealsense 文件夹并运行scripts/patch-uvcvideo-fc23.sh(不要在脚本文件夹中运行脚本,转到上一个目录)。

您不需要以 root 身份运行该脚本,它将根据需要使用 sudo(您的用户将需要使用 sudo)。现在应该可以编译了。奶酪对我来说仍然显示为绿色,但 xawtv 可以工作。

相关内容