一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种摄像设备动态调整方法、电子设备、摄像设备及系统与流程

2022-12-09 22:57:22 来源:中国专利 TAG:


1.本技术涉及终端技术领域,尤其涉及一种摄像设备动态调整方法、电子设备、摄像设备及系统。


背景技术:

2.随着摄像技术微型化的普及,越来越多的电子设备提供有摄像功能,从而为消费者提供便捷的摄像服务。示例地,电子设备可以集成有摄像设备,和/或可以与外置摄像设备连接,来提供摄像功能。通常地,外置摄像设备通常以包含处理器的外置摄像系统的形式,通过诸如通用串行总线(universal serial bus,usb)的连接线与电子设备连接,来为电子设备提供摄像功能。在外置摄像系统被电子设备上运行的应用调用后,随着外置摄像系统的运行时长较长、承载的任务复杂等因素,可能导致外置摄像系统的运行受到影响,从而对电子设备上运行的应用的响应变慢、无响应等,进而导致用户体验较差。


技术实现要素:

3.为了解决上述的技术问题,本技术提供了一种摄像设备动态调整方法、电子设备、摄像设备及系统。本技术提供的技术方案,能够监测外置摄像系统的相关参数,动态地调整外置摄像系统,保持外置摄像系统的平稳运行,从而为用户提供良好的体验。
4.第一方面,提供了一种摄像设备动态调整方法,可以应用于包含电子设备和摄像设备的系统,其中,电子设备和摄像设备间可以通过至少一根线缆连接。该方法可以包括:电子设备与摄像设备间基于第一线缆建立数据通道和网络通道;摄像设备检测到其运行的状态参数出现异常,通过网络通道向电子设备发送异常信息;电子设备响应接收到的异常信息,通过数据通道向摄像设备发送参数调整指令;摄像设备响应接收到的参数调整指令,调整运行参数。这样,在摄像设备运行过程中,摄像设备可以通过该网络通道将其运行的状态参数的异常信息反馈至电子设备,使得电子设备可以在摄像设备的状态参数出现异常时告知摄像设备调整运行参数,从而在摄像设备即将发生异常时,摄像设备可以及时调整其运行参数,进而使得摄像设备可以平稳高效运行,避免摄像设备出现系统异常的问题,从而为用户提供良好的体验。
5.示例性的,数据通道可以为uvc通道,网络通道可以为socket通道。
6.根据第一方面,摄像设备检测到其运行的状态参数出现异常,具体可以包括:摄像设备在运行过程中检测其运行的状态参数对应的参数值;摄像设备确定状态参数对应的参数值超过预设阈值。这样,摄像设备在运行过程中可以将其状态参数对应的参数值与预设阈值进行比较,进而确定出其运行状态是否异常。
7.根据第一方面,或者以上第一方面的任意一种实现方式,电子设备通过数据通道向摄像设备发送参数调整指令之前,还包括:电子设备确定摄像设备具备参数调节能力。这样,在摄像设备具有参数调节能力时,电子设备才下发参数调整指令,避免无效操作,提升调整的准确度。
8.根据第一方面,或者以上第一方面的任意一种实现方式,电子设备确定摄像设备具备参数调节能力,具体可以包括:电子设备确定摄像设备所支持的n个运行参数中各个运行参数分别对应的参数值的n个参数值集合,n为大于0的正整数;电子设备确定n个运行参数中k个运行参数分别对应的k个参数值集合中均包括多个参数值,k≤n;电子设备确定摄像设备运行过程中k个运行参数中至少一个运行参数当前对应的参数值大于目标参数值,目标参数值为至少一个运行参数对应的参数值集合中的最小参数值。这样,当摄像设备的运行参数对应的参数值为多个,且当前运行的参数值不为最小值时,可以确定摄像设备可以进一步降低运行参数的参数值,进而确定出摄像设备具备参数调节能力。
9.根据第一方面,或者以上第一方面的任意一种实现方式,摄像设备调整运行参数之后,还可以包括:摄像设备确定当前时刻与调整运行参数的时刻相距预设时长;摄像设备重新检测其运行的状态参数。这样,使得摄像设备以调整后的运行参数运行一段时间后再重新对其运行参数进行检测,为摄像设备运行的状态参数由异常转换为正常留出足够的时间,避免摄像设备持续上报异常信息。
10.根据第一方面,或者以上第一方面的任意一种实现方式,参数调整指令为指示摄像设备将其当前的运行参数的参数值降低一级的指令。
11.根据第一方面,或者以上第一方面的任意一种实现方式,状态参数包括:内存占用率,cpu占用率超过了某一阈值,和/或,硬件温度。
12.根据第一方面,或者以上第一方面的任意一种实现方式,运行参数包括:分辨率、帧率,和/或,码率。
13.根据第一方面,或者以上第一方面的任意一种实现方式,第一线缆为usb数据线。
14.第二方面,提供了一种摄像设备动态调整方法,可以应用于电子设备,该电子设备可以与摄像设备间通过至少一根线缆连接。该方法可以包括:通过基于第一线缆建立的网络通道接收摄像设备发送的异常信息,异常信息用于表征摄像设备运行的状态参数出现异常;响应接收到的异常信息,通过基于第一线缆建立的数据通道向摄像设备发送参数调整指令,参数调整指令用于指示摄像摄像调整运行参数。这样,电子设备可以通过基于第一线缆建立的网络通道接收到摄像设备的异常信息,并通过基于第一线缆建立的数据通道向摄像设备发送参数调整指令,从而使得电子设备可以在摄像设备的状态参数出现异常时告知摄像设备调整运行参数,从而在摄像设备即将发生异常时,摄像设备可以及时调整其运行参数,进而使得摄像设备可以平稳高效运行,避免摄像设备出现系统异常的问题,从而为用户提供良好的体验。
15.根据第二方面,通过基于第一线缆建立的数据通道向摄像设备发送参数调整指令之前,还可以包括:确定摄像设备具备参数调节能力。这样,在摄像设备具有参数调节能力时,电子设备才下发参数调整指令,避免无效操作,提升调整的准确度。
16.根据第二方面,或者以上第二方面的任意一种实现方式,确定摄像设备具备参数调节能力,具体可以包括:确定摄像设备所支持的n个运行参数中各个运行参数分别对应的参数值的n个参数值集合,n为大于0的正整数;确定n个运行参数中k个运行参数对应的参数值集合中均包括多个参数值,k≤n;确定摄像设备运行过程中k个运行参数中至少一个运行参数当前对应的参数值大于目标参数值,目标参数值为至少一个运行参数对应的参数值集合中的最小参数值。这样,当摄像设备的运行参数对应的参数值为多个,且当前运行的参数
值不为最小值时,可以确定摄像设备可以进一步降低运行参数的参数值,进而确定出摄像设备具备参数调节能力。
17.根据第二方面,或者以上第一方面的任意一种实现方式,参数调整指令为指示摄像设备将其当前的运行参数的参数值降低一级的指令。
18.根据第二方面,或者以上第一方面的任意一种实现方式,第一线缆为usb数据线。
19.第三方面,提供了一种摄像设备动态调整方法,可以应用于摄像设备,该摄像设备可以与电子设备间通过至少一根线缆连接。该方法可以包括:检测到当前运行的状态参数出现异常,通过基于第一线缆建立的网络通道向电子设备发送的异常信息;通过基于第一线缆建立的数据通道接收电子设备发送的参数调整指令,参数调整指令用于指示摄像摄像调整运行参数;调整运行参数。这样,摄像设备可以通过基于第一线缆建立的网络通道向电子设备反馈其运行出现异常的异常信息,并通过基于第一线缆建立的数据通道接收电子设备发送参数调整指令,以及调整运行参数,从而使得摄像设备在其状态参数出现异常时可以及时调整其运行参数,进而使得摄像设备可以平稳高效运行,避免摄像设备出现系统异常的问题,从而为用户提供良好的体验。
20.根据第三方面,检测到当前运行的状态参数出现异常,具体可以包括:检测当前运行的状态参数对应的参数值;确定状态参数对应的参数值超过预设阈值。这样,摄像设备在运行过程中可以将其状态参数对应的参数值与预设阈值进行比较,进而确定出其运行状态是否异常。
21.根据第三方面,或者以上第三方面的任意一种实现方式,调整运行参数之后,还可以包括:确定当前时刻与调整运行参数的时刻相距预设时长,并重新检测当前运行的状态参数。这样,使得摄像设备以调整后的运行参数运行一段时间后再重新对其运行参数进行检测,为摄像设备运行的状态参数由异常转换为正常留出足够的时间,避免摄像设备持续上报异常信息。
22.根据第三方面,或者以上第三方面的任意一种实现方式,参数调整指令为指示摄像设备将其当前的运行参数的参数值降低一级的指令。
23.根据第三方面,或者以上第三方面的任意一种实现方式,状态参数包括:内存占用率,cpu占用率超过了某一阈值,和/或,硬件温度。
24.根据第三方面,或者以上第三方面的任意一种实现方式,运行参数包括:分辨率、帧率,和/或,码率。
25.根据第三方面,或者以上第三方面的任意一种实现方式,第一线缆为usb数据线。
26.第四方面,提供了一种电子设备,电子设备包括存储器和处理器;存储器存储有计算机程序;当计算机程序被处理器执行时,使得电子设备执行如第二方面以及第二方面任意一种实现方式的方法,。
27.第四方面及第四方面的任意一种实现方式分别与第二方面及第二方面的任意一种实现方式相对应。第四方面以及第四方面中任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面中任意一种实现方式所对应的技术效果,此处不再赘述。
28.第五方面,提供了一种摄像设备,摄像设备包括摄像头,存储器和处理器;摄像头与处理器连接;存储器存储有计算机程序;当计算机程序被处理器执行时,使得摄像设备执行如第三方面以及第三方面任意一种实现方式的方法,。
29.第五方面及第五方面的任意一种实现方式分别与第三方面及第三方面的任意一种实现方式相对应。第四方面以及第四方面中任意一种实现方式所对应的技术效果可参见上述第三方面以及第三方面中任意一种实现方式所对应的技术效果,此处不再赘述。
30.第六方面,提供了一种摄像设备动态调整系统,该系统可以包括第四方面及第四方面的任意一种实现方式的电子设备,以及第五方面及第五方面的任意一种实现方式的摄像设备,其中,该电子设备与该摄像设备间通过至少一根线缆连接,该电子设备和该摄像设备间基于第一线缆建立有数据通道和网络通道。
31.示例性的,数据通道为uvc通道,网络通道为socket通道,第一线缆为usb数据线。
32.第六方面及第六方面的任意一种实现方式分别与第四方面及第四方面的任意一种实现方式相对应,以及分别与第五方面及第三面的任意一种实现方式相对应。第六方面以及第六方面中任意一种实现方式所对应的技术效果可参见上述第四方面以及第四方面中任意一种实现方式所对应的技术效果,以及,可参见上述第五方面以及第五方面中任意一种实现方式所对应的技术效果,此处不再赘述。
33.第七方面,提供一种计算机可读存储介质,该计算机可读存储介质包括计算机程序,当计算机程序在电子设备上运行时,使得电子设备执行如第二方面以及第二方面任意一种实现方式的方法,或者,执行如第三方面以及第三方面任意一种实现方式的方法。
34.第七方面及第七方面的任意一种实现方式分别与第二方面及第二方面的任意一种实现方式相对应,或者分别与第三方面及第三面的任意一种实现方式相对应。第七方面以及第七方面中任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面中任意一种实现方式所对应的技术效果,或者可参见上述第三方面以及第三方面中任意一种实现方式所对应的技术效果,此处不再赘述。
35.第八方面,提供一种计算机程序产品,当其在电子设备上运行时,使得电子设备执行如第二方面以及第二方面任意一种实现方式的方法,或者,执行如第三方面以及第三方面任意一种实现方式的方法。
36.第八方面及第八方面的任意一种实现方式分别与第二方面及第二方面的任意一种实现方式相对应,或者分别与第三方面及第三面的任意一种实现方式相对应。第六方面以及第六方面中任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面中任意一种实现方式所对应的技术效果,或者可参见上述第三方面以及第三方面中任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
37.图1示出了一种应用场景示意图;
38.图2示出了一种电子设备间构建的通信通道的示意图;
39.图3示出了一种摄像设备10的硬件结构示意图;
40.图4示出了一种电子设备20的硬件结构示意图;
41.图5示出了一种摄像设备动态调整方法的流程示意图;
42.图6为图5中示出的app向cameraproxy发送摄像设备10的运行参数的调整指令的步骤示意图;
43.图7示出了一种用户使用电子设备进行通话的示意图;
44.图8示出了一种芯片的硬件结构示意图。
具体实施方式
45.为了使本技术实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本技术实施例中的技术方案进行描述。
46.在本技术实施例的描述中,“示例性的”、“例如”或者“举例来说”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”、“例如”或者“举例来说”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、“例如”或者“举例来说”等词旨在以具体方式呈现相关概念。
47.在本技术实施例的描述中,术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,单独存在b,同时存在a和b这三种情况。另外,除非另有说明,术语“多个”的含义是指两个或两个以上。例如,多个系统是指两个或两个以上的系统,多个电子设备是指两个或两个以上的电子设备。
48.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
49.示例性的,图1示出了一种应用场景示意图。如图1的(a)所示,该应用场景下可以涉及至少两个电子设备,即摄像设备10和电子设备20。其中,摄像设备10与电子设备20之间通过一根usb数据线13连接。此时,摄像设备10独立于电子设备20,且摄像设备10可以作为电子设备20的外设设备使用。示例性的,摄像设备10可以为带有摄像装置(比如,摄像头)的电子设备。
50.如图1的(b)所示,该应用场景下也可以涉及至少两个电子设备,即摄像设备10和电子设备20。其中,摄像设备10与电子设备20之间通过usb数据线(图中未示出)连接。此时,摄像设备10与电子设备20集成在一起,且摄像设备10可以作为电子设备20的外设设备使用。
51.示例性的,图2示出了一种电子设备间构建的通信通道的示意图。如图2的(a)所示,摄像设备10和电子设备20之间可以通过线缆建立连接。示例性的,线缆可以为usb数据线。通常地,摄像设备10和电子设备20之间仅通过一根usb数据线建立连接;之后,在本技术实施例中将以这种连接方式为例进行介绍。其中,摄像设备10和电子设备20之间通过usb数据线建立连接后,两者之间即建立起数据通道。示例性的,该数据通道支持业务数据对应的传输协议,如usb视频规范(usb video class,uvc)协议。本技术实施例中,摄像设备10可以通过该数据通道向电子设备20发送业务数据;电子设备20可以通过该数据通道向摄像设备10发送开启指令,运行参数,运行参数的调整指令等。示例性的,业务数据可以包括音频数据,视频数据,或音视频数据等,运行参数可以包括分辨率,帧率或码率等。
52.当摄像设备10和电子设备20间通过一根usb数据线建立连接后,受到usb行业规范中usb设备类规范(如uvc等)等影响,摄像设备10只能向电子设备20传输业务数据(如音频数据,视频数据,或音视频数据等),而摄像设备10不能向电子设备20反馈其运行状态是否异常的信息。通常地,可以在摄像设备10和电子设备20之间额外增加一根或多根线缆,以使
得摄像设备10可以通过额外增加的线缆向电子设备20反馈其运行状态是否异常的信息。但这种方式往往需要在摄像设备10和电子设备20增设额外的接口,致使成本增加。
53.而本技术实施例中,如图2的(b)所示,在摄像设备10和电子设备20间的usb数据线上可以建立网络通道。示例性的,该网络通道支持传输状态异常信息对应的传输协议,如远程网络驱动程序接口规范(remote network driver interface specification,rndis)协议等;其中,rndis本质上是tcp/ip over usb,即通过usb接口建立网络连接,以传输以太网数据。示例性的,一种常用的建立网络通道的方式可以是采用socket建立网络连接。
54.本技术实施例中,在摄像设备10运行过程中,摄像设备10可以通过该网络通道将其运行的状态参数的异常信息反馈至电子设备20,使得电子设备20可以在摄像设备10的状态参数出现异常时告知摄像设备10调整运行参数,从而在摄像设备10即将发生异常时,摄像设备10可以及时调整其运行参数,进而使得摄像设备10可以平稳高效运行,避免摄像设备10出现系统异常的问题。示例性的,摄像设备10运行的状态参数可以包括硬件温度信息,内存占用信息或中央处理器(central processing unit,cpu)占用率信息等。
55.本技术实施例中,摄像设备10可以是包含数据采集和传输功能的电子设备。例如,智能手机、平板电脑、摄像设备(camera)、监控设备、车载设备等电子设备。示例性的,摄像设备10可以是包括但不限于搭载或者其它操作系统的电子设备,也可以是不包含操作系统的电子设备,此处不做限定。示例性的,不论摄像设备10中包不包含操作系统,摄像设备10内均可以配置有支撑摄像设备10正常运行的设备驱动程序。
56.电子设备20可以是包含音频、视频播放功能,和/或视频、图像显示功能的显示设备,例如,显示器、智能电视、智能手机、平板电脑、ar(augmented reality,增强现实)设备、车载设备等电子设备。示例性的,电子设备20可以是包括但不限于搭载车载设备等电子设备。示例性的,电子设备20可以是包括但不限于搭载或者其它操作系统的电子设备。
57.示例性的,图3示出了一种摄像设备10的硬件结构示意图。如图3所示,该摄像设备10包括:包括处理器110,存储器120,接口130,和摄像头140等。
58.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。示例性的,处理器110可以基于其处理任务的繁忙程度确定出其占用率,或者计算摄像设备10的内存占用率,以及确定摄像设备10的运行状态是否异常等。
59.存储器120可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器110可以通过运行存储在存储器120的上述指令,从而使得摄像设备10执行各种功能应用以及数据处理等。
60.接口130可以用于摄像设备10与电子设备20之间建立连接。示例性的,接口130可以为通用串行总线(universal serial bus,usb)接口。其中,usb接口可以是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。示例性的,接口130可以用于为摄像设备10充电,也可以用于摄像设备10与电子设备20之间传输数据。示例性的,摄像设备10与电子设备20通过一根usb数据线建立连接后,电子设备20可以通过该
usb数据线为摄像设备10供电。一些实施例中,接口130可以设置在处理器110中。
61.摄像头140可以用于捕获静态图像或视频。在一些实施例中,摄像设备10可以包括1个或多个摄像头140。
62.可选的,摄像设备10中还配置有温度传感器(图中未示出)。该温度传感器可以检测摄像设备10上各个硬件的温度。
63.可选的,摄像设备10中可以包括通过音频模块(图中未示出),麦克风(图中未示出)等。其中,音频模块可以用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块还可以用于对音频信号编码和解码。在一些实施例中,音频模块可以设置于处理器110中,或将音频模块的部分功能模块设置于处理器110中。
64.可以理解的是,本技术示意的结构并不构成对摄像设备10的具体限定。在本技术另一些实施例中,摄像设备10可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
65.示例性的,图4示出了一种电子设备20的硬件结构示意图。如图2b所示,该电子设备20可以包括:处理器210,存储器220,usb接口230,显示屏240,等。
66.处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。在一些实施例中,电子设备20也可以包括一个或多个处理器210。示例性的,处理器210可以确定是否向摄像设备10发送运行参数的调整指令等。
67.存储器220可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器210可以通过运行存储在存储器220的上述指令,从而使得电子设备20执行本方案中所提供的摄像设备动态调整方法等。存储器220还可以用于存储从摄像设备10接收的数据和文件,例如,从摄像设备10接收的音视频数据等。
68.接口230可以用于电子设备20与摄像设备10之间建立连接。示例性的,接口230可以为通用串行总线(universal serial bus,usb)接口。其中,usb接口可以是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。示例性的,接口230可以用于为摄像设备10充电,也可以用于摄像设备10与电子设备20之间传输数据。示例性的,摄像设备10与电子设备20通过一根usb数据线建立连接后,电子设备20可以通过该usb数据线为摄像设备10供电。一些实施例中,接口230可以设置在处理器210中。
69.显示屏240用于显示控件、信息、图像、视频等。显示屏240包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emitting diode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,amoled),柔性发光二极管(flex light-emitting diode,fled),miniled,microled,micro-oled,量子点发光二极管(quantum dot light emitting diodes,qled)等。
70.可以理解的是,本技术示意的结构并不构成对电子设备20的具体限定。在本技术另一些实施例中,电子设备20可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
71.下面结合图5,对本技术提供的技术方案进行详细说明。示例性地,图5示出了本技术实施例提供的一种摄像设备动态调整方法的流程示意图。在图5所示的流程中,电子设备20上可以安装有应用程序(application,app),其中,该app具备使用摄像设备10的能力。示例性的,电子设备20上的app可以为社交类app,安防类app等。在电子设备20上可以配置有代理进程(cameraproxy),其中,在app需要使用摄像设备10时,app可以通过该代理进程(cameraproxy)与摄像设备10进行通信。
72.如图5所示,摄像设备动态调整方法具体包括:
73.s101、摄像设备10与电子设备20端的代理进程(cameraproxy)建立uvc通道。
74.具体的,uvc通道是cameraproxy通过uvc协议向摄像设备10下发命令的通道,以及摄像设备10在接收到cameraproxy下发的命令后向cameraproxy传输视频数据的通道。示例性的,在摄像设备10与电子设备20间通过一根usb线建立连接,且两者均处于启动状态后,两者在该usb数据线上即构建出uvc通道。
75.s102、cameraproxy与摄像设备10建立socket通道x。
76.具体的,cameraproxy与摄像设备10之间可以基于rndis协议在usb数据线上建立socket通道x。
77.示例性的,当摄像设备10和电子设备20使用一根usb线建立连接后,摄像设备10可以基于rndis协议在其usb接口上虚拟出网卡,并为该网卡分配ip地址和端口,作为摄像设备10侧的socket1;同样的,电子设备20也可以基于rndis协议在其usb接口上虚拟出网卡,并为该网卡分配ip地址和端口,作为电子设备20侧的socket2。然后,摄像设备10监听来自电子设备20侧的连接请求。其中,cameraproxy可以向摄像设备10侧发送socket连接请求。当cameraproxy发送socket连接请求后,摄像设备10可以监听到该socket连接请求。之后,摄像设备10可以同意建立连接,至此摄像设备10侧的socket1与电子设备20侧的socket2即建立连接,从而得到socket通道x。
78.s103、app在cameraproxy上注册状态回调函数。
79.具体的,app可以通过应用编程接口(application programming interface,api)调用cameraproxy提供的状态接口,并注册状态回调函数。其中,该状态回调函数可以用于从cameraproxy处接收camera的状态信息。
80.由此在经过上述s101,102和103后,即可以构建出摄像设备10向app上报消息的通道(即socket通道x)。
81.s104、app向cameraproxy发送摄像设备10的开启指令和运行参数。
82.具体的,app可以通过接口调用的方式向cameraproxy发送摄像设备10的开启指令和运行参数。示例性的,运行参数可以包括分辨率、帧率或码率等。示例性的,在app中可以预先设置有其所需的摄像设备10的最佳运行参数,之后,在app启动后,app可以将该最佳运行参数发送至cameraproxy。
83.s105、cameraproxy通过uvc通道向摄像设备10发送开启指令和运行参数。
84.具体的,cameraproxy接收到app发送的信息后,可以通过uvc通道向摄像设备10发送开启指令和运行参数。
85.s106、摄像设备10开启,并按照cameraproxy发送的运行参数运行。
86.具体的,摄像设备10接收到cameraproxy发送的信息后,可以开启,并按照cameraproxy发送的运行参数运行。例如,当运行参数为分辨率,且分辨率为3840x2160(即4k),则摄像设备10可以按照4k的分辨率运行。
87.s107、摄像设备10通过uvc通道向cameraproxy发送视频数据。
88.具体的,摄像设备10启动后可以采集视频数据。之后,摄像设备10可以将其采集到的视频数据通过uvc通道发送至cameraproxy。
89.s108、cameraproxy向app发送视频数据。
90.s109、app显示视频数据。
91.s110、摄像设备10检测其运行的状态参数。
92.具体的,摄像设备10运行过程中,可以对其运行的状态参数进行检测。例如,检测其硬件温度,内存占用率,和/或,cpu占用率等等。
93.s111、摄像设备10判断其运行的状态参数出现异常。
94.具体的,在摄像设备10检测到其当前运行的状态参数(如硬件温度信息,内存占用信息,cpu占用率信息等)后,摄像设备10可以判断其运行的状态参数是否出现异常。示例性的,摄像设备10可以将其检测到的状态参数与预先设定的状态参数阈值进行比较,当检测到的状态参数超过预先设定的状态参数阈值时,则确定出状态参数出现异常,此时则执行s112;否则继续对状态参数进行检测,即返回执行s110。
95.示例性的,当摄像设备10的内存占用率超过了某一阈值,cpu占用率超过了某一阈值,或者硬件温度超过了某一阈值时,摄像设备10可以确定其状态参数出现异常。
96.s112、摄像设备10通过socket通道x向cameraproxy发送异常信息。
97.具体的,摄像设备10与电子设备20之间可以通过分时复用(timedivision multiplexing,tdm)的方式在一根usb数据线上传输数据。其中,分时复用是采用同一物理连接的不同时段来传输不同的信号,从而达到多路传输的目的。
98.s113、cameraproxy向app发送异常信息。
99.s114、app确定摄像设备10具备参数调节能力。
100.具体的,app获取到异常信息后,可以确定摄像设备10是否具备参数调节能力。其中,当确定出摄像设备10具备参数调节能力时,可以执行s115。
101.需要说明的是,s114并非是该方法的必需步骤。即在该方法的执行中,并非每次都要执行s114。可选地,在该方法的执行中,也可以每次都执行s114。可选地,在该方法的执行中,也可以不执行s114。
102.s115、app向cameraproxy发送摄像设备10的运行参数的调整指令。
103.具体的,app获知到摄像设备10的状态参数出现异常后,可以对摄像设备10的运行参数进行调整。其中,app向cameraproxy发送摄像设备10的运行参数的调整指令。示例性的,该调整指令可以是指示摄像设备10将运行参数降低一级,如将分辨率由4k降低为2k等等。
104.s116、cameraproxy通过uvc通道向摄像设备10发送运行参数的调整指令。
105.s117、摄像设备10调整运行参数。
106.具体的,摄像设备10接收到调整指令后,可以对其运行参数进行调整。例如,将分辨率由4k降低为2k等等。
107.可以理解的是,摄像设备10在调整运行参数后,其状态参数通常难以立即出现变化,因此摄像设备10可以在其运行一段时间后再重新检测对其状态参数进行检测,即执行s110。
108.示例性的,s114的具体步骤可以如图6所示。具体来说,s114可以包括:
109.s11411、确定摄像设备10所支持的n个运行参数中各个运行参数分别对应的参数值的参数值集合,n为大于0的正整数。
110.具体的,app可以利用其上的摄像设备10支持能力查询接口,查询到摄像设备10所支持的运行参数,如分辨率、帧率或码率等,以及各个运行参数分别对应的参数值。当app接收到摄像设备10反馈的异常信息后,app可以基于其查询到的摄像设备10所支持的运行参数和相应的运行参数对应的参数值,进而得到摄像设备10所支持的n个运行参数中各个运行参数分别对应的参数值的参数值集合。
111.举例来说,若摄像设备10支持的分辨率为:3840x2160(即4k)、2560x1440(即2k)、1920x1080(即1080p)和1280x720(即720p),则在摄像设备10所支持的分辨率对应的参数值的参数值集合为{4k,2k,1080p,720p}。
112.s11412、确定n个运行参数中k个运行参数中各个运行参数分别对应的k个参数值集合中均包括多个参数值,k≤n。
113.具体的,在得到各个运行参数对应的参数值集合后,可以从参数值集合中所包含的参数值的数量,确定出相应的运行参数是否具有多个参数值,由此得到k个运行参数对应的参数值集合中均包括多个参数值。
114.举例来说,若分辨率对应的参数值的参数值集合为{4k,2k,1080p,720p},则分辨率具有多个参数值;若分辨率对应的参数值的参数值集合为{4k},则分辨率不具有多个参数值。
115.可以理解的是,当k为0时,可以表明摄像设备10不具备参数调节能力。
116.s11413、确定摄像设备10运行过程中k个运行参数中至少一个运行参数当前对应的参数值大于目标参数值,目标参数值为至少一个运行参数对应的参数值集合中的最小参数值。
117.具体的,在确定出k个运行参数后,可以确定出摄像设备10当前运行过程中的k个运行参数中各个运行参数对应的参数值,然后将各个运行参数对应的参数值与相应的运行参数对应的参数值集合中最小的一个参数值进行比较,若存在至少一个运行参数对应的参数值大于该运行参数对应的参数值集合中最小的一个参数值,则确定摄像设备10具备参数调节能力,即该摄像设备10的运行参数可以下降一级。
118.可以理解的是,本技术实施例中,app在接收到摄像设备10发送的异常信息后,如果此时app难以使用摄像设备10以较低的运行参数采集到的数据,或者用户禁止使用摄像设备10以较低的运行参数运行,则app可以不向摄像设备10发送运行参数的调整指令。
119.举例来说,如图7a所示,摄像设备10为摄像头,电子设备20为电脑,摄像头为外设设备。此时用户正在电脑上使用社交app与朋友视频通话。在摄像头运行过程中,摄像头检
测到其运行温度过高,其可以向社交app发送异常信息。社交app接收到异常信息后,可以在其显示界面上向用户发送提示信息。如图7b所示,社交app上可以显示提示信息,该提示信息可以为电脑的显示界面a上区域a1处的信息,即“摄像头异常,是否降低分辨率”。继续参阅图7b,若用户选择区域a2处的“是”按键,社交app则向摄像头发送调整分辨率的指令,之后,摄像头即可以按照较低的分辨率运行;若用户选择区域a3处的“否”按键,社交app则可以不向摄像头发送调整分辨率的指令,此时,摄像头即按照其当前的分辨率继续运行。其中,在图7b中,用户在选择“是”或“否”的按键时,用户可以通过点击、语音或手势等进行操作,具体可根据实际情况而定,在此不做限定。此外,电脑上的提示信息除了以图7b中的形式出现之外,该提示信息还可以是语音信息等。
120.在一些实施例中,图5所示的流程中,电子设备20上的app也可以是预先配置的可以动态调整摄像设备的app。此时,app在运行过程中可以对摄像设备的运行参数进行动态调整。示例性的,该app可以使用摄像设备以同一运行参数的不同参数值采集到的数据,例如,该app可以使用摄像设备采集的4k分辨率的视频数据,也可以使用摄像设备采集的2k分辨率的视频数据等等。
121.基于上述实施例中的方法,本技术实施例还提供了一种芯片。请参阅图8,图8为本技术实施例提供的一种芯片的结构示意图。如图8所示,芯片800包括一个或多个处理器801以及接口电路802。可选的,芯片800还可以包含总线803。其中:
122.处理器801可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器801中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器801可以是通用处理器、数字通信器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。接口电路802可以用于数据、指令或者信息的发送或者接收,处理器801可以利用接口电路802接收的数据、指令或者其它信息,进行加工,可以将加工完成信息通过接口电路802发送出去。
123.可选的,芯片还包括存储器,存储器可以包括只读存储器和随机存取存储器,并向处理器提供操作指令和数据。存储器的一部分还可以包括非易失性随机存取存储器(nvram)。可选的,存储器存储了可执行软件模块或者数据结构,处理器可以通过调用存储器存储的操作指令(该操作指令可存储在操作系统中),执行相应的操作。
124.可选的,接口电路802可用于输出处理器801的执行结果。
125.需要说明的,处理器801、接口电路802各自对应的功能既可以通过硬件设计实现,也可以通过软件设计来实现,还可以通过软硬件结合的方式来实现,这里不作限制。
126.应理解,上述方法实施例的各步骤可以通过处理器中的硬件形式的逻辑电路或者软件形式的指令完成。其中,该芯片可应用于上述摄像设备10中,以实现本技术实施例中提供的摄像设备10所执行的方法;此外,该芯片可应用于上述电子设备20中,以实现本技术实施例中提供的电子设备20所执行的方法。
127.可以理解的是,本技术的实施例中的处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现
场可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。通用处理器可以是微处理器,也可以是任何常规的处理器。
128.本技术的实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,ram)、闪存、只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)、寄存器、硬盘、移动硬盘、cd-rom或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic中。
129.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
130.可以理解的是,在本技术的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本技术的实施例的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献