Android USB OTG 相机:3 步把 UVC 摄像头装进你的 App
Android USB OTG 相机3 步把 UVC 摄像头装进你的 App【免费下载链接】Android-USB-OTG-Camera项目地址: https://gitcode.com/gh_mirrors/an/Android-USB-OTG-Camera想象这样一个场景质检工位上一台 USB 相机通过 OTG 线插在 Android 平板上打开 App 就能实时看料口画面还能随手拍一张、录一段视频留档。这就是Android USB OTG 相机AndroidUSBCamera这个开源库想帮你做的事——它基于 UVCCamera 深度封装把检测、连接、预览、拍照、录像这些繁琐的 USB 设备流程压缩成几个简单的 API让任何免驱 UVC 摄像头都能在 Android 5.010.0 设备上直接出画面。无论你是想做工业检测、户外记录还是只是想折腾一个外接摄像头的小工具这个库都能帮你省下大量对接 USB 底层协议的时间。USB OTG 相机 App 完整功能演示拍照、录像、设备识别图 1USB OTG 相机 App 的完整功能界面 快速开始3 步接入 USB OTG 相机第 1 步添加 Gradle 依赖AndroidUSBCamera 托管在 JitPack 上只需在根build.gradle的 repositories 中加入 JitPack 仓库再声明一行依赖即可maven { url https://jitpack.io } dependencies { implementation com.github.jiangdongguo:AndroidUSBCamera:2.3.4 }第 2 步初始化相机助手核心入口是单例助手 UVCCameraHelper.java初始化只有三行mCameraHelper UVCCameraHelper.getInstance(); mCameraHelper.setDefaultPreviewSize(1280, 720); mCameraHelper.initUSBMonitor(this, mUVCCameraView, mDevConnectListener);设置好默认预览尺寸并启动 USB 监听后设备一插进来系统就会自动弹出允许应用使用 USB 设备的授权框无需你手写任何设备枚举逻辑。USB OTG 相机自动检测并弹出权限请求图 2USB 设备接入后自动弹出权限请求第 3 步处理设备连接回调OnMyDevConnectListener有四个回调你真正必须处理的是两个Override public void onAttachDev(UsbDevice device) { mCameraHelper.requestPermission(0); // 接入时请求权限 } Override public void onDettachDev(UsbDevice device) { mCameraHelper.closeCamera(); // 拔出时关闭相机 }其余的onConnectDev/onDisConnectDev可以用来更新 UI 状态。完整可运行的写法直接参考示例工程 USBCameraActivity.java——它还演示了生命周期管理onStart里registerUSB()、onStop里unregisterUSB()、onDestroy里release()照抄即可避免内存泄漏。 能力清单接入后还能做什么拍照相机打开状态下一行调用即可抓拍 JPG 并落盘mCameraHelper.capturePicture(picPath, onCaptureListener);录像startPusher配合RecordParams支持录制 MP4还能选择关闭声音、叠加时间水印回调里可实时拿到 H.264 / AAC 编码流用于推流。录像相关的编码器都在 encoder 模块 下RecordParams params new RecordParams(); params.setRecordPath(videoPath); params.setSupportOverlay(true); // 时间水印仅 armv7 / arm64 mCameraHelper.startPusher(params, onEncodeResultListener);切换分辨率先用getSupportedPreviewSizes()拿到设备支持的全部尺寸再实时切换无需重启预览mCameraHelper.updateResolution(width, height);USB OTG 相机分辨率实时切换演示图 3在 480P、720P、1080P 之间一键切换调节画面参数亮度、对比度都可以实时读写接一个 SeekBar 就能做滑杆调节mCameraHelper.setModelValue(UVCCameraHelper.MODE_BRIGHTNESS, progress);USB OTG 相机亮度与对比度实时调节图 4拖动滑杆实时调节亮度与对比度⚠️ 实战建议3 个常见坑预览黑屏 / 有画面但异常多半是帧格式不匹配。部分 USB 摄像头只支持 YUYV初始化前加一行mCameraHelper.setDefaultFrameFormat(UVCCameraHelper.FRAME_FORMAT_YUYV);再initUSBMonitor。Android 10 上预览失败这是 Android Q SDK 的已知问题把targetSdkVersion降到 27 及以下即可规避。权限声明别漏Manifest 中需要WRITE_EXTERNAL_STORAGE保存照片视频和RECORD_AUDIO录制声音首次插入设备时系统会弹授权框拒绝后设备将无法打开。 写在最后记住三句话接入时请求权限、拔出时关相机、销毁时释放资源。剩下的打开 Android Studio接上你的第一台 USB 相机试试吧。【免费下载链接】Android-USB-OTG-Camera项目地址: https://gitcode.com/gh_mirrors/an/Android-USB-OTG-Camera创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

文档管理系统 Papermerge:一键 Docker 部署,30 分钟跑通扫描文档全文搜索

文档管理系统 Papermerge:一键 Docker 部署,30 分钟跑通扫描文档全文搜索

文档管理系统 Papermerge:一键 Docker 部署,30 分钟跑通扫描文档全文搜索 【免费下载链接】papermerge Open Source Document Management System for Digital Archives (Scanned Documents) 项目地址: https://gitcode.com/gh_mirrors/pa/papermerge …

2026/8/23 17:50:43 阅读更多 →
AI对齐监控:为何OpenAI投入20%算力,以及开发者如何应对

AI对齐监控:为何OpenAI投入20%算力,以及开发者如何应对

最近一段时间,AI领域的热点似乎总在“人事变动”和“技术突破”之间反复横跳。先是OpenAI高层震荡的余波未平,紧接着,一个更值得技术圈深思的消息浮出水面:据称,OpenAI将高达20%的算力资源投入到了“对齐监控”这件事上…

2026/8/22 16:41:42 阅读更多 →
强化学习与多智能体辩论:AI科学创意生成新范式

强化学习与多智能体辩论:AI科学创意生成新范式

1. 项目概述:当辩论成为奖励,用强化学习激发科学创意最近在琢磨多智能体系统和科学发现自动化的时候,碰到了一个挺有意思的课题,就是怎么让AI不只是被动地检索和组合信息,而是能主动地、创造性地“想”出新的科学点子。…

2026/8/23 16:44:02 阅读更多 →

最新新闻

化妆品专柜尾货是门好生意,但90%的老板都死在了验货这一关

化妆品专柜尾货是门好生意,但90%的老板都死在了验货这一关

混美妆供应链十来年,见过太多实体店老板和私域团长,一听说哪哪能搞到高端品牌渠道余量料体,眼睛都绿了,恨不得立刻打款锁货。但说实话,尾货这趟水,比你们想象的要浑得多。我车间里几乎每周都有拿尾货来对比…

2026/8/23 22:46:17 阅读更多 →
2026 AI 秒回的魔法:KV Cache 如何让大模型越聊越快?MonkeyCode 免费上手

2026 AI 秒回的魔法:KV Cache 如何让大模型越聊越快?MonkeyCode 免费上手

一次"卡顿"引发的思考 深夜,你正和 AI 助手讨论一个复杂的技术方案,聊到第三轮,对方回复突然变慢了——不是网络问题,也不是模型变笨了,而是它正在"回忆"你们之前聊过的每一句话。你有没有想过&am…

2026/8/23 22:46:17 阅读更多 →
AI 前沿日报:2026年8月22日

AI 前沿日报:2026年8月22日

AI 前沿日报:2026年8月22日NVIDIA AVO编码智能体在ARC-AGI-3获100%满分 神秘模型Ox Alpha登顶SWE-bench 96% OpenAI主动放慢前沿模型研发 Claude发现Rank 30椭圆曲线(前一次突破花了10年) Moderna个性化癌症疫苗III期临床首获阳性结果 AI…

2026/8/23 22:45:16 阅读更多 →
Python import 到底做了什么?从 `sys.modules`、循环导入到插件加载与 5 秒冷启动诊断

Python import 到底做了什么?从 `sys.modules`、循环导入到插件加载与 5 秒冷启动诊断

Python import 到底做了什么?从 sys.modules、循环导入到插件加载与 5 秒冷启动诊断 很多 Python 开发者第一次接触 import 时,会自然地把它理解为一句很简单的话: “把另一个 .py 文件拿过来用。” 这个理解不能说错,但只覆盖了…

2026/8/23 22:45:16 阅读更多 →
科研自动化工作流搭建指南:从文献管理到论文写作的全流程工具链

科研自动化工作流搭建指南:从文献管理到论文写作的全流程工具链

读研期间,无论是文献管理、论文写作、数据处理还是日常效率提升,一套趁手的科研工具组合能显著降低重复劳动,让你更专注于研究本身。很多同学在入门时,面对海量工具往往感到无从下手,或者零散使用,难以形成…

2026/8/23 22:44:15 阅读更多 →
急诊AI决策支持为何越用越没人用?Rambam×梅奥Nature Medicine用DECIDE-AI评估SHAKED多LLM系统:4周采纳率68%跌至30%,班次负荷每增1小时使用概率降28%

急诊AI决策支持为何越用越没人用?Rambam×梅奥Nature Medicine用DECIDE-AI评估SHAKED多LLM系统:4周采纳率68%跌至30%,班次负荷每增1小时使用概率降28%

一、研究背景 急诊科是医院里最紧绷的场所:患者来去匆匆,病情急、决策时间短,医生要在几分钟内完成分诊、检查、会诊、用药等一系列判断。正因如此,急诊被普遍视为人工智能临床决策支持(CDSS)最有价值的落地…

2026/8/23 22:44:15 阅读更多 →

日新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/23 0:00:50 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/23 0:00:50 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/23 0:00:50 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/23 0:00:50 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/23 0:00:50 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/23 0:00:50 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/23 18:47:06 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/23 12:10:44 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/22 3:22:48 阅读更多 →