UVC/UAC - 模块场景搭建
UVC(USB Video Class)全称USB视频类,其定义适用于所有用于USB操纵视频和相关功能的复合设备中的所有设备或功能。v861平台UVC版本为1.1。
UAC (USB Audio Class)全称USB音频类,是一种通过USB连接传输音频数据的标准协议。它允许音频设备(如耳机、麦克风、音频接口、扬声器等)与计算机或其他支持USB的设备进行通信。USB Audio Class定义了音频设备与计算机或其他USB主机之间的数据交换方式,从而使音频设备能够在无需专用音频接口卡的情况下,直接通过USB接口与计算机连接。v861平台UAC版本为1.0。
UVC/UAC 支持功能:
-
支持MJPEG、H264、YUY2、NV12格式
-
支持ISOC/BULK传输模式
本文将展示如何将 v861 配置成为 USB 摄像头,通过 MIPI 摄像头输入图像,MIC 输入音频,通过 UVC/UAC 将音视频数据传输到 PC 端相机软件。 将 v861 作为一个 USB 摄像头使用。
模块配置说明
SDK 提供快速配置 quick_config 方式来配置 UVC 模块,也可以手动配置模块功能。下面分别介绍快速配置和手动配置的方法。
快速配置
在v861/目录下运行quick_config
quick_config

可见 enable_uvc_and_demo 选项,输入序号并 回车。然后显示是否同意执行配置,输入 Y 回车
接下来 SDK 会自动配置该功能,结束后编译并打包固件。
make -j32
pack
打包可能会失败,出现如下提示

解决方法: 执行 auto_update_partition,一路选择默认配置,会自动更新分区表并打包固件
auto_update_partition

编译打包流程结束后可以在 platform/allwinner/eyesee-mpp/middleware/sun252iw1/sample/bin 找到应用程序,复制到 SD 卡插入开发板。
手动配置
-
内核配置
在v861/目录下运行m kernel_menuconfig
m kernel_menuconfig