簡體   English   中英

如何使用 v4l2 linux 界面從網絡攝像頭獲取視頻?

[英]How to get the video from webcam using v4l2 linux interface?

我正在嘗試從 v4l2 API 運行示例代碼 當我嘗試運行示例代碼時,我在編譯程序本身時遇到了問題。 請檢查錯誤,在編譯步驟中是否需要安裝或標記以傳遞?

ubox:~/capVideoFrame$ gcc v4l2grab.c && ./a.out
/tmp/cc0E2uRM.o: In function `xioctl':
v4l2grab.c:(.text+0x2b): undefined reference to `v4l2_ioctl'
/tmp/cc0E2uRM.o: In function `main':
v4l2grab.c:(.text+0xf3): undefined reference to `v4l2_open'
v4l2grab.c:(.text+0x30f): undefined reference to `v4l2_mmap'
v4l2grab.c:(.text+0x6a2): undefined reference to `v4l2_munmap'
v4l2grab.c:(.text+0x6c4): undefined reference to `v4l2_close'
collect2: error: ld returned 1 exit status

源代碼頭文件:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/time.h>
#include <sys/mman.h>
#include <linux/videodev2.h>
#include "/usr/include/libv4l2.h" // I am using ubuntu, so pointing to this location

要成功編譯,您需要為其添加標志-lv4l1 -lv4l2

gcc v4l2grab.c -lv4l1 -lv4l2

如果您之前沒有安裝 libv4l2,則需要先安裝它:

sudo apt-get install -y libv4l-dev

順便說一句,上面的鏈接已失效,新鏈接在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM