资源简介
最直接的uvc设备图像获取代码,没有显示,资源占用低,速度快,另外还有UVC Extension unit的通道数据获取,非常稳定好用
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
using namespace cv;
#define CAMERA “/dev/video0“
#define CAPTURE_FILE “frame.yuv“
#define BUFFER_COUNT 20
#define CY_FX_UVC_XU_CAMERA_RW 0x01
#define CY_FX_UVC_XU_HALF_RW 0x02
#define CY_FX_UVC_XU_IMU_DATA_W 0x03
#define CY_FX_UVC_XU_IMU_DATA_R 0x04
#define CY_FX_UVC_XU_FILE_DATA_WR 0x05
// set to 1 for a bit of debug output
#if 1
#define __print printf
#define dbg printf
#else
#define dbg(fmt ...)
#endif
static __u8 value[2000] = {0};
int v4l2_dev=0;
struct uvc_xu_control_query xu_query =
{
.unit = 3 // has to be unit 3
.selector = 1
.query = UVC_SET_CUR
.size = 6
.data = value
};
/**
* @brief error handle.
* @param[out] NULL.
* @return NULL.
*/
void error_handle()
{
int res = errno;
const char *err;
switch (res)
{
case ENOENT:
err = “Extension unit or control not found“;
break;
case ENOBUFS:
err = “Buffer size does not match control size“;
break;
case EINVAL:
err = “Invalid request code“;
break;
case EBADRQC:
err = “Request not supported by control“;
break;
default:
err = strerror(res);
break;
}
dbg(“!!!!!!!!!!!!!!!!!!!! %s. (System code: %d) \n\r“ err res);
return;
}
unsigned int g_index = 0;
unsigned int lb_index = 0;
int imudata;
/**
* @brief read hardware version info.
* @param[out] NULL.
* @return NULL.
*/
short write_imu_data_req(int fd)
{
unsigned short regval = 0;
static int length = 1;
unsigned int g_index = 0;
static int bri = 1;
//g_index = 0;
xu_query.selector = CY_FX_UVC_XU_IMU_DATA_W;
xu_query.query = UVC_SET_CUR;
xu_query.size = 5;
xu_query.data[0] = 0x5a;
xu_query.data[1] = (g_index>>24)&0x000000ff;
xu_query.data[2] = (g_index>>16)&0x000000ff;
xu_query.data[3] = (g_index>>8)&0x000000ff;
xu_query.data[4] = g_index&0x000000ff;
regval = ioctl(fd UVCIOC_CTRL_QUERY &xu_query);
if (regval)
{
error_handle();
return regval;
}
el
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-09-27 15:03 UVC_Extension\
文件 10391 2018-09-21 15:17 UVC_Extension\CMakeCache.txt
目录 0 2018-09-27 15:03 UVC_Extension\CMakeFiles\
目录 0 2018-05-25 11:23 UVC_Extension\CMakeFiles\3.5.1\
文件 2002 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CMakeCCompiler.cmake
文件 4556 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CMakeCXXCompiler.cmake
文件 8640 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CMakeDetermineCompilerABI_C.bin
文件 8656 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CMakeDetermineCompilerABI_CXX.bin
文件 402 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CMakeSystem.cmake
目录 0 2018-05-25 11:23 UVC_Extension\CMakeFiles\3.5.1\CompilerIdC\
文件 16423 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CompilerIdC\CMakeCCompilerId.c
文件 8800 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CompilerIdC\a.out
目录 0 2018-05-25 11:23 UVC_Extension\CMakeFiles\3.5.1\CompilerIdCXX\
文件 16406 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CompilerIdCXX\CMakeCXXCompilerId.cpp
文件 8808 2018-04-26 18:20 UVC_Extension\CMakeFiles\3.5.1\CompilerIdCXX\a.out
文件 637 2018-09-21 15:17 UVC_Extension\CMakeFiles\CMakeDirectoryInformation.cmake
文件 41093 2018-04-26 18:20 UVC_Extension\CMakeFiles\CMakeOutput.log
目录 0 2018-09-27 16:10 UVC_Extension\CMakeFiles\CMakeTmp\
文件 2120 2018-09-21 15:17 UVC_Extension\CMakeFiles\Makefile.cmake
文件 3070 2018-09-21 15:17 UVC_Extension\CMakeFiles\Makefile2
文件 171 2018-09-21 15:17 UVC_Extension\CMakeFiles\TargetDirectories.txt
文件 85 2018-09-21 15:17 UVC_Extension\CMakeFiles\cmake.check_cache
文件 12696 2018-04-26 18:20 UVC_Extension\CMakeFiles\feature_tests.bin
文件 688 2018-04-26 18:20 UVC_Extension\CMakeFiles\feature_tests.c
文件 10011 2018-04-26 18:20 UVC_Extension\CMakeFiles\feature_tests.cxx
目录 0 2018-09-27 15:03 UVC_Extension\CMakeFiles\play.dir\
文件 31825 2018-09-27 15:03 UVC_Extension\CMakeFiles\play.dir\CXX.includecache
文件 630 2018-09-21 15:17 UVC_Extension\CMakeFiles\play.dir\DependInfo.cmake
文件 5021 2018-09-21 15:17 UVC_Extension\CMakeFiles\play.dir\build.make
文件 276424 2018-09-27 15:03 UVC_Extension\CMakeFiles\play.dir\capture.cpp.o
文件 233 2018-09-21 15:17 UVC_Extension\CMakeFiles\play.dir\cmake_clean.cmake
............此处省略51个文件信息
相关资源
- 由国家自然科学基金委员会U1232105和中
- Samsung三星R439-DS系列网卡驱动程序 v
- 易语言迅雷补丁源码
- unity4.0官方正式版
- 基于pytorch的UNet_demo实现及训练自己的
- 硬盘、固态硬盘实用程序HDTunePro
- 周立功PCI CAN卡LINUX驱动ubuntu16.04内核
- 建立在Sun平台上的高性能计算基础设
- Cisco Unified Operations Manager白皮书
- 构造SUN分数瞬时子
- Rξ和Unit度量中的Abelian-Higgs模型的重
- Sun采用托管服务技能显著降低IT成本
- 摄影器材巨人柯达与Sun的合作
- juniper 防火墙巡检方案模板
- Axure RP Extension for Chrome0.6.2亲测可用
- Sun服务器在柳州电力局的成功应用
- Sun 系统为NewEnergy 网格基础架构带来活
- Sun 网格计算技术在美国爱达荷国家实
- Sun服务器与系统在新浪网成功应用案
- 图行天下LBS系统在Sun平台上的成功应
- 东大金智身份认证系统在Sun平台上的
- 根鑫证券集中交易系统在Sun平台上的
- 基于Sun技术的系统整合显著改善了客
- 基于Sun技术创建世界级游戏的安全架
- 建立在Sun皓龙服务器上的为石GIS解决
- Sun 为东京工业大学提供100 TeraFLOPS 超
- 建立在Sun平台上的格林威治大学校园
- Sun助英国Virgin公司完成数据移植
- 无法进入桌面ubuntu18.04
- Polarization Optics in Telecommunication
评论
共有 条评论