CN112087576B - 基于android平台摄像头数据流扩展方法及电子设备 - Google Patents

基于android平台摄像头数据流扩展方法及电子设备 Download PDF

Info

Publication number
CN112087576B
CN112087576B CN202010884641.3A CN202010884641A CN112087576B CN 112087576 B CN112087576 B CN 112087576B CN 202010884641 A CN202010884641 A CN 202010884641A CN 112087576 B CN112087576 B CN 112087576B
Authority
CN
China
Prior art keywords
camera
camera device
data stream
android platform
android
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010884641.3A
Other languages
English (en)
Other versions
CN112087576A (zh
Inventor
于涛
王小胜
王熹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Sunmi Technology Group Co Ltd
Shenzhen Michelangelo Technology Co Ltd
Original Assignee
Shanghai Sunmi Technology Group Co Ltd
Shenzhen Michelangelo Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Sunmi Technology Group Co Ltd, Shenzhen Michelangelo Technology Co Ltd filed Critical Shanghai Sunmi Technology Group Co Ltd
Priority to CN202010884641.3A priority Critical patent/CN112087576B/zh
Publication of CN112087576A publication Critical patent/CN112087576A/zh
Application granted granted Critical
Publication of CN112087576B publication Critical patent/CN112087576B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/62Control of parameters via user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/67Focus control based on electronic image sensor signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Studio Devices (AREA)

Abstract

本发明涉及多媒体应用技术领域,具体涉及一种基于android平台摄像头数据流扩展方法及电子设备,包括以下步骤:S1***初始化,通过camera id获取对应的摄像头信息;S2打开摄像头,若失败则更新摄像头信息,若成功则创建camera Device描述符;S3利用Camera Device创建对应的CameraCaptureSession;S4根据应用的具体设置向CameraCaptureSession发送capture request实现预览,拍照;S5利用Android surfaceflinger服务接受不同camera的数据流,并进行整合,统一送到显示屏上显示。本发明可以同时打开多个android应用,每个应用都可以打开一个对应的摄像头,可以从对应的摄像头获取数据流。多个应用可以同时分屏显示,每个应用都可以显示自己的摄像头数据流信息。应用之间可以相互切换摄像头数据流资源。

Description

基于android平台摄像头数据流扩展方法及电子设备
技术领域
本发明涉及多媒体应用技术领域,具体涉及一种基于android平台摄像头数据流扩展方法及电子设备。
背景技术
在android的多媒体应用中,丰富的摄像头多媒体功能是一个亮点,随着android的不断发展,对同时打开多个摄像头的支持已经实现,同时对多摄像头的更加多样化的需求也在不断出现,本发明旨在提供一种多摄像头应用方式和方法,可以同时启动多个应用,每个应用都可以打开一个摄像头。且只获取对应摄像头的数据流信息。已经运行的应用之间可以交换摄像头数据资源。
发明内容
针对现有技术的不足,本发明公开了一种基于android平台摄像头数据流扩展方法及电子设备,为了提供一种多摄像头的应用方式和方法,可以同时打开多个android应用,每个应用都可以打开一个对应的摄像头,可以从对应的摄像头获取数据流。
本发明通过以下技术方案予以实现:
第一方面,本发明公开一种基于android平台摄像头数据流扩展方法,包括以下步骤:
S1***初始化,通过camera id获取对应的摄像头信息;
S2打开摄像头,若失败则更新摄像头信息,若成功则创建camera Device描述符;
S3利用Camera Device创建对应的CameraCaptureSession;
S4根据应用的具体设置向CameraCaptureSession发送capture request实现预览,拍照;
S5利用Android surfaceflinger服务接受不同camera的数据流,并进行整合,统一送到显示屏上显示。
更进一步的,所述S2中,在camera manager在接收到打开camera的请求后,去遍历camera id的状态,如果有camera id处于open状态,就去尝试打开,返回success表示打开成功,返回error表示摄像头硬件异常,最终根据返回结果更新对应camera id的状态信息。
更进一步的,所述S2中,在原有的信息基础上增加状态信息,包含open和close,error三个状态。
更进一步的,如果是open状态表示摄像头已经被打开;如果是close状态表示摄像头处于关闭状态;如果是error状态,表示底层摄像头硬件异常。
更进一步的,若camera manager打开成功后会返回一个Camera Device,同时创建对应的camera device描述符camera device fd0、camerad device fd1、camera devicefd2……camera device fdn,其中n为自然数。
更进一步的,所述方法中,本地服务CameraManager Service维护一个Camera idlist,其包含所有硬件可用的摄像头列表。
更进一步的,所述方法中,定义应用A获取到camera device0,应用B获取到cameradevice1;
若应用A和B要交换摄像头数据流,camera device fd0和camera device fd1各自复制自身,记录为camera device fd00和camera device fd11。
更进一步的,所述方法中,camera device fd00和camera device fd11相互交换数据,完成后,camera device fd0指向camera device fd00,camera device fd1指向camera device fd11,然后释放camera device fd0和camera device fd1占用的资源。
更进一步的,所述方法中,每个应用均可打开对应的摄像头,并从对应的摄像头获取数据流,同时分屏显示,每个应用都显示自己的摄像头数据流信息,且应用可相互切换摄像头数据流资源。
第二方面,本发明公开了一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行第一方面所述的基于android平台摄像头数据流扩展方法。
本发明的有益效果为:
本发明可以同时打开多个android应用,每个应用都可以打开一个对应的摄像头,可以从对应的摄像头获取数据流。多个应用可以同时分屏显示,每个应用都可以显示自己的摄像头数据流信息。应用之间可以相互切换摄像头数据流资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的实施应用框架示意图;
图2是本发明实施例软件流程图;
图3是本发明实施例应用交换摄像头资源流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例公开一种基于android平台摄像头数据流扩展方法,其应用框架参见图1所示,具体的,本实施例基于android平台,具体应用实例基于android平台的基本框架。但是发明的方法不限于android平台。其思想和方法可以适用于其他平台。对实例中用的概念做如下解释:
CameraManager Service:是android***的一个本地服务,负责查询底层摄像头设备,建立和底层摄像头的连接。
Camera Device:代表底层连接的摄像头设备;
CameraCaptureSession:由Camera Device创建,负责具体的对焦,预览,拍照等实现;
SurfaceFlinger:Android的显示服务,接收不同的显示数据,进行合成。并且负责把数据发送到显示设备。
实施例2
本实施例公开基于android平台摄像头数据流扩展方法,其流程参照图2所示,本实施例对Camera Device进行改造,每个camera device对象新增一个camera device的数据描述符。记录了camera device打开的camera id,创建的CameraCaptureSession等信息。
其中CameraManager Service维护一个Camera id list,它包含所有硬件可用的摄像头列表。例如Camera id0,Camera id1,Camera id2。表示有三个摄像头可以使用。
通过camera id可以获取对应的摄像头信息,在原有的信息基础上增加状态信息,包含open和close,error三个状态。如果是open状态表示摄像头已经被打开,如果是close状态表示摄像头处于关闭状态,如果是error状态,表示底层摄像头硬件异常。
camera manager在接收到打开camera的请求后,去遍历camera id的状态,如果有camera id处于open状态,就去尝试打开。返回success表示打开成功,返回error表示摄像头硬件异常,根据返回结果更新对应camera id的状态信息。
camera manager打开成功后会返回一个Camera Device,如果有三个camera被打开,就维护三个Camera Device,分别是Camera Device0,Camera Device1,CameraDevice2,同时创建对应的camera device描述符camera device fd0,camerad devicefd1,camera device fd2。
Camera Device创建对应的CameraCaptureSession。并且根据应用的具体设置向CameraCaptureSession发送capture request实现预览,拍照。
Android surfaceflinger服务在接收到不同camera的数据流后,进行整合,统一送到显示屏上显示。
实施例3
本实施例公开上述方法的应用交换摄像头资源流程,具体的参见图3所示,应用A获取到camera device0,应用B获取到camera device1。
如果应用A和B要交换摄像头数据流,camera device fd0和camera device fd1各自复制自身,记录为camera device fd00和camera device fd11。camera device fd00和camera device fd11相互交换数据,完成后,camera device fd0指向camera devicefd00,camera device fd1指向camera device fd11,然后释放camera device fd0和camera device fd1占用的资源。
实施例4
本实施例公开一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行基于android平台摄像头数据流扩展方法。
综上,本发明可以同时打开多个android应用,每个应用都可以打开一个对应的摄像头,可以从对应的摄像头获取数据流。多个应用可以同时分屏显示,每个应用都可以显示自己的摄像头数据流信息。应用之间可以相互切换摄像头数据流资源,具有很强的市场应用前景。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (7)

1.一种基于android平台摄像头数据流扩展方法,其特征在于,所述方法包括以下步骤:
S1***初始化,通过camera id 获取对应的摄像头信息;
S2打开摄像头,若失败则更新摄像头信息,若成功则创建camera Device描述符;
S3利用Camera Device 创建对应的CameraCaptureSession;
S4根据应用的具体设置向CameraCaptureSession发送capture request实现预览,拍照;
S5利用Android surfaceflinger 服务接受不同camera的数据流,并进行整合,统一送到显示屏上显示;
其中,定义应用A获取到camera device0, 应用B获取到camera device1;
若应用A和B要交换摄像头数据流,camera device fd0 和camera device fd1 各自复制自身,记录为camera device fd00和camera device fd11,camera device fd00和camera device fd11相互交换数据,完成后,camera device fd0指向camera devicefd00,camera device fd1指向camera device fd11,然后释放camera device fd0和camera device fd1占用的资源。
2.根据权利要求1所述的基于android平台摄像头数据流扩展方法,其特征在于,所述S2中,在camera manager在接收到打开camera的请求后,去遍历camera id的状态,如果有camera id 处于open状态,就去尝试打开,返回success 表示打开成功,返回error表示摄像头硬件异常,最终根据返回结果更新对应camera id 的状态信息。
3.根据权利要求2所述的基于android平台摄像头数据流扩展方法,其特征在于, 所述S2中,在原有的信息基础上增加状态信息,包含open和close,error三个状态。
4.根据权利要求3所述的基于android平台摄像头数据流扩展方法,其特征在于,如果是open 状态表示摄像头已经被打开;如果是close状态表示摄像头处于关闭状态;如果是error状态,表示底层摄像头硬件异常。
5.根据权利要求2所述的基于android平台摄像头数据流扩展方法,其特征在于,若camera manager 打开成功后会返回一个Camera Device,同时创建对应的camera device描述符camera device fd0、 camerad device fd1、camera device fd2……cameradevice fdn,其中n为自然数。
6.根据权利要求1所述的基于android平台摄像头数据流扩展方法,其特征在于,所述方法中,本地服务CameraManager Service维护一个Camera id list,其包含所有硬件可用的摄像头列表。
7.一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行如权利要求1至6中任一所述的基于android平台摄像头数据流扩展方法。
CN202010884641.3A 2020-08-28 2020-08-28 基于android平台摄像头数据流扩展方法及电子设备 Active CN112087576B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010884641.3A CN112087576B (zh) 2020-08-28 2020-08-28 基于android平台摄像头数据流扩展方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010884641.3A CN112087576B (zh) 2020-08-28 2020-08-28 基于android平台摄像头数据流扩展方法及电子设备

Publications (2)

Publication Number Publication Date
CN112087576A CN112087576A (zh) 2020-12-15
CN112087576B true CN112087576B (zh) 2021-12-07

Family

ID=73728792

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010884641.3A Active CN112087576B (zh) 2020-08-28 2020-08-28 基于android平台摄像头数据流扩展方法及电子设备

Country Status (1)

Country Link
CN (1) CN112087576B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114025157B (zh) * 2022-01-05 2022-07-05 广州朗国电子科技股份有限公司 一体机摄像头的识别方法、***以及一体机

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299847A (zh) * 2008-06-25 2008-11-05 嘉兴闻泰通讯科技有限公司 一种移动终端对前后摄像头进行设置、控制和切换的方法
CN106293584A (zh) * 2016-08-05 2017-01-04 深圳市金立通信设备有限公司 一种双屏显示方法及终端
CN206451187U (zh) * 2017-01-22 2017-08-29 白长晶 一种手机app刷卡装置
CN107886321A (zh) * 2017-10-17 2018-04-06 维沃移动通信有限公司 一种支付方法及移动终端
KR20190057558A (ko) * 2017-11-20 2019-05-29 삼성전자주식회사 멀티 코어 제어 시스템
EP3561763A1 (en) * 2015-02-05 2019-10-30 Samsung Electronics Co., Ltd. Method and electronic device for displaying screen
CN110517793A (zh) * 2019-09-02 2019-11-29 南京邮电大学 一种交互式远程查房***
CN210694087U (zh) * 2019-09-02 2020-06-05 上海商米科技集团股份有限公司 可旋式摄像头模组

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662609B (zh) * 2012-04-16 2016-03-30 华为软件技术有限公司 视频访问的方法及装置
CN108446058B (zh) * 2018-03-12 2020-05-26 维沃移动通信有限公司 一种移动终端的操作方法及移动终端

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299847A (zh) * 2008-06-25 2008-11-05 嘉兴闻泰通讯科技有限公司 一种移动终端对前后摄像头进行设置、控制和切换的方法
EP3561763A1 (en) * 2015-02-05 2019-10-30 Samsung Electronics Co., Ltd. Method and electronic device for displaying screen
CN106293584A (zh) * 2016-08-05 2017-01-04 深圳市金立通信设备有限公司 一种双屏显示方法及终端
CN206451187U (zh) * 2017-01-22 2017-08-29 白长晶 一种手机app刷卡装置
CN107886321A (zh) * 2017-10-17 2018-04-06 维沃移动通信有限公司 一种支付方法及移动终端
KR20190057558A (ko) * 2017-11-20 2019-05-29 삼성전자주식회사 멀티 코어 제어 시스템
CN110517793A (zh) * 2019-09-02 2019-11-29 南京邮电大学 一种交互式远程查房***
CN210694087U (zh) * 2019-09-02 2020-06-05 上海商米科技集团股份有限公司 可旋式摄像头模组

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《ARTrace(二)实现预览》;HeroIsUseless的博客;《https://blog.csdn.net/HeroIsUseless/article/details/104182719》;20200205;第1页第2-14行、第2页第1-29行 *
《兵器装备工程学报》;隋旭阳 等;《基于FPGA的多通道视频采集***设计实现》;20200630;全文 *

Also Published As

Publication number Publication date
CN112087576A (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
WO2021175055A1 (zh) 视频处理方法及相关装置
CN103152489B (zh) 一种自拍图像的展现方法及装置
CN113115110B (zh) 视频合成方法、装置、存储介质与电子设备
CN108880983B (zh) 一种虚拟三维空间的语音实时处理方法及装置
CN112087576B (zh) 基于android平台摄像头数据流扩展方法及电子设备
CN111340857B (zh) 一种摄像机跟踪控制方法及装置
US20160337191A1 (en) Client application adaptation method, terminal device, and system
CN112954459A (zh) 一种视频数据的处理方法和装置
US11995371B2 (en) Dividing method, distribution method, medium, server, system
US20230336878A1 (en) Photographing mode determination method and apparatus, and electronic device and storage medium
CN111294556A (zh) 一种基于gb/t28181的视频前端处理方法
CN112114906B (zh) 一种基于android平台的多摄像头应用方式方法
CN114025185A (zh) 一种视频回放方法、装置、电子设备及存储介质
CN113438550B (zh) 一种视频播放方法、视频会议方法、直播方法及相关装置
CN113596544A (zh) 视频生成方法、装置、电子设备及存储介质
CN114039890B (zh) 一种语音识别时延测试方法、***及存储介质
CN115495185A (zh) 显示页面元素的方法及装置
CN112383723B (zh) 一种视频切换方法、装置及计算机设备
CN115098254A (zh) 子任务序列的触发执行方法、***及电子设备
CN114942738A (zh) 用于板书显示的处理方法和相关装置
CN111367598B (zh) 动作指令的处理方法、装置、电子设备及计算机可读存储介质
CN108881984B (zh) 数字电视设备截图存储方法及***
CN113559503A (zh) 视频生成方法、设备及计算机可读介质
CN111479140A (zh) 数据采集方法、设备、计算机设备和存储介质
CN112351314B (zh) 多媒体信息播放方法、服务器、终端、***及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant