香橙派PC笔记-05-编译linux内核和UVC摄像头驱动笔记

香橙派PC笔记-05-编译linux内核和UVC摄像头驱动笔记

我的笔记和资料全共享在云盘:

http://pan.baidu.com/s/1dD6T0f3

没有密码,欢迎下载~~~~~~

 

材料:

香橙派:orangepi PC

TF卡:用原来的三星8G CLASS 10 TF卡装LUBUNTU

电源适配器:1A的带不动,启动卡死,改用某A10S盒子的5V/2A电源OK(内径1.7MM 外径4MMDC)

系统:UBUNTU 12.04LTS 64BIT

内核源码资源

串口终端:minicom 终端,用于启动视频监控调试,安装方法自己百度~~

 

昨晚尝试编译 mjpg-streamer 视频监控软件 时发现Lubuntu内核没有UVC 驱动,于是尝试自己编译驱动,

后续上 编译 mjpg-streamer的视频监控笔记~~~

1、下载H3 的linux源码资源

http://www.orangepi.org/downloadresourcescn/



【Orange Pi PC试用体验】05-编译linux内核和UVC摄像头驱动



1、解压h3-lichee-1.0.tar.gz

$ tar -vzxf h3-lichee-1.0.tar.gz 

$cd  lichee

Lichee 特意查了下,原来就是荔枝的意思!!!  音译的!

里面有简单的编译帮助文档,README ,妈妈的不好用,

./build.sh 这个脚本才爽,直接运行

#./build.sh  出现提示:

ERROR: run \'./build.sh config\' setup env

打开看build.sh 脚本,发现调用的是别的脚本,于是打开看看,找到帮助说明

#./build.sh -h  列出帮助文档

/lichee$ ./build.sh -h

Top level build script for lichee

 

Examples:

1. Set the config option and build

    $ ./build.sh config

2. Build lichee using preset config value

    $ ./build.sh

3. Pack a linux, dragonboard image

    $ ./build.sh pack

4. Build lichee using command argument

    $ ./build.sh -p 

 

flags:

  -p,--platform:  platform to build, e.g. sun9iw1p1 (default: \'\')

  -k,--kernel:  kernel to build, e.g. 3.3 (default: \'linux-3.4\')

  -b,--board:  board to build, e.g. evb (default: \'\')

  -m,--module:  module to build, e.g. buildroot, kernel, uboot, clean

                (default: \'\')

  -c,--business:  business to kernel config, e.g. stardard, security

                  (default: \'\')

  -h,--[no]help:  show this help (default: false)

 

 

看上面的帮助说明,一步一步操作实验并做笔记:

./build.sh config

All available chips:

   0. sun6i

   1. sun8iw6p1

   2. sun8iw7p1

   3. sun9iw1p1

选 chips ,到底是哪个呢?看上面的名字好熟悉,好像在哪见过,于是发现

sun8iw7p1_android_orangepi_pc_uart0_v0.8.0.rar   这个android镜像名字里面有,于是选择

sun8iw7p1

输入2 ,出现选择平台

All available platforms:

   0. android

   1. dragonboard

   2. linux

Choice:

我选择 2,linux系统

not set business, to use default!

LICHEE_BUSINESS=

using kernel \'linux-3.4\':

All available boards:

   0. dolphin-cmcc-wasu-p1

   1. dolphin-p1

   2. dolphin-perf

   3. fpga

Choice: 

出现选择主板,我不清楚了,随便选个试试~~

于是选择了2

,全选2,开始编译了~~~!!~

 

 

编译完成!!等了好久哦!!!!

 

 

于是在这里

/lichee/out/sun8iw7p1/linux/common

找到uImage 、rootfs.ext4文件系统等,烧到TF卡估计可以引导启动linux,这暂时不是我需要的

我要的是uvc驱动,于是在下面目录下找到

lichee/out/sun8iw7p1/linux/common/buildroot/target/lib/modules/3.4.39/uvcvideo.ko

天助我也!没想到这个配置了uvc驱动,于是把它用u盘靠到香橙派随意一个位置,我是直接在挂载的u盘里直接安装的

#mount -t vfat /dev/sda1 /mnt

#cd /mnt

#sudo insmod uvcvideo.ko

没想到安装成功!

于是插上USB摄像头,查看 /dev下是否有对应设备

$ ls /dev/vi*

/dev/video0

OK成功!!!

拔掉USB摄像头后 ls就没有video 了

启动mjpg-streamer-code-182/mjpg-streamer$ sudo ./start.sh &

mjpg-streamer的启动脚本 start.sh 的内容:

export LD_LIBRARY_PATH="$(pwd)"

./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w ./www"

 

启动后信息:

orangepi@orangepi:~/app/mjpg-streamer-code-182/mjpg-streamer$ sudo ./start.sh &

[1] 2223

orangepi@orangepi:~/app/mjpg-streamer-code-182/mjpg-streamer$ MJPG Streamer Version: svn rev: 

 i: Using V4L2 device.: /dev/video0

 i: Desired Resolution: 640 x 480

 i: Frames Per Second.: 5

 i: Format............: MJPEG

Adding control for Pan (relative)

Control exists: File exists

Adding control for Tilt (relative)

Control exists: File exists

Adding control for Pan Reset

Control exists: File exists

Adding control for Tilt Reset

Control exists: File exists

Adding control for Pan/tilt Reset

Control exists: File exists

Adding control for Focus (absolute)

Control exists: File exists

mapping control for Pan (relative)

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for Tilt (relative)

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for Pan Reset

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for Tilt Reset

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for Pan/tilt Reset

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for Focus (absolute)

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for LED1 Mode

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for LED1 Frequency

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for Disable video processing

UVCIOC_CTRL_MAP - Error: No such file or directory

mapping control for Raw bits per pixel

UVCIOC_CTRL_MAP - Error: No such file or directory

 o: www-folder-path...: ./www/

 o: HTTP TCP port.....: 8080

 o: username:password.: disabled

 o: commands..........: enabled

 

 

浏览器输入 orangepi:8080

或IP地址加  :8080 打开网站




 【Orange Pi PC试用体验】05-编译linux内核和UVC摄像头驱动

 

1、我上传的可以在香橙派上运行的源码和程序

mjpg-streamer-code-182.tar.gz

内含UVC驱动,先解压,

解压进到 cd mjpg-streamer-code-182/mjpg-streamer/run_mjpg-streamer/

安装驱动和运行 mjpg-streamer同上面笔记

mjpg-streamer的编译笔记下章分解~~

预告:记录在电脑交叉编译和香橙派原生编译mjpg-streamer笔记

 

2、

3、查看香橙派的系统版本:

#$ cat /proc/version

Linux version 3.2.0-29-generic (buildd@allspice) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012

4、


http://bbs.ickey.cn/community/forum.php?mod=viewthread&tid=43908


  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
### 回答1: Android UVC即Android系统上的USB视频类(UVC)设备驱动程序。UVC设备是指插入电脑、手机等设备的摄像头、麦克风、扬声器等外界音频/视频设备,通常通过USB口连接。UVC设备在传输音频视频等数据的过程中,不需要安装驱动程序,只需要插上即可自动识别。此外,Android UVC驱动程序的出现,也使得Android设备可以兼容更多不同品牌的外部音频视频设备,如微型相机、USB摄像头、红外摄像头等。 Android UVC对开发者来说也是很有帮助的。例如,应用程序可以直接访问摄像头的输出,而无需使用专用SDK;还可以通过USB设备连接到外部音频设备,并利用该设备处理应用程序的音频数据;甚至Android UVC还可以为开发者提供将设备作为HDMI输出器或虚拟USB主机的选择,以便在开发特定类型的产品时进行高级调试。 在使用Android UVC的同时,需要考虑的问题也不少。由于UVC设备的独特性,需要特定的USB接口支持才能正常工作。Android UVC还存在锁定、崩溃和数据质量等问题,因此需要谨慎使用。总之,Android UVC驱动程序丰富了Android系统设备与外部媒体设备的互联互通,以及应用程序在Android设备上的开发效率。 ### 回答2: Android UVC是指在Android系统上支持USB Video Class(UVC)设备的功能。UVC是一种视频设备接口标准,可以将外部USB摄像头、微型视频摄像机、望远镜和显微镜等设备与计算机连接,通过USB接口实现与计算机的数据传输。 在Android系统上使用UVC设备可以让用户轻松地进行视频录制、视频会议、远程监控和医疗诊断等应用。UVC设备通过USB接口连接到Android设备上,可以无需安装额外的驱动程序或软件,直接在Android设备上进行视频采集和处理。通过Android UVC功能,消费者可以更方便地使用外部视频设备与Android设备集成,增强设备的多媒体能力,扩展使用场景。 此外,一些Android设备已经支持内置UVC设备,如GoPro等相机,用户可以通过USB接口直接将视频数据导入到Android设备中,实现视频编辑和分享。Android UVC的普及和应用,将进一步加强Android设备的视频处理能力,为用户带来更加便捷和高效的视频交互体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值