一种摄像头开启测试方法、装置、设备和存储介质制造方法及图纸

技术编号:18663033 阅读:46 留言:0更新日期:2018-08-11 16:37
本发明专利技术公开了一种摄像头开启测试方法、装置、设备和存储介质。包括:向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常;在确认所述开启指令被所述摄像头接收成功且所述摄像头开启失败时,抛出硬件启动异常。本发明专利技术通过捕获超时判断后的异常信息,可解决不同厂商的摄像头的超时处理问题,获取异常不需要不依赖数据源的发送,简单高效。

Camera opening test method, device, device and storage medium

The invention discloses a camera opening test method, a device, a device and a storage medium. Including: sending an opening instruction to the camera, throwing an instruction transmission exception when confirming that the opening instruction has been received by the camera, and throwing a hardware start exception when confirming that the opening instruction has been received successfully by the camera and the camera has failed to open. By capturing the abnormal information after the time-out judgment, the invention can solve the problem of time-out processing of cameras of different manufacturers, and obtains the abnormal information without relying on the transmission of data sources, so it is simple and efficient.

【技术实现步骤摘要】
一种摄像头开启测试方法、装置、设备和存储介质
本专利技术实施例涉及连接检测技术,尤其涉及一种摄像头开启测试方法、装置、设备和存储介质。
技术介绍
摄像头在日常生活中的应用越来越常见,不同厂家会对摄像头做一些特殊处理,导致了用户在开启摄像头的时候,主机需要增加额外的逻辑来开启摄像头。摄像头属于硬件资源,在某些情况下存在开启不了的现象。不同厂商对于摄像头所使用的图像传感器不一致,导致开启摄像头需要设置的参数也有所不同。针对判定摄像头开启异常的情况,采用的方法一般是设置超时判断,当超出某个时间限制,抛出异常进行捕获处理。但是,在Rxjava中,常用的timeout操作符在处理超判断时会存在一个问题,只有当Observable发送了数据的时候,timeout才会启动一个计时器,如果超过指定时间没有发送下一个数据,那么Observable发送一个onError终止通知这个Observable。可是,当我们开启摄像头这个操作都阻塞的时候,那么设置的超时策略其实是无效的。此时,不仅摄像头开启不了,而且也无法抛出异常,此时会出现程序无响应的情况。
技术实现思路
本专利技术提供一种摄像头开启测试方法、装置、设备和存储介质,以实现通过捕获超时判断后的异常信息的问题。第一方面,本专利技术实施例提供了一种摄像头开启测试方法,包括:向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常;在确认所述开启指令被所述摄像头接收成功且所述摄像头开启失败时,抛出硬件启动异常。第二方面,本专利技术实施例还提供了一种摄像头开启测试装置,包括:传输异常抛出模块,用于向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常;启动异常抛出模块,用于在确认所述开启指令被所述摄像头接收成功且所述摄像头开启失败时,抛出硬件启动异常。第三方面,本专利技术实施例还提供了一种设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序;摄像头,用于被检测是否成功开启;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如实施例中任一所述的摄像头开启测试方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如实施例中任一所述的摄像头开启测试方法。本专利技术通过捕获超时判断后的异常信息,解决不同厂商的摄像头的超时处理问题,实现获取异常不需要不依赖数据源的发送,简单高效。附图说明图1是本专利技术实施例一提供的一种摄像头开启测试方法的流程图;图2为本专利技术实施例二提供的一种摄像头开启测试方法的流程图;图3为本专利技术实施例三提供的一种摄像头开启测试装置的结构示意图;图4为本专利技术实施例四提供的一种摄像头开启测试设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1是本专利技术实施例一提供的一种摄像头开启测试方法的流程图。本实施例可适用于将摄像头连接于设备时,判断摄像头是否连接失败的情况,该方法可以由一种摄像头开启测试装置来执行,该装置可以通过软件的方式实现,并集成在设备中。其中,摄像头可分为数字摄像头和模拟摄像头两大类。数字摄像头可以将视频采集设备产生的模拟视频信号转换成数字信号,进而将其储存在计算机里。模拟摄像头捕捉到的视频信号必须经过特定的视频捕捉卡将模拟信号转换成数字模式,并加以压缩后才可以转换到计算机上运用。数字摄像头可以直接捕捉影像,然后通过串、并口或者通用串行总线接口传到计算机里。本专利技术可针对不同厂商的摄像头进行连接判定,故不对摄像头类型作限定。参考图1,本专利技术实施例具体包括如下步骤:S110、向摄像头发送开启指令。其中,开启指令是指开启摄像头的指令,是所有对摄像头操作的基础指令。具体的,当摄像头接收到开启指令之后,执行判断所述开启指令是否被所述摄像头接收成功的操作。S120、判断所述开启指令是否被所述摄像头接收成功。若被所述摄像头接收成功,则执行S130;若没有被摄像头接收成功,则执行S131。S130、判断摄像头是否开启成功。若开启成功,执行S140;若开启失败,执行S141。具体的,当摄像头成功接收到开启指令时,开始执行开启摄像头的操作。S131、抛出指令传输异常。具体的,当摄像头没有成功接收到开启指令时,抛出指令传输异常。可通过获得这个指令传输异常,解析出摄像头接收不到指令的具体原因。S140、启动摄像头。具体的,摄像头开启成功后,可通过连接屏幕显示摄像头获得的画面,也可以直接显示“摄像设备连接成功”等提示语言。S141、抛出硬件启动异常。具体的,当摄像头开启失败时,抛出硬件启动异常。可通过获得这个硬件启动异常,解析出摄像头无法开启的原因。从主机端来讲,接受指令传输异常或接收硬件启动异常在时间上不会有太大的时间差,但是可以通过对异常的解析,得到异常的类型,从而判定出摄像头连接失败的具体问题所在。如果判定为指令传输异常,则可能是主机端软件设置存在问题、主机端接口存在问题或主机端与摄像头连接存在问题。如果判定为硬件启动异常,则可以判定为摄像头设备本身存在问题,那么可以通过更换摄像头设备解决问题。本专利技术通过捕获超时判断后的异常信息,可解决不同厂商的摄像头的超时处理问题,获取异常不需要不依赖数据源的发送,简单高效的确定产生摄像头连接失败的原因,便于及时处理问题。实施例二图2为本专利技术实施例二提供的一种摄像头开启测试方法的流程图。本实施例是在实施例一基础上的细化,具体描述了如何通过设置函数产生并获得指令传输异常。具体的:向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常,包括:向摄像头发送开启指令,开启第一线程以接收摄像头响应所述开启指令的返回参数;若在预设时间内所述第一线程未接收到所述摄像头响应所述开启指令的返回参数,抛出指令传输异常。进一步的,若所述摄像头开启成功,终止所述第一线程。进一步的,显示所述摄像头的异常类型,终止所述摄像头的开启过程。具体的,参考图2,本实施例提供的方法具体包括:S210、向摄像头发送开启指令。S220、开启第一线程以接收摄像头响应所述开启指令的返回参数。具体的,开启第一线程之前先去掉原先Rxjava中设置的timeout操作符,原先是将开启摄像头这个操作作为整条数据发送,这也是各个厂家自由设置的数据,因为不同timeout操作符的设置,导致不同厂商开启摄像头需要设置的参数也有所不同。去掉timeout操作符后开启一个子线程(第一子线程)并获取一个ExcutorService,然后通过ExcutorService中的submit方法执行一个新的Callable,并返回一个Future。其中,ExecutorService提供了管理终止的方法,以及可为跟踪一个或多个异步任务执行状况而生成Future的方法。S230、判断在预设时间内是否接收到摄像头响应开启指令的返回参数。若接收到返回参数,则执行S240;若没有接收到返回参数,则执行S241。其中,预设时间是人为设定的时间,可根据摄像头的属性、设备之间的具体连接方式等本文档来自技高网...

【技术保护点】
1.一种摄像头开启测试方法,其特征在于,包括:向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常;在确认所述开启指令被所述摄像头接收成功且所述摄像头开启失败时,抛出硬件启动异常。

【技术特征摘要】
1.一种摄像头开启测试方法,其特征在于,包括:向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常;在确认所述开启指令被所述摄像头接收成功且所述摄像头开启失败时,抛出硬件启动异常。2.根据权利要求1所述的方法,其特征在于,所述向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常,包括:向摄像头发送开启指令,开启第一线程以接收摄像头响应所述开启指令的返回参数;若在预设时间内所述第一线程未接收到所述摄像头响应所述开启指令的返回参数,抛出指令传输异常。3.根据权利要求2所述的方法,其特征在于,所述方法,还包括:若所述摄像头开启成功,终止所述第一线程。4.根据权利要求1所述的方法,其特征在于,所述抛出指令传输异常之后,还包括:显示所述摄像头的异常类型,终止所述摄像头的开启过程。5.一种摄像头开启测试装置,其特征在于,包括:传输异常抛出模块,用于向摄像头发送开启指令,在确认所述开启指令被所述摄像头接收失败时,抛出指令传输异常;启动异常抛出模块,用于在确认所述开启指令被所述摄像头接收...

【专利技术属性】
技术研发人员:杨蒙
申请(专利权)人:广州视源电子科技股份有限公司广州视臻信息科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1