linux學習之 V4L2的攝像頭應用

看到一篇比較好的關於V4L2的文章

來自:http://blog.csdn.net/eastmoon502136/article/details/8190262

   對於v4l2,上次是在調試收音機驅動的時候用過,其他也就只是用i2c配置一些寄存器就可以了。那時只是粗粗的瞭解了,把收音機當作v4l2的設備後會在/dev目錄下生成一個radio的節點。然後就可以操作了。後來就沒怎麼接觸了。這周,需要調試下usb的攝像頭。因爲有問題,所以就要跟進,於是也就要開始學習下linux的v4l2了。看到一篇很不錯的文章,下面參考這篇文章,加上自己的一些見解,做一些總結把。

       Video for Linuxtwo(Video4Linux2)簡稱V4L2,是V4L的改進版。V4L2是linux操作系統下用於採集圖片、視頻和音頻數據的API接口,配合適當的視頻採集設備和相應的驅動程序,可以實現圖片、視頻、音頻等的採集。在遠程會議、可視電話、視頻監控系統和嵌入式多媒體終端中都有廣泛的應用。

在Linux下,所有外設都被看成一種特殊的文件,成爲“設備文件”,可以象訪問普通文件一樣對其進行讀寫。一般來說,採用V4L2驅動的攝像頭設備文件是/dev/video0。V4L2支持兩種方式來採集圖像:內存映射方式(mmap)和直接讀取方式(read)。V4L2在include/linux/videodev.h文件中定義了一些重要的數據結構,在採集圖像的過程中,就是通過對這些數據的操作來獲得最終的圖像數據。Linux系統V4L2的能力可在Linux內核編譯階段配置,默認情況下都有此開發接口。

       而攝像頭所用的主要是capature了,視頻的捕捉,具體linux的調用可以參考下圖。


具體的學習方法可以參考上面的文章




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章