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

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

Info

Publication number
CN112087576A
CN112087576A CN202010884641.3A CN202010884641A CN112087576A CN 112087576 A CN112087576 A CN 112087576A CN 202010884641 A CN202010884641 A CN 202010884641A CN 112087576 A CN112087576 A CN 112087576A
Authority
CN
China
Prior art keywords
camera
data stream
camera device
android platform
expansion method
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.)
Granted
Application number
CN202010884641.3A
Other languages
English (en)
Other versions
CN112087576B (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
Shanghai Sunmi Technology 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 (10)

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

Cited By (1)

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

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299847A (zh) * 2008-06-25 2008-11-05 嘉兴闻泰通讯科技有限公司 一种移动终端对前后摄像头进行设置、控制和切换的方法
CN102662609A (zh) * 2012-04-16 2012-09-12 华为软件技术有限公司 视频访问的方法及装置
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 维沃移动通信有限公司 一种支付方法及移动终端
CN108446058A (zh) * 2018-03-12 2018-08-24 维沃移动通信有限公司 一种移动终端的操作方法及移动终端
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 上海商米科技集团股份有限公司 可旋式摄像头模组

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299847A (zh) * 2008-06-25 2008-11-05 嘉兴闻泰通讯科技有限公司 一种移动终端对前后摄像头进行设置、控制和切换的方法
CN102662609A (zh) * 2012-04-16 2012-09-12 华为软件技术有限公司 视频访问的方法及装置
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 삼성전자주식회사 멀티 코어 제어 시스템
CN108446058A (zh) * 2018-03-12 2018-08-24 维沃移动通信有限公司 一种移动终端的操作方法及移动终端
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
HEROISUSELESS的博客: "《ARTrace(二)实现预览》", 《HTTPS://BLOG.CSDN.NET/HEROISUSELESS/ARTICLE/DETAILS/104182719》 *
隋旭阳 等: "《兵器装备工程学报》", 《基于FPGA的多通道视频采集系统设计实现》 *

Cited By (2)

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

Also Published As

Publication number Publication date
CN112087576B (zh) 2021-12-07

Similar Documents

Publication Publication Date Title
CN103152489B (zh) 一种自拍图像的展现方法及装置
CN111629240B (zh) 多屏互动显示方法及装置
CN113115110B (zh) 视频合成方法、装置、存储介质与电子设备
CN112087576B (zh) 基于android平台摄像头数据流扩展方法及电子设备
US10218570B2 (en) Client application adaptation method, terminal device, and system
CN108880983B (zh) 一种虚拟三维空间的语音实时处理方法及装置
CN111340857B (zh) 一种摄像机跟踪控制方法及装置
CN111294556A (zh) 一种基于gb/t28181的视频前端处理方法
EP4246956A1 (en) Photographing mode determination method and apparatus, and electronic device and storage medium
CN109218817A (zh) 一种显示虚拟礼物提示消息的方法和装置
CN112114906B (zh) 一种基于android平台的多摄像头应用方式方法
CN113438550B (zh) 一种视频播放方法、视频会议方法、直播方法及相关装置
CN114039890B (zh) 一种语音识别时延测试方法、系统及存储介质
CN112383723B (zh) 一种视频切换方法、装置及计算机设备
CN112351201B (zh) 多媒体数据处理方法、系统、装置、电子设备和存储介质
CN115098254A (zh) 子任务序列的触发执行方法、系统及电子设备
CN108881984B (zh) 数字电视设备截图存储方法及系统
CN111367598A (zh) 动作指令的处理方法、装置、电子设备及计算机可读存储介质
CN111479140A (zh) 数据采集方法、设备、计算机设备和存储介质
CN112351314B (zh) 多媒体信息播放方法、服务器、终端、系统及存储介质
CN111107296A (zh) 音频数据采集方法、装置、电子设备及可读存储介质
CN111752699B (zh) 页面切换方法、装置和计算机可读存储介质
US11995371B2 (en) Dividing method, distribution method, medium, server, system
CN114461165B (zh) 虚实相机画面同步方法、装置及存储介质
CN110933507B (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