日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

linux usb攝像頭設備信息查看方式

瀏覽:273日期:2023-05-12 10:25:36
目錄
  • linux usb攝像頭設備信息查看
  • linux usb攝像頭索引的獲取
    • 原理與實現
  • 總結

    linux usb攝像頭設備信息查看

    linux下usb攝像頭操作,離不開v4l2框架

    V4L2是Video for linux2的簡稱,為linux中關于視頻設備的內核驅動。

    在Linux中,視頻設備是設備文件,可以像訪問普通文件一樣對其進行讀寫,攝像頭在/dev/video0下。

    查看linux 攝像頭設備,如果存在有效的攝像頭設備,則可以在dev目錄下查看

    eric@eric-PC:/$ ls dev/video* -l
    crw-rw----+ 1 root video 81, 0 11月 ?8 13:37 dev/video0
    crw-rw----+ 1 root video 81, 1 11月 ?8 13:37 dev/video1

    也可以查看啟動信息,是否存在有效usb攝像頭設備

    eric@eric-PC:/$ dmesg | grep video
    [ 1849.908486] videodev: Linux video capture interface: v2.00
    [ 1850.022954] uvcvideo: Found UVC 1.00 device hm1091_techfront (0408:1020)
    [ 1850.061899] uvcvideo 1-1:1.0: Entity type for entity Extension 4 was not initialized!
    [ 1850.061903] uvcvideo 1-1:1.0: Entity type for entity Extension 3 was not initialized!
    [ 1850.061905] uvcvideo 1-1:1.0: Entity type for entity Processing 2 was not initialized!
    [ 1850.061907] uvcvideo 1-1:1.0: Entity type for entity Camera 1 was not initialized!
    [ 1850.062579] usbcore: registered new interface driver uvcvideo

    v4l2-ctl命令查看video設備參數信息,如果提示如下未找到v4l2-ctl命令,則需要安裝v4l-utils

    eric@eric-PC:/dev$ v4l2-ctl -d ?/dev/video0 --all
    bash: v4l2-ctl:未找到命令 ?
    eric@eric-PC:/dev$ sudo apt-get install v4l-utils
    eric@eric-PC:/$ v4l2-ctl -d ?/dev/video0 --all
    Driver Info:
    ? ? ? ? Driver name ? ? ?: uvcvideo
    ? ? ? ? Card type ? ? ? ?: hm1091_techfront: hm1091_techfr
    ? ? ? ? Bus info ? ? ? ? : usb-0000:02:04.0-1
    ? ? ? ? Driver version ? : 5.4.50
    ? ? ? ? Capabilities ? ? : 0x84a00001
    ? ? ? ? ? ? ? ? Video Capture
    ? ? ? ? ? ? ? ? Metadata Capture
    ? ? ? ? ? ? ? ? Streaming
    ? ? ? ? ? ? ? ? Extended Pix Format
    ? ? ? ? ? ? ? ? Device Capabilities
    ? ? ? ? Device Caps ? ? ?: 0x04200001
    ? ? ? ? ? ? ? ? Video Capture
    ? ? ? ? ? ? ? ? Streaming
    ? ? ? ? ? ? ? ? Extended Pix Format
    Priority: 2
    Video input : 0 (Camera 1: ok)
    Format Video Capture:
    ? ? ? ? Width/Height ? ? ?: 1280/720
    ? ? ? ? Pixel Format ? ? ?: "MJPG" (Motion-JPEG)
    ? ? ? ? Field ? ? ? ? ? ? : None
    ? ? ? ? Bytes per Line ? ?: 0
    ? ? ? ? Size Image ? ? ? ?: 1843200
    ? ? ? ? Colorspace ? ? ? ?: sRGB
    ? ? ? ? Transfer Function : Default (maps to sRGB)
    ? ? ? ? YCbCr/HSV Encoding: Default (maps to ITU-R 601)
    ? ? ? ? Quantization ? ? ?: Default (maps to Full Range)
    ? ? ? ? Flags ? ? ? ? ? ? :?
    Crop Capability Video Capture:
    ? ? ? ? Bounds ? ? ?: Left 0, Top 0, Width 1280, Height 720
    ? ? ? ? Default ? ? : Left 0, Top 0, Width 1280, Height 720
    ? ? ? ? Pixel Aspect: 1/1
    Selection: crop_default, Left 0, Top 0, Width 1280, Height 720, Flags:?
    Selection: crop_bounds, Left 0, Top 0, Width 1280, Height 720, Flags:?
    Streaming Parameters Video Capture:
    ? ? ? ? Capabilities ? ? : timeperframe
    ? ? ? ? Frames per second: 30.000 (30/1)
    ? ? ? ? Read buffers ? ? : 0
    ? ? ? ? ? ? ? ? ? ? ?brightness 0x00980900 (int) ? ?: min=-64 max=64 step=1 default=0 value=0
    ? ? ? ? ? ? ? ? ? ? ? ?contrast 0x00980901 (int) ? ?: min=0 max=95 step=1 default=0 value=0
    ? ? ? ? ? ? ? ? ? ? ?saturation 0x00980902 (int) ? ?: min=0 max=100 step=1 default=64 value=64
    ? ? ? ? ? ? ? ? ? ? ? ? ? ? hue 0x00980903 (int) ? ?: min=-2000 max=2000 step=1 default=0 value=0
    ?white_balance_temperature_auto 0x0098090c (bool) ? : default=1 value=1
    ? ? ? ? ? ? ? ? ? ? ? ? ? gamma 0x00980910 (int) ? ?: min=100 max=300 step=1 default=100 value=100
    ? ? ? ? ? ?power_line_frequency 0x00980918 (menu) ? : min=0 max=2 default=1 value=1
    ? ? ? white_balance_temperature 0x0098091a (int) ? ?: min=2800 max=6500 step=1 default=4600 value=4600 flags=inactive
    ? ? ? ? ? ? ? ? ? ? ? sharpness 0x0098091b (int) ? ?: min=0 max=7 step=1 default=2 value=2
    ? ? ? ? ?backlight_compensation 0x0098091c (int) ? ?: min=0 max=1 step=1 default=1 value=1
    ? ? ? ? ? ? ? ? ? exposure_auto 0x009a0901 (menu) ? : min=0 max=3 default=3 value=3
    ? ? ? ? ? ? ? exposure_absolute 0x009a0902 (int) ? ?: min=10 max=2047 step=1 default=384 value=384 flags=inactive
    ? ? ? ? ?exposure_auto_priority 0x009a0903 (bool) ? : default=0 value=1

    有以上信息可以看出,設備支持分辨率1280×720,支持MJPEG格式。

    linux usb攝像頭索引的獲取

    一般情況下,筆記本自帶的攝像頭的索引號為0,而通過USB插入的攝像頭一般為1(只有兩個攝像頭的情況下)。

    但是,當筆記本插著USB攝像頭開機時,有可能USB的索引變為0,如果還是使用原來的索引,便會產生錯誤或者結果誤差。為此,我寫了個程序自動獲取USB攝像頭的索引。

    原理與實現

    在Linux系統下,所有設備的均被當作文件的形式進行管理和交互(不是很懂),而攝像頭對應的文件在/sys/class/video4linux/下,而每個攝像頭均有name文件記錄攝像頭的名字。

    因此,可以根據該文件得到攝像頭的名稱,而攝像頭所在的文件夾(如video0)可以得到索引。

    def get_usb_camera_index():
    ? ? # 獲取USB攝像頭的索引
    ? ? camera_path = Path("/sys/class/video4linux/")
    ? ? camera_list = list(camera_path.glob("video*"))
    ? ? camera_list.sort()
    ? ? index = 0
    ? ? for i in range(len(camera_list)):
    ? ? ? ? camera = camera_list[i]
    ? ? ? ? name_file = camera.joinpath("name")
    ? ? ? ? with open(name_file, "r") as f:
    ? ? ? ? ? ? info = f.readline()
    ? ? ? ? ? ? if "USB" in info:
    ? ? ? ? ? ? ? ? index = i
    ? ? ? ? ? ? ? ? break
    ? ? return index

    總結

    以上為個人經驗,希望能給大家一個參考,也希望大家多多支持。

    標簽: Linux
    日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
    欧美在线亚洲| 久久久免费人体| 美腿丝袜亚洲一区| 国产亚洲一区二区三区啪| 日本一区二区中文字幕| 日韩成人午夜精品| 国产精品久久久久久妇女| 麻豆久久一区| 亚洲不卡系列| 视频一区二区中文字幕| 日韩精品视频一区二区三区| 国产欧美精品久久| 国产一区二区三区不卡视频网站 | 国产精品日本一区二区三区在线| 日韩欧美中文字幕在线视频| 欧美一级一区| 国产a亚洲精品| 不卡一二三区| 国产亚洲亚洲| 国产美女亚洲精品7777| 大香伊人久久精品一区二区| 久久久久久免费视频| 麻豆9191精品国产| 国产精品传媒麻豆hd| 国产精品久久久久av电视剧| 爽好多水快深点欧美视频| 国产麻豆精品久久| 久久高清精品| 日本亚洲最大的色成网站www| 麻豆成人av在线| 精品国产免费人成网站| 国产韩日影视精品| 91欧美日韩在线| 久久久久免费av| 日韩欧美四区| 久久视频精品| 青草国产精品| 视频一区中文| 国产精品99久久免费| 亚洲午夜黄色| 国产乱码精品一区二区亚洲| 亚洲v在线看| 国产日韩三级| 国产视频久久| 国产成人77亚洲精品www| 尤物tv在线精品| 久久av电影| 爽爽淫人综合网网站| 国产a亚洲精品| 亚洲人亚洲人色久| 欧美gv在线| 国产精品丝袜在线播放| 久久性天堂网| 亚洲天堂1区| 欧美激情亚洲| 亚洲一区二区三区中文字幕在线观看| av资源中文在线| 欧美日韩1区2区3区| 宅男噜噜噜66国产日韩在线观看| 精品在线网站观看| 亚洲精品123区| 激情久久99| 97se亚洲| 亚洲专区视频| 女人av一区| 岛国av在线播放| 牛牛精品成人免费视频| 日韩精品一区二区三区av| 伊人久久亚洲影院| sm捆绑调教国产免费网站在线观看| 日本欧美在线| 亚洲精品麻豆| 鲁大师影院一区二区三区| 99视频精品全国免费| 樱桃视频成人在线观看| 亚洲精品日韩久久| 亚洲欧洲另类| 黑丝美女一区二区| 免费污视频在线一区| 精品亚洲二区| 国产黄色精品| 国产精品视频一区二区三区四蜜臂| 深夜福利一区| 久久午夜视频| 人人精品人人爱| 免费精品视频| 日韩在线播放一区二区| 欧美成人久久| 久久在线电影| 欧美日一区二区| а√在线中文在线新版| 精品三级av| 国产精品99久久免费| 国产乱人伦精品一区| 欧美日韩99| 国产精品v一区二区三区| 国产激情欧美| 久久一区欧美| 欧美久久天堂| 久久国产免费| 狠狠干综合网| 视频精品一区二区| 一区二区三区四区在线观看国产日韩| 免费美女久久99| 天堂久久av| 夜夜嗨一区二区三区| 在线 亚洲欧美在线综合一区| 国产精品免费看| 亚洲一区二区三区久久久| 亚洲一级大片| 欧美日韩18| 精品一区二区三区中文字幕视频| 国产精品1区| 国产在线观看www| 久久久久久久久99精品大| 偷拍欧美精品| 中文字幕一区二区精品区| 日本视频一区二区| 精品资源在线| 99久久精品费精品国产| 亚洲精华国产欧美| 亚洲tv在线| 久久中文字幕一区二区| 日韩在线观看| 三级亚洲高清视频| 国产亚洲欧美日韩精品一区二区三区| 国产精品久久久久久久免费软件| 国产精品毛片久久| 香蕉久久精品| 亚洲香蕉视频| 精品国产亚洲一区二区三区在线| 国产探花在线精品一区二区| 美女视频黄久久| 激情欧美国产欧美| 日韩国产成人精品| 欧美日韩黄网站| 国产成人免费| 亚洲在线成人| 青青草伊人久久| 日韩伦理一区| 亚洲综合图色| 成人黄色av| 一区二区电影在线观看| 麻豆91在线播放| 悠悠资源网久久精品| 国产精区一区二区| 亚洲午夜黄色| 国产伦理久久久久久妇女| 国产v综合v| 欧美另类中文字幕| 国产66精品| 日本欧洲一区二区| 91青青国产在线观看精品| 首页亚洲欧美制服丝腿| 麻豆91精品视频| 鲁大师成人一区二区三区| 精品久久久亚洲| 丝袜美腿亚洲一区| 国产成人免费| 日韩在线黄色| 香蕉国产精品| 精品亚洲a∨| 日韩三区四区| 欧美69视频| 高清不卡一区| 丝袜美腿亚洲色图| 三级在线看中文字幕完整版| 日韩精品视频在线看| 欧美午夜精彩| 麻豆国产欧美一区二区三区 | 中文精品在线| 精品久久中文| 91精品视频一区二区| 午夜国产精品视频| 精品久久97| 久久精品凹凸全集| 伊人久久成人| 卡一精品卡二卡三网站乱码| 伊人久久一区| 亚洲高清影视| 亚洲91视频| 91亚洲国产成人久久精品| 欧美日韩伊人| 亚洲免费毛片| 性一交一乱一区二区洋洋av| 欧美成a人免费观看久久| 久久中文字幕一区二区| 日韩一区免费| 另类国产ts人妖高潮视频| 99免费精品| 亚洲播播91| 91日韩欧美| 欧美日韩亚洲一区在线观看| 美日韩精品视频| 亚洲少妇在线| 99在线|亚洲一区二区| 欧美福利专区| 蜜桃视频欧美| 99热精品久久| 欧美午夜精彩|