车载信息娱乐系统及其早期影像显示的方法
技术领域
本发明涉及车内电子系统的设计,特别涉及车载信息娱乐系统及其早期影像显示的方法。
背景技术
现今,车载信息娱乐系统为丰富用户操作及提升用户的车内体验,设置了许多影像相关的功能,例如开机动画、倒车影像等。对于开机动画及倒车影像,目前的通常做法都是通过系统中的应用软件采集相关的影像素材(对于开机动画是多媒体影像文件、对于倒车影像是摄像头采集的视频影像)并通过相应图像处理后呈现给用户。由于上述的应用软件需要等待系统启动完成后才能运行,使得用户等待开机动画及倒车影像的时间较长。以用户从停车场取车并从停车位倒车出库的场景为例,用户从开机到看到倒车影像的时间通常需要十几秒,这无疑降低了用户体验。
目前业界针对此问题提供了一些解决方案,但这些解决方案大都是从改动系统内核或底层驱动来考虑。这些解决方案虽然能够相对以往较快速地显示影像,但改动系统内核或底层驱动的方式也相应会给系统稳定性带来风险。
发明内容
本发明解决的问题是提供能更可靠地满足车载信息娱乐系统早期影像显示需求的方案。
为了解决上述问题,本发明提供一种车载信息娱乐系统早期影像显示的方法,在系统开机启动时即加载早期影像显示服务,早期影像显示服务包括:通过主应用处理器的硬件端口获得车辆当前档位信息;主应用处理器在当前档位处于倒档状态时,通过其与车载摄像头的硬件接口直接获得车载摄像头的影像数据,由主应用处理器中的硬件影像处理器对影像数据进行适于显示屏显示的处理,将处理后获得的倒车影像通过主应用处理器与显示屏间的硬件接口传输至显示屏以呈现用户;主应用处理器在当前档位未处于倒档状态时,通过其与片外存储器的硬件接口获得开机动画素材,由主应用处理器的硬件视频处理器对开机动画素材进行适于显示屏显示的处理,将处理后获得的开机动画通过主应用处理器与显示屏间的硬件接口传输至显示屏以呈现用户。
本发明还提供一种车载信息娱乐系统,包括主机及与主机间通过硬件接口连接的包括显示屏及车载摄像头的多个外设,并通过外设向用户提供相应的功能服务,主机中的主应用处理器在系统开机启动时即通过硬件端口获取车辆当前档位信息;主应用处理器在当前档位处于倒档状态时,通过其与车载摄像头的硬件接口直接获得车载摄像头的影像数据,由主应用处理器中的硬件影像处理器对影像数据进行适于显示屏显示的处理,将处理后获得的倒车影像通过主应用处理器与显示屏间的硬件接口传输至显示屏以呈现用户;主应用处理器在当前档位未处于倒档状态时,通过其与片外存储器的硬件接口获得开机动画素材,由主应用处理器的硬件视频处理器对开机动画素材进行适于显示屏显示的处理,将处理后获得的开机动画通过主应用处理器与显示屏间的硬件接口传输至显示屏以呈现用户。
与现有技术相比,上述方案具有以下优点:在系统启动期间直接通过主应用处理器的硬件来提供开机动画及倒车影像功能,不依靠系统启动完成才运行的应用软件。由于无须等待系统启动完成,用户等待影像显示的时间可以大幅缩短。通过在主应用处理器上加载软件服务来控制硬件,并未改动系统内核或底层驱动,也能避免因改动系统内核或底层驱动导致的系统稳定性风险。
附图说明
图1是根据本发明实施例的早期倒车影像显示服务的处理示意图;
图2是根据本发明实施例的早期开机动画显示服务的处理示意图;
图3是根据本发明实施例的早期影像显示服务在各场景下的处理逻辑示意图;
图4是根据本发明实施例的车载信息娱乐系统提供早期影像显示服务的硬件结构示意图。
具体实施方式
在下面的描述中,阐述了许多具体细节以便使所属技术领域的技术人员更全面地了解本发明。但是,对于所属技术领域内的技术人员明显的是,本发明的实现可不具有这些具体细节中的一些。此外,应当理解的是,本发明并不限于所介绍的特定实施例。相反,可以考虑用下面的特征和要素的任意组合来实施本发明,而无论它们是否涉及不同的实施例。因此,下面的方面、特征、实施例和优点仅作说明之用而不应被看作是权利要求的要素或限定,除非在权利要求中明确提出。
本发明的发明人认为,目前的车载信息娱乐系统在实现开机动画及倒车影像功能时,除了上述背景技术提到的等待时间较长之外,还存在浪费系统处理器资源以致降低系统启动性能的缺陷。具体地说,目前的车载信息娱乐系统在实现开机动画及倒车影像功能时,一般都通过人机交互软件来实现。对于开机动画功能,这些人机交互软件需要利用软件解码库将开机动画的视频文件解码成多个视频帧图片,再按一定时序传输至显示屏以显示给用户;对于倒车影像功能,这些人机交互软件在将车载摄像头拍摄的影像传输至显示屏以显示给用户之前,需要先将车载摄像头的原始图像数据进行格式转换处理。上述这些人机交互软件的影像处理都需要消耗大量的系统CPU的资源。而在系统启动之初,也是各种其他系统服务都需要系统CPU资源的时候。因而,会出现争抢系统CPU资源的问题。要么,其他系统服务因为拿不到足够的系统CPU资源而延迟启动,要么,开机动画及倒车影像会因为得不到系统CPU资源进行影像处理而出现卡顿。
相对地,本发明提供的早期影像显示的方法,其将开机动画及倒车影像的影像处理分配至主应用处理器中相应的硬件处理器进行处理。由于不依靠上述人机交互软件,一方面不用等待系统启动完成,另一方面也不致因人机交互软件所需的影像处理而占用大量系统CPU资源。显然,这不仅使得用户等待影像显示的时间可以大幅缩短,相对现有技术的处理方式,开机动画及倒车影像功能的实现也不需要在系统启动之初再去与其他系统服务争抢系统CPU资源,使得系统CPU资源的损耗也大幅下降,因而提升了系统启动的整体性能。
以下结合举例对本发明早期影像显示的方法进行详细说明。
如上述提到的本发明早期影像显示方法的实现过程,对于早期影像显示服务,主应用处理器通过其硬件端口来获得当前档位信息。具体地,主应用处理器的系统CPU通过硬件端口的信号电平来获得当前档位信息。例如,参照图3所示的实施例,主应用处理器在信号电平为高时确定当前档位为倒档状态。由于早期影像显示服务在加载之初默认状态为空闲,此时可确认将向用户提供早期倒车影像显示服务。因此,早期影像显示服务将触发早期倒车影像的处理逻辑开始早期倒车影像的处理,而早期影像显示服务的状态也会更新为早期倒车影像状态。具体地,参照图1所示的早期倒车影像显示服务的实例,主应用处理器通过硬件接口直接获得车载摄像头采集的影像数据,该影像数据会被暂时存储在软件逻辑定义的采集数据缓存中。当硬件影像处理器要对影像数据进行处理时,其从软件逻辑定义的输出数据缓存中调取影像数据。
常规地,会将采集数据缓存和输出数据缓存各自匹配到不同的物理存储区段,会需要将影像数据从采集数据缓存匹配的存储区段复制到输出数据缓存匹配的存储区段中以备调取。为了进一步减少用户等待倒车影像显示的时间,可对主应用处理器外的物理的片外缓存进行预先配置。具体地,在物理的片外缓存中配置第一存储区段,用于存储通过硬件接口从车载摄像头获得的影像数据;以及,在物理的片外缓存中指定第一存储区段,供硬件影像处理器调取影像数据进行处理。即,将采集数据缓存和输出数据缓存匹配到物理的片外缓存的同一存储区段。这样可以免去上述影像数据复制的时间,从而进一步减少用户等待倒车影像显示的时间。在硬件影像处理器调取影像数据进行处理后,其通过主应用处理器与显示屏的硬件接口将处理后的影像数据传输至显示屏,以呈现用户。
从上述举例的早期倒车影像显示服务实现过程可知,除了需要系统CPU确认档位信息和相关的硬件配置,其他处理环节都通过硬件来进行数据传输及处理,并不需要系统CPU分配相应的资源来支持,也不需要依赖任何系统应用软件。经过实测,利用该种方式能够最快在3秒左右就能向用户呈现倒车影像。因此,在大幅减少用户等待时间的同时也节约了系统CPU资源,使得其他系统服务能够获得更多地系统CPU资源,从而加速整个系统的启动。
以下继续参照图3所示的实施例说明对早期开机动画的处理,假设此时仍为系统刚开机启动时。主应用处理器的系统CPU在信号电平为低时确定当前档位为非倒档状态。由于早期影像显示服务在加载之初默认状态为空闲,此时可确认将向用户提供早期开机动画显示服务。因此,早期影像显示服务将触发早期开机动画的处理逻辑开始早期开机动画的处理,而早期影像显示服务的状态也会更新为早期开机动画状态。具体地,参照图1所示的早期开机动画显示服务的实例,主应用处理器通过硬件接口直接从片外存储器获得开机动画素材,动画素材会被暂时存储在视频帧缓存中。接着,由主应用处理器的硬件视频处理器调取视频帧缓存中的开机动画素材进行适于显示屏显示的处理,随后将处理后获得的开机动画通过主应用处理器与显示屏间的硬件接口传输至显示屏以呈现用户。
从上述举例的早期开机动画显示服务实现过程可知,除了需要系统CPU确认档位信息和相关的硬件配置,其他处理环节都通过硬件来进行数据传输及处理,并不需要系统CPU分配相应的资源来支持,也不需要依赖任何系统应用软件。经过实测,利用该种方式能够最快在3秒左右就能向用户呈现开机动画。因此,在大幅减少用户等待时间的同时也节约了系统CPU资源,使得其他系统服务能够获得更多地系统CPU资源,从而加速整个系统的启动。
考虑到用户上车后可能在开机动画播放之时从停车位出库而需要倒车,因此本发明的实施例还提供了针对此场景的早期倒车影像显示服务。继续参照图3所示,主应用处理器的系统CPU在信号电平为高时确定当前档位为倒档状态,而当前由于正在播放开机动画,因而早期影像显示服务的状态为开机动画状态。此时,由于倒车影像显示服务的优先级高于开机动画显示服务,早期影像显示服务将暂停开机动画处理并触发早期倒车影像的处理逻辑开始早期倒车影像的处理,而早期影像显示服务的状态也会更新为早期倒车影像状态。后续的早期倒车影像处理与上述实例相同,此处不再赘述。
上述举例说明的早期倒车影像显示服务及早期开机动画显示服务都是在系统启动过程中实现的。而当系统启动完成后,专门提供用户界面显示处理的处理软件(此处称为常规应用显示)和倒车应用显示的处理软件也随着系统启动完成而处于可运行的状态。例如,常规应用显示在处于可运行状态时会通知早期影像显示服务其已准备完毕。假设当前正在播放开机动画,当早期影像显示服务获得这个通知后,其会停止早期动画开机处理。因为当系统启动完成后,就可转入正常的用户界面显示了(由常规应用显示来处理)。并且,早期影像显示服务还将其状态更新为空闲状态。此外,当倒车应用显示在处于可运行状态时,也会通知早期影像显示服务其已准备完毕。这也意味着后续的倒车显示服务也将由倒车应用显示来接管处理。因此,早期影像显示服务所需支持的场景也已结束,早期影像显示服务就此终止。
基于以上说明,本发明提供的早期影像显示的方法在系统启动之初就可根据当前档位实际的状态(倒档或非倒档)而提供相应的快速显示的开机动画或倒车影像显示。而在系统启动完成后,也可顺滑切换至通常的用户界面或倒车显示。因此,用户的体验也获得了大幅提高。
对应上述方法,本发明还提供了一种车载信息娱乐系统,其包括主机及与主机间通过硬件接口连接的包括显示屏及车载摄像头的多个外设。目前较为通用的方式是将主机与显示屏装配在一起,或者通过线束(例如LVDS线)将主机与显示屏连接,而主机与车载摄像头间通过线束连接。主机通过控制车载信息娱乐系统的各项功能,并通过外设向用户提供相应的功能服务。主机包括一块或多块PCB板,其上集成有主应用处理器及一个或多个其他应用处理器。有关应用处理器(AP,Application Processor),其是目前嵌入式系统设计中最常采用的硬件处理器,其通常由半导体设计商按一定功能需求将CPU及一些端口和特定功能的硬件处理器封装到一个单片中。由此,其他集成在同一PCB板上的其他模块,例如缓存/存储器等通常都被称为片外缓存/片外存储器。而在车载信息娱乐系统中进行核心控制的应用处理器就是上述的主应用处理器,其中的CPU也被称为系统CPU(上述方法举例说明中的系统CPU也具备相同含义)。目前可适用于本发明车载信息娱乐系统的主应用处理器有多种选择方案,例如恩智浦公司的i.MX6系列。
图4提供了根据本发明车载信息娱乐系统的一种硬件实施例结构示意图。参照图4所示,早期影像显示服务主要由主应用处理器中的系统CPU控制,系统CPU从GPIO端口的信号电平来获得当前档位信息,该档位信息可以是主机的其他应用处理器在解析CAN消息后发送至GPIO端口的。系统CPU依据档位信息而相应触发硬件影像处理器或硬件视频处理器的处理。硬件影像处理器通过CSI(Camera Sensor Interface)端口获得摄像头的影像数据,其处理中所需的存储空间由物理片外缓存(位于主机中)提供,经处理后的影像数据经LVDS端口传送至显示屏以呈现用户。硬件视频处理器从片外存储器获得开机动画素材进行处理,处理后的开机动画会经由硬件影像处理器、LVDS端口而传送至显示屏以呈现用户。基于该硬件结构所涉及的早期倒车影像显示服务及早期开机动画显示服务的处理过程可参考上述实例说明,此处不再赘述。
虽然本发明已以较佳实施例披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内所作的各种更动与修改,均应纳入本发明的保护范围内,因此本发明的保护范围应当以权利要求所限定的范围为准。