小弟最近在做本科的畢業設計,是一個s3c3440的usb攝像頭影像采集,開發板用的揚創utu2440.提供的linux內核2.6.24,已經集成了對zc301的驅動,所以在dev下已經有一個video0,插上攝像頭多了一個video1.
這個是攝像頭插上后超級終端的提示
*********************************************************************************
usb 1-1: new full speed USB device using s3c2410-ohci and address 11
usb 1-1: configuration #1 chosen from 1 choice
drivers/media/video/gspca/gspca_core.c: USB SPCA5XX camera found.(ZC3XX)
經servfox測驗:servfox -d /dev/video1 -g -s 640x480 -w 7070 可以獲得影像
但是我在獲取影像程式中設定的打開設備是/dev/video0,然后后獲取的資訊如下
//查詢驅動的功能
------------VIDIOC_QUERYCAP-----------
Capability Informations:
driver: vivi
card: vivi
bus_info:
version: 00000400
capabilities: 05000001
//獲取當前設備支持的視頻格式
--------VIDIOC_ENUM_FMT---------
get the format what the device support
{ pixelformat = ''YUYV'', description = ''4:2:2, packed, YUYV'' }
//設定視頻設備資料格式
------------VIDIOC_S_FMT---------------
Stream Format Informations:
type: 1
width: 320
height: 240
pixelformat: YUYV
field: 4
bytesperline: 640
sizeimage: 153600
colorspace: 0
priv: 0
raw_date: @
問題出現在我通過這樣得到影像
1.直接獲取了yuyv格式的影像,然后再YUYVviewer里面查看圖片發現圖片是一幅色條

2.獲取YUYV影像,然后將其轉成RGB24,再用libjpeg壓縮得到影像,結果還是色條

我感覺是攝像頭根本沒有獲取到影像,上面的影像貌似是一個默認影像,然后我把程式中的打開設備改成/dev/video1,但是設備能打開,到了獲取Capability的時候就失敗了,所以好像也不是這個問題。
到目前我這個本科學渣已經搞不懂了,請高人賜教!!
uj5u.com熱心網友回復:
跳過前N個frame試試,N>=5uj5u.com熱心網友回復:
video0是虛擬攝像頭,跟你的攝像頭沒關系,你的攝像頭的video1uj5u.com熱心網友回復:
你可以拔掉攝像頭,lsusb, 再插上,lsusb 對照下結果,確定下設備檔案名轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/122477.html
標籤:應用程序開發區
上一篇:菜鳥請教
