摄像头的控制方法和装置与流程

文档序号:17089504发布日期:2019-03-13 23:16阅读:196来源:国知局
摄像头的控制方法和装置与流程

本发明涉及信息处理技术领域,尤其涉及一种摄像头的控制方法和装置。



背景技术:

目前,很多终端设备都会配有摄像头,摄像头可以用来拍摄照片或者视频。对于一般的操作系统,通常一个应用需要使用摄像头时,都会向操作系统发出请求。系统在根据请求打开摄像头之后,摄像头的控制权限和资源都被该应用独占。在该应用使用摄像头结束之后,可以主动释放控制权限和资源。但是,当有多个应用都需要使用摄像头时,摄像头资源只能分配给其中一个应用,其他的应用无法使用摄像头。



技术实现要素:

为解决上述问题,本发明提供一种摄像头的控制方法和装置。

本发明实施例提供一种摄像头的控制方法,包括:实时监听应用程序调用摄像头的连接请求;当接收到所述连接请求时,向所述应用程序提供预设信息,并根据所述连接请求生成摄像头资源信息;将所述摄像头资源信息保存至共享内存列表中,以使所述应用程序根据所述预设信息从所述共享内存列表中提取所述摄像头资源信息。

本发明另一实施例提供一种摄像头的控制装置,包括:监听模块,用于实时监听应用程序调用摄像头的连接请求;控制模块,用于当接收到所述连接请求时,向所述应用程序提供预设信息,并根据所述连接请求生成摄像头资源信息;保存模块,用于将所述摄像头资源信息保存至共享内存列表中,以使所述应用程序根据所述预设信息从所述共享内存列表中提取所述摄像头资源信息。

本发明又一实施例提供一种终端设备,包括本发明前一方面实施例所述的摄像头的控制装置。

本发明实施例提供的技术方案可以包括以下有益效果:

通过实时监听应用程序调用摄像头的连接请求,并当接收到所述连接请求时,向所述应用程序提供预设信息,然后根据所述连接请求生成摄像头资源信息,以及将所述摄像头资源信息保存至共享内存列表中,以使所述应用程序根据所述预设信息从所述共享内存列表中提取所述摄像头资源信息,能够实现多个应用程序共用一个摄像头,实现方法简单,提高用户使用体验。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1是根据本发明一个实施例的摄像头的控制方法的流程图;

图2是根据本发明一个实施例的摄像头服务组件与应用的交互示意图;

图3是根据本发明一个实施例的摄像头的控制装置的结构框图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的摄像头的控制方法和装置。

图1是根据本发明一个实施例的摄像头的控制方法的流程图。

如图1所示,该摄像头的控制方法包括:

s101,实时监听应用程序调用摄像头的连接请求。

对于一般的操作系统,通常一个应用程序需要使用摄像头时,都会向操作系统发出请求。系统在根据请求打开摄像头之后,摄像头的控制权限和资源都被该应用程序独占。在该应用程序使用摄像头结束之后,可以主动释放控制权限和资源。但是,当有多个应用程序都需要使用摄像头时,摄像头资源只能分配给其中一个应用程序,其他的应用程序无法使用摄像头。为此,本发明提出一种能够将摄像头资源共享到多个应用程序的方法。

在本发明的一个实施例中,可通过预先建立的进程间通信ipc(inter-processcommunication,进程间通信)接口实时监听应用程序调用摄像头的连接请求。

s102,当接收到连接请求时,向应用程序提供预设信息,并根据连接请求生成摄像头资源信息。

其中,预设信息包括共享内存路径。

在本发明的一个实施例中,当接收到连接请求时,可向应用程序提供诸如共享内存路径的预设信息,然后设置摄像头的拍摄参数,再根据拍摄参数获取摄像头拍摄的图像数据,以此准备好摄像头资源信息。

s103,将摄像头资源信息保存至共享内存列表中,以使应用程序根据预设信息从共享内存列表中提取摄像头资源信息。

在生成摄像头资源信息后,可将摄像头资源信息保存至共享内存列表中。此后,应用程序可根据预设信息从共享内存列表中提取出摄像头以拍摄参数拍摄的图像数据。其中,拍摄参数、图像数据与应用程序相对应。也就是说,一个应用程序在请求调用摄像头时,会为这个应用程序配置拍摄参数,从而获取对应的图像数据。

如图2所示,以一个具体的例子进行详细阐述。其中,操作系统提供一个摄像头服务组件由监听控制模块(m)、摄像头控制模块(c)和共享内存列表模块(s)组成。监听控制模块(m)与摄像头控制模块(c)连接。

在操作系统启动时,首先会启动监听控制模块(m),该模块创建ipc通信接口,对系统中的应用进行监听。假设操作系统中有a1、a2、a3三个应用需要同时实时获取摄像头数据,可通过ipc通信接口等待a1、a2、a3的连接。a1、a2、a3可根据预先约定好的ipc通信方式,尝试连接监听控制模块(m),并从监听控制模块(m)获取信息如共享内存路径、摄像头状态等。摄像头控制模块(c)接收到监听控制模块(m)发送的控制信号,分别为三个应用准备摄像头资源。其中,资源中可包括多个参数,如控制权参数(打开或关闭)、分辨率、颜色参数、曝光参数等。然后准备好应用所需的共享内存列表模块(s)。共享内存列表模块(s)读取摄像头资源,并实时存放于共享内存中。最后,a1、a2、a3从共享内存路径访问共享内存列表模块(s),读取各自所需的图像数据,从而实现多个应用共享一个摄像头资源。

本发明实施例的摄像头的控制方法,通过实时监听应用程序调用摄像头的连接请求,并当接收到连接请求时,向应用程序提供预设信息,然后根据连接请求生成摄像头资源信息,以及将摄像头资源信息保存至共享内存列表中,以使应用程序根据预设信息从共享内存列表中提取摄像头资源信息,能够实现多个应用程序共用一个摄像头,实现方法简单,提高用户使用体验。

为了实现上述实施例,本发明还提出了一种摄像头的控制装置,图3是根据本发明一个实施例的摄像头的控制装置的结构框图,如图3所示,摄像头的控制装置包括监听模块310、控制模块320和保存模块330。

其中,监听模块310,用于实时监听应用程序调用摄像头的连接请求。

控制模块320,用于当接收到连接请求时,向应用程序提供预设信息,并根据连接请求生成摄像头资源信息。

保存模块330,用于将摄像头资源信息保存至共享内存列表中,以使应用程序根据预设信息从共享内存列表中提取摄像头资源信息。

需要说明的是,前述对摄像头的控制方法的解释说明,也适用于本发明实施例的摄像头的控制装置,本发明实施例中未公布的细节,在此不再赘述。

本发明实施例的摄像头的控制装置,通过实时监听应用程序调用摄像头的连接请求,并当接收到连接请求时,向应用程序提供预设信息,然后根据连接请求生成摄像头资源信息,以及将摄像头资源信息保存至共享内存列表中,以使应用程序根据预设信息从共享内存列表中提取摄像头资源信息,能够实现多个应用程序共用一个摄像头,实现方法简单,提高用户使用体验。

为了实现上述实施例,本发明还提出了一种终端设备,包括如前一个实施例的摄像头的控制装置。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1