video4linux 安装,【精品博文】Video4linux 下视频编程的流程
最近一直在忙基金申報,今天終于順利提交了,剩下的就看緣分啦。今天有時間寫寫Video4linux 下視頻編程的流程。
Video4linux(簡稱 V4L),是linux 中關(guān)于視頻設(shè)備的內(nèi)核驅(qū)動。現(xiàn)在已有Video4linux2,還未加入linux 內(nèi)核,使用的時候要自己下載補(bǔ)丁,今天就講講Video4linux 下視頻編程的流程。
Video4linux 支持的主要數(shù)據(jù)結(jié)構(gòu)
video_capability
包含設(shè)備的基本信息,包含的成員:
name[32]; 設(shè)備名稱
type; 是否能capture,彩色還是黑白,是否能裁剪等等。值如 VID_TYPE_CAPTURE 等
channels; 信號源個數(shù)
audios; 音頻設(shè)備數(shù)目
maxwidth; 支持視頻顯示的寬度上限
maxheight; 視頻顯示的高度上限
minwidth;
minheight;
video_picture
設(shè)備采集的圖象的各種屬性,在應(yīng)用程序中使用VIDIOCSPICT ioctl 來改變設(shè)備的此種屬性。包含的成員:
brightness 亮度 0~65535
hue 色調(diào)
colour 顏色(彩色模式)
contrast 對比度
whiteness 白色度(灰度級模式)
depth 捕獲深度(配合顯示緩沖區(qū)的顏色深度)
palette 調(diào)色板信息
video_channel
關(guān)于各個信號源的屬性,每種video4linux 視頻或者音頻設(shè)備可以從一個或者多個信號源捕獲數(shù)據(jù)。調(diào)用的ioctl 接口是VDIOCGCHAN。調(diào)用前必須設(shè)置信號源的各個信道域。包含的成員:
channel 信號源的標(biāo)號
name 信號源名稱
tuners tuners 的數(shù)目
flags tuner 的屬性
type 輸入類型
norm 制式
video_mbuf
利用mmap 進(jìn)行映射的幀的信息。系統(tǒng)調(diào)用syscall 時會從設(shè)備返回下一個可用的影像。而調(diào)用者
首先要設(shè)置獲取圖像的大小和格式。通過調(diào)用ioctl 接口 VDIOCGCHAN 實(shí)現(xiàn)。注意并不是所有的設(shè)備
都支持此種操作:
size 幀大小
frames 最多支持的幀數(shù)
offsets[VIDEO_MAX_FRAME] 每幀相對基址的偏移
編程流程:
1、打開視頻設(shè)備:視頻設(shè)備是設(shè)備文件,可以像訪問普通文件一樣對其進(jìn)行讀寫,在我們
的平臺上,攝像頭設(shè)備是/dev/v4l/video0。
2、讀取設(shè)備信息
3、更改設(shè)備當(dāng)前的設(shè)置(如果有必要)
4.進(jìn)行視頻采集,視頻采集主要有兩種方法:
(1)內(nèi)存映射(本實(shí)驗(yàn)中采用)
(2)直接從設(shè)備讀取
5、對采集的視頻進(jìn)行處理(本實(shí)驗(yàn)中沒有做處理)
6、關(guān)閉視頻設(shè)備。
實(shí)驗(yàn)步驟:
1、首先配置內(nèi)核make menuconfig
(1)進(jìn)入Multimedia devices ---> 選中video for Linux 后;
在video for Linux 選項(xiàng)展開中如下選中V4L information in proc?filesystem
(2)進(jìn)入USB Suppot, 在 ---USB Multimedia devices 中選中 USB OV511 Camera Support
后退出。
2、編譯內(nèi)核make; make zImage;
3、燒錄kernel
4、啟動Linux,之后插入USB 攝像頭設(shè)備,顯示提示信息:
5、編譯視頻采集應(yīng)用程序v4lcap,進(jìn)入 /實(shí)驗(yàn)?zāi)夸?v4lcap; make;
6、掛載nfs 文件系統(tǒng),運(yùn)行剛生成的v4lcap 程序
7、通過參數(shù)調(diào)整視頻輸出的尺寸,
[]#./v4lcap -s 320:240
8、若為中興微zx301 芯片的攝像頭,把spca5xx.o 文件拷貝到開發(fā)板,在開發(fā)板上插入
zx301 芯片的驅(qū)動spca5xx.o,插入usb 攝像頭,然后運(yùn)行v4lcap 應(yīng)用程序。
就寫這么多吧,很久沒來了,謝謝大家一直關(guān)注我。
總結(jié)
以上是生活随笔為你收集整理的video4linux 安装,【精品博文】Video4linux 下视频编程的流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谷歌浏览器有哪些好看的主题_Kibou
- 下一篇: python opencv2_pytho