荔枝派Zero(全志V3S)驱动开发之USB摄像头 1

简介: 荔枝派Zero(全志V3S)驱动开发之USB摄像头

前言

上一篇博客实现了在ubuntu打开usb摄像头,也确认了 usb 摄像头支持 UVC,这节我们将 usb 驱动移植到荔枝派开发板上,并实现拍照的功能以及做 mjpeg-streamer 视频流服务器测试。


一、内核配置 UVC

1、进入 linux 源码目录,执行

make menuconfig

2、Device Drivers -> USB support 按照下图进行配置

输出识别的每个usb设备的基本信息,比如idVendor、idProduct、制造商、产品、和序列号等

3、Device Drivers -> Multimedia support,按照下图进行配置

4、Device Drivers --> Multimedia support --> Media USB Adapters

二、编译内核并烧录到 SD 卡

1、编译内核

make -j16
make  -j16 modules #编译模块
make -j16 modules_install INSTALL_MOD_PATH=out #安装模块
make dtbs #编译设备树

2、烧录到 SD 卡

把 zImage, sun8i-v3s-licheepi-zero-dock.dtb 拷贝到 sd 卡的 kernel 分区

find ./ -name zImage
cp ./arch/arm/boot/zImage /media/Gnep/KERNEL/
find ./ -name  sun8i-v3s-licheepi-zero-dock.dtb
cp ./arch/arm/boot/dts/sun8i-v3s-licheepi-zero-dock.dtb /media/Gnep/KERNEL/

三、上电测试

1、插上 usb 摄像头,查看打印信息

2、lsusb 可以看到摄像头 PID:VID,在 dev 下可见 video0 设备

3、fswebcam 抓取摄像头图片,抓取一帧图片

fswebcam -d /dev/video0 --no-banner -r 320x240 capture0.jpg
fswebcam -d /dev/video0 --no-banner -r 320x240 capture1.jpg

4、我手头没有 LCD 屏幕,先把 SD 拔下来在 ubuntu 上看一下图片效果

一张拍的是门,一张是电脑显示器,效果还不错。

目录
相关文章
|
Linux C语言 Windows
荔枝派Zero(全志V3S)一键镜像烧录(windows和linux下)
搞到了一块荔枝派Zero,其CPU为全志V3S, ARM Cortex-A7, 最高1.2GHz,不得不说这小东西能达到这么高的主频真是让我大为震撼,废话不多说,先让其跑起来,证明板子是好的
1122 0
|
Linux C语言 内存技术
Linux下使用alsa-lib库完成音频开发: 实现放音和录音(从声卡获取PCM数据保存、向声卡写PCM数据输出)
Linux下使用alsa-lib库完成音频开发: 实现放音和录音(从声卡获取PCM数据保存、向声卡写PCM数据输出)
2020 0
|
Ubuntu Linux
荔枝派Zero(全志V3S)烧录Uboot、Kernel及rootfs到SD卡并运行在板子上
通过前面 Uboot编译及配置 我们获得了 u-boot-sunxi-with-spl.bin 通过前面 Kernel编译 我们获得了zImage镜像文件及sun8i-v3s-licheepi-zero-dock.dtb设备树文件
1088 1
|
10月前
|
Web App开发 Linux 数据安全/隐私保护
Apple Safari 18.4 - macOS 专属浏览器 (独立安装包下载)
Apple Safari 18.4 - macOS 专属浏览器 (独立安装包下载)
504 3
Apple Safari 18.4 - macOS 专属浏览器 (独立安装包下载)
|
编解码 Linux 计算机视觉
python 调用ffmpeg使用usb摄像头录制视频,输出h264格式,自动获取摄像头的最佳帧率和最大画面尺寸
使用 Python 调用 FFmpeg 进行 USB 摄像头视频录制,需先确保安装 FFmpeg 和 Python 的 `subprocess` 模块。代码示例展示了如何自动获取摄像头的最佳帧率和最大分辨率,然后录制视频。首先通过 FFmpeg 列出摄像头格式获取信息,解析出帧率和分辨率,选择最优值。之后调用 FFmpeg 命令录制视频,设置帧率、分辨率等参数。注意 `/dev/video0` 是 Linux 的摄像头设备路径,Windows 系统需相应调整。代码中未直接实现自动获取最佳参数,通常需要借助其他库如 OpenCV。
|
算法 网络协议 物联网
|
存储 编解码 Ubuntu
【QT】linux下alsa库的移植和QT中音视频的处理&笔记
【QT】linux下alsa库的移植和QT中音视频的处理&笔记
|
安全 生物认证 数据安全/隐私保护
多因素认证(MFA)
【8月更文挑战第20天】
2986 1
|
人工智能 自然语言处理 程序员
AI写代码的体验:与通用灵码的使用感受分享
近两年随着人工智能的飞速发展,它正在迅速改变我们的生活和工作方式,作为程序员,编写代码是我日常工作的一部分,我觉得生成式AI对日常开发工作有很大的帮助,其中之一就是通过AI编写想要的代码。尤其是当我了解到人工智能技术已经发展到可以辅助程序员写代码的程度时,我对此感到非常开心,因为可以帮助我提高开发效率。所以在去年我就尝试使用代码生成的AI工具,而最近我看到阿里云的通义灵码又做了重大更新,所以我决定尝试使用通义灵码来编写代码,并在这个过程中获得一些有趣的体验。那么在本文中,就来简单分享一下使用通义灵码进行代码编写的体验和感受。
953 10
AI写代码的体验:与通用灵码的使用感受分享
|
存储 安全 C语言
C语言程序设计——格式输入函数scanf()
C语言程序设计——格式输入函数scanf()