博客
关于我
31全志r58平台Android4.4.2下打开USB摄像头
阅读量:211 次
发布时间:2019-02-28

本文共 3080 字,大约阅读时间需要 10 分钟。

Android 4.4.2 系统下 USB 摄像头驱动配置与使用说明

在 Android 4.4.2 系统下配置并使用 USB 摄像头可能会遇到一些问题。本文将详细介绍解决方案和相关配置步骤。

一、系统编译与依赖为了确保 USB 摄像头驱动正常工作,需要先编译系统并安装相关依赖项。以下是需要注意的版本信息:

  • Android 系统版本:4.4.2
  • 硬件平台:Softwinner SC5806
  • 相关工具:Linux Kernel 3.4.43(适用于 Softwinner 平台)
  • 二、需要修改的文件在配置过程中,以下文件需要重点关注:

  • W:\r58_android_v4.4\android\device\softwinner\octopus-common\hardware\camera\V4L2CameraDevice2.cpp
  • W:\r58_android_v4.4\android\device\softwinner\octopus-f1\configs\camera.cfg
  • W:\r58_android_v4.4\android\device\softwinner\octopus-f1\configs\media_profiles.xml
  • W:\r58_android_v4.4\android\device\softwinner\octopus-f1\BoardConfig.mk
  • W:\r58_android_v4.4\android\device\softwinner\octopus-f1\init.sun8i.rc
  • W:\r58_android_v4.4\lichee\linux-3.4.config
  • 三、代码修改说明在 V4L2CameraDevice2.cpp 文件中,主要修改了以下部分:

  • 模块初始化与连接设备
  • Mutex::Autolock locker(&mObjectLock);if (isConnected()) {    LOGW("%s: camera device is already connected.", __FUNCTION__);    return NO_ERROR;}// open v4l2 camera deviceint ret = openCameraDev(halInfo);if (ret != OK) {    return ret;}// get sensor type from driverswitch((v4l2_sensor_type)getSensorType()) {case V4L2_SENSOR_TYPE_YUV:    LOGV("the sensor is YUV sensor");    mSensor_Type = V4L2_SENSOR_TYPE_YUV;    break;case V4L2_SENSOR_TYPE_RAW:    LOGV("the sensor is RAW sensor");    mSensor_Type = V4L2_SENSOR_TYPE_RAW;    break;default:    if(mIsUsbCamera) {        LOGV("the sensor is UVC sensor wyb add 2018/10/26 13:58");        mSensor_Type = V4L2_SENSOR_TYPE_YUV;    } else {        LOGE("get the sensor type failed wyb add 2018/10/26 14:59");        goto END_ERROR;    }    break;}halInfo->fast_picture_mode = (int)mSensor_Type;memcpy((void*)&mHalCameraInfo, (void*)halInfo, sizeof(HALCameraInfo));
    1. 图像处理功能
    2. // 主图像裁剪calculateCrop(&mRectCrop, mNewZoom, mMaxZoom, mFrameWidth/2, mFrameHeight/2);// 子图像裁剪(仅在快拍模式下)if (mHalCameraInfo.fast_picture_mode) {    calculateCrop(&mThumbRectCrop, mNewZoom, mMaxZoom, mThumbWidth, mThumbHeight);}

      三、配置文件修改在 camera.cfg 文件中,需要调整以下参数:

    3. exif 信息配置
    4. key_camera_exif_make = MAKE_AllWinnerkey_camera_exif_model = MODEL_f1
      1. 摄像头配置
      2. camera_id = 0camera_facing = 0use_builtin_isp = 0camera_orientation = 90camera_device = /dev/video0

        三、驱动加载与测试在 BoardConfig.mk 文件中,需要加载以下驱动:

        # gpuinsmod /system/vendor/modules/pvrsrvkm.koinsmod /system/vendor/modules/dc_sunxi.ko# csi moduleinsmod /system/vendor/modules/videobuf-core.koinsmod /system/vendor/modules/videobuf-dma-contig.koinsmod /system/vendor/modules/cci.koinsmod /system/vendor/modules/actuator.koinsmod /system/vendor/modules/vfe_os.koinsmod /system/vendor/modules/vfe_subdev.koinsmod /system/vendor/modules/dw9714_act.koinsmod /system/vendor/modules/hi253.koinsmod /system/vendor/modules/ov8858_4lane.koinsmod /system/vendor/modules/vfe_v4l2.ko# usb module / UVCinsmod /system/vendor/modules/videobuf2-core.koinsmod /system/vendor/modules/videobuf2-memops.koinsmod /system/vendor/modules/videobuf2-vmalloc.koinsmod /system/vendor/modules/uvcvideo.ko

        四、开发调试在开发过程中需要注意以下几点:

      3. 确保所有驱动版本与系统版本匹配
      4. 配置文件中参数需与硬件实际情况一致
      5. 可能需要手动测试不同分辨率下的摄像头性能
      6. 注意电源管理配置
      7. 定期检查日志信息,及时解决问题
      8. 通过以上配置和修改,可以在 Android 4.4.2 系统下正常使用 USB 摄像头功能。如有特殊问题,请根据日志信息逐步排查并调整相应配置。

    转载地址:http://ygdp.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现factorial iterative阶乘迭代算法(附完整源码)
    查看>>
    Objective-C实现factorial recursive阶乘递归算法(附完整源码)
    查看>>
    Objective-C实现factorial阶乘算法(附完整源码)
    查看>>
    Objective-C实现Fast Powering算法(附完整源码)
    查看>>
    Objective-C实现fenwick tree芬威克树算法(附完整源码)
    查看>>
    Objective-C实现FenwickTree芬威克树算法(附完整源码)
    查看>>
    Objective-C实现fft2函数功能(附完整源码)
    查看>>
    Objective-C实现FFT算法(附完整源码)
    查看>>
    Objective-C实现fibonacci斐波那契算法(附完整源码)
    查看>>
    Objective-C实现FigurateNumber垛积数算法(附完整源码)
    查看>>
    Objective-C实现first come first served先到先得算法(附完整源码)
    查看>>
    Objective-C实现Gale-Shapley盖尔-沙普利算法(附完整源码)
    查看>>
    Objective-C实现hamiltonianCycle哈密尔顿图算法(附完整源码)
    查看>>
    Objective-C实现hamming code汉明码算法(附完整源码)
    查看>>
    Objective-C实现hamming numbers汉明数算法(附完整源码)
    查看>>
    Objective-C实现hanning 窗(附完整源码)
    查看>>
    Objective-C实现hanoiTower汉诺塔算法(附完整源码)
    查看>>
    Objective-C实现hardy ramanujana定理算法(附完整源码)
    查看>>
    Objective-C实现harmonic series调和级数算法(附完整源码)
    查看>>
    Objective-C实现harris算法(附完整源码)
    查看>>