CN110489072B - 一种智能座舱多屏同步的方法、装置及智能座舱 - Google Patents
一种智能座舱多屏同步的方法、装置及智能座舱 Download PDFInfo
- Publication number
- CN110489072B CN110489072B CN201910770084.XA CN201910770084A CN110489072B CN 110489072 B CN110489072 B CN 110489072B CN 201910770084 A CN201910770084 A CN 201910770084A CN 110489072 B CN110489072 B CN 110489072B
- Authority
- CN
- China
- Prior art keywords
- data
- screen
- screens
- synchronization
- picture
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Controls And Circuits For Display Device (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请公开了一种智能座舱多屏同步的方法、装置及智能座舱。方法应用于智能座舱的车机,利用gstreamer中的tee组件将需要同步的数据复制为N份;利用queue组件建立N个独立的线程,每个屏幕对应一个线程;通过N个独立的线程将N份数据分别发送给N个屏幕使其进行画面同步显示。车机向不同屏幕发送的数据是相同的数据,由于各个屏幕的数据来源相同,因此即便播放时间逐渐增加,各个屏幕的播放进度也是相同的,多屏同步效果非常好。此外车机通过N个独立的线程将N份数据分别发送给N个屏幕,各个线程中的数据互不干扰,避免因单个线程数据阻塞而影响到其他线程所对应的屏幕的画面同步显示效果。本申请提升了多屏同步的可靠性。
Description
技术领域
本申请涉及智能座舱技术领域,特别是涉及一种智能座舱多屏同步的方法、装置及智能座舱。
背景技术
随着汽车产业的逐渐发展,车辆功能日益丰富。现如今,车载智能座舱在越来越多的车辆上得以实现。车载智能电子座舱通常可具备全液晶仪表、平视显示器和车载娱乐系统,能够通过后座搭载的屏幕使后座乘客获得娱乐体验。
车内多屏同步是提升乘客体验的一项重要功能。例如,前排乘客正在观看一个视频,在智能座舱内,该乘客通过多屏同步的方式将视频同步共享给后座乘客,增强了乘客间的互动,提升乘坐乐趣。
目前已有的技术方案中,通过差额比较算法计算同步时需要偏移的进度值,并按照进度值进行跳跃。但是其缺点在于,即便同步完成,在视频的整个播放过程中也会因为播放时间的增加导致多屏同步效果变差。
发明内容
基于上述问题,本申请提供了一种智能座舱多屏同步的方法、装置及智能座舱,以提升多屏同步效果。
本申请实施例公开了如下技术方案:
第一方面,本申请提供一种智能座舱多屏同步的方法,应用于智能座舱的车机;包括:
利用gstreamer中的tee组件将需要同步的数据复制为N份,所述N为需要同步的屏幕数量;
利用gstreamer中的queue组件建立N个独立的线程,每个所述屏幕对应一个所述线程;
通过所述N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示。
可选地,所述通过所述N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示,具体包括:
所述N个独立的线程将N份数据分别提供给N个数据显示组件;每个所述数据显示组件对应一个所述屏幕;每个所述数据显示组件携带一个标识号;
每个所述数据显示组件根据自身的所述标识号将所述数据提供给对应的屏幕进行画面同步显示。
可选地,在所述N个独立的线程将N份数据分别提供给N个数据显示组件之后,所述方法还包括:
设置所述N份数据的可见性属性为可见;停止显示所述屏幕当前显示的画面。
可选地,方法还包括:接收屏幕发送的取消同步的请求,设置所述数据显示组件对应的数据的可见性属性为不可见。
可选地,方法还包括:从移动存储设备或者所述车机的存储器中获取所述需要同步的数据。
可选地,当所述N为大于或等于3时,对应的需要同步的屏幕分别为中央控制屏和车辆座位后部设置的屏幕;
当所述N为2时,对应需要同步的屏幕分别是车辆两个不同座位后部设置的屏幕。
第二方面,本申请提供一种智能座舱多屏同步的装置,应用于智能座舱的车机;包括:
复制模块,用于利用gstreamer中的tee组件将需要同步的数据复制为N份,所述N为需要同步的屏幕数量;
线程建立模块,用于利用gstreamer中的queue组件建立N个独立的线程,每个所述屏幕对应一个所述线程;
数据发送模块,用于通过所述N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示。
可选地,所述数据发送模块,具体包括:
第一发送单元,用于通过所述N个独立的线程将N份数据分别提供给N个数据显示组件;每个所述数据显示组件对应一个所述屏幕;每个所述数据显示组件携带一个标识号;
第二发送单元,用于利用每个所述数据显示组件自身的所述标识号将所述数据提供给对应的屏幕进行画面同步显示。
可选地,装置还包括:
设置模块,用于设置所述N份数据的可见性属性为可见;停止显示所述屏幕当前显示的画面。
可选地,装置还可以进一步包括:
取消同步请求接收模块,用于接收屏幕发送的取消同步的请求;
设置模块,还用于根据取消同步的请求设置所述数据显示组件对应的数据的可见性属性为不可见。
可选地,多屏同步装置还可进一步包括:
数据获取模块,用于从移动存储设备或者所述车机的存储器中获取所述需要同步的数据。其中,移动存储设备可以包括但不限于移动硬盘,U盘等。
第三方面,本申请提供一种智能座舱,包括:车机和N个屏幕;所述车机用于上述第一方面提供的方法;
所述N个屏幕,用于根据所述车机发送的数据进行画面同步显示。
相较于现有技术,本申请具有以下有益效果:
该方法中,需要同步的数据被复制为N份相同的数据,因此智能座舱的车机向不同屏幕发送的数据是相同的数据,由于各个屏幕的数据来源相同,因此即便播放时间逐渐增加,各个屏幕的播放进度也是相同的,多屏同步效果非常好。此外,车机通过N个独立的线程将N份数据分别发送给N个屏幕,以使N个屏幕进行画面同步显示,因此,各个线程中的数据互不干扰,避免因单个线程数据阻塞而影响到其他线程所对应的屏幕的画面同步显示效果。可见,该方法提升了多屏同步的可靠性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种智能座舱多屏同步方法的流程图;
图2为本申请实施例提供的另一种智能座舱多屏同步方法的流程图;
图3为本申请实施例提供的一种双屏同步的数据流示意图;
图4为本申请实施例提供的一种三屏同步的数据流示意图;
图5为本申请实施例提供的三屏同步场景下同步前各屏幕的画面显示示意图;
图6为本申请实施例提供的三屏同步场景下同步后各屏幕的画面显示示意图;
图7为本申请实施例提供的三屏同步场景下取消同步前各屏幕的画面显示示意图;
图8为本申请实施例提供的三屏同步场景下取消同步后各屏幕的画面显示示意图;
图9为本申请实施例提供的三个屏幕同步前各自显示的画面;
图10为本申请实施例提供的三个屏幕同步后各自显示的画面;
图11为本申请实施例提供的三个屏幕取消同步后各自显示的画面;
图12为本申请实施例提供的一种智能座舱多屏同步装置的结构示意图;
图13为本申请实施例提供的一种智能座舱的结构示意图。
具体实施方式
现如今,为满足乘客的娱乐需求,越来越多的车辆设置多个屏幕。屏幕可以是中央控制屏(主屏),还可以是设置于车辆座位后部的屏幕(副屏)。设置多个屏幕并提供多屏同步功能可以增强乘客之间的互动,提升乘客的乘坐乐趣。
目前可以通过以下方式实现多屏同步。假设车内设有屏幕A和屏幕B,其中屏幕A正在播放视频文件C,车上用户通过操控屏幕B发起同步。实时获取屏幕A上视频文件C的播放进度,以及屏幕A的系统时间。根据屏幕A的播放进度和系统时间,以及屏幕B的系统时间,通过差额比较算法计算出需要偏移的进度值。利用屏幕B进行同步播放时,只需按照上述进度值进行进度跳跃即可。但是该方法存在较多的不足,以其中较为显著的一点为例,随着播放时间的推进,多屏同步的效果变差。
基于上述问题,发明人经过研究提供一种智能座舱多屏同步的方法、装置及智能座舱。通过将需要同步的数据复制为与需要同步的屏幕等同的份数,并建立同等数量的独立线程,最终以独立的线程将数据分别发送给屏幕,实现多屏幕的画面同步显示。该方法不但能够保障同步效果,同时可靠性非常高。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
方法实施例一
参见图1,该图为本申请实施例提供的一种智能座舱多屏同步方法的流程图。该方法应用于智能座舱的车机。需要说明的是,智能座舱中设有多个屏幕。在实际应用中,中央控制台可以对应一个屏幕,称为中央控制屏,又可称为主屏;车辆座位后也可设置屏幕,例如车辆的每个前排座位后设置一个屏幕,以供后面一排乘客观看,这些屏幕又可称为副屏。此处对于智能座舱中屏幕的设置方式不进行限定。
如图1所示,本实施例提供的智能座舱多屏同步方法,包括:
步骤101:利用gstreamer中的tee组件将需要同步的数据复制为N份,所述N为需要同步的屏幕数量。
本实施例中,具体可以从移动存储设备或者所述车机的存储器中获取需要同步的数据。移动存储设备可以包括但不限于移动硬盘,U盘等。当移动存储设备与车机相互连接时,车机即可控制屏幕显示移动存储设备或车机自带的存储器中的视频文件的画面。当车机未与移动存储设备连接时,车机可以控制屏幕显示车机自带的存储器中的视频文件的画面。
在实际应用中,需要同步的数据可以是智能座舱内某一屏幕正在显示的画面对应的数据。例如,主屏正在显示视频文件D1的画面,观看副屏的乘客要求同步主屏的画面,在此场景下,视频文件D1的数据即作为需要同步的数据。
gstreamer是一种用来构建流媒体应用的开源多媒体框架。gstreamer具有多种组件,例如tee组件和queue组件等。tee组件的作用是对数据进行分流,将一份数据分流为多份,即本申请实施例利用tee组件对需要同步的数据进行复制。例如,需要同步的屏幕数量为N,本步骤即是利用tee组件将需要同步的数据通过复制得到N份相同的数据。N为大于或等于2的整数。
步骤102:利用gstreamer中的queue组件建立N个独立的线程。
queue组件的作用就是建立线程。本实施例中,实现多屏同步的具体方法是将N份数据分别发送到N个需要同步的屏幕,以使其进行画面同步。为降低传输到不同屏幕的数据之间的干扰,本实施例中采用queue组件建立线程,建立的线程数量与需要同步的屏幕数量一致,即线程数量也为N。本实施例中,queue组件建立的N个线程相互独立,每个屏幕对应一个线程。例如,第一屏幕对应第一线程,第二屏幕对应第二线程,…,第N屏幕对应第N线程。
步骤103:通过N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示。
作为示例,通过第一线程将第一份数据发送给第一屏幕,通过第二线程将第二份数据发送给第二屏幕,…,通过第N线程将第N份数据发送给第N屏幕。结合上述示例可知,N个屏幕各自通过相互独立的不同的线程获得相同的数据。各个屏幕将从车机得到的相同数据进行画面的同步显示。例如,第一屏幕,第二屏幕,…,第N屏幕共同播放同一视频的同一画面。
以上即为本申请实施例提供的智能座舱多屏同步方法。该方法不依赖于gstreamer的进度反馈和进度跳跃功能。需要同步的数据被复制为N份相同的数据,因此智能座舱的车机向不同屏幕发送的数据是相同的数据,由于各个屏幕的数据来源相同,因此即便播放时间逐渐增加,各个屏幕的播放进度也是相同的,多屏同步效果非常好。此外,车机通过N个独立的线程将N份数据分别发送给N个屏幕,以使N个屏幕进行画面同步显示,因此,各个线程中的数据互不干扰,避免因单个线程数据阻塞而影响到其他线程所对应的屏幕的画面同步显示效果。可见,该方法提升了多屏同步的可靠性。
为便于理解,下面分别提供需要同步的屏幕数量N=2和N≥3时智能座舱多屏同步的实现场景。
第一种示例场景:两个屏幕同步(N=2)。
在该场景中,需要同步的两个屏幕可以分别是车辆两个不同座位后部设置的屏幕,即两个副屏。假设此两个副屏分别为:第一副屏和第二副屏。乘客通过触控第一副屏上的相应模块,使第一副屏向车机发送与第二副屏建立同步的请求。车机可以根据该请求,将第二副屏显示的画面对应的数据作为需要同步的数据执行上述实施例提供的多屏同步方法。通过执行该方法,第一副屏和第二副屏实现画面的同步显示。在该场景中,副屏之间画面同步不会影响到使用主屏的驾驶员,从而不会影响驾驶员的正常驾驶,同时丰富了乘客的乘车娱乐体验。
另外,需要同步的两个屏幕还可以是车辆的中央控制屏和车辆作为后部设置的屏幕,即一个主屏一个副屏。乘客通过触控副屏上的相应模块,使副屏向车机发送与主屏建立同步的请求。车机可以根据该请求,将主屏显示的画面对应的数据作为需要同步的数据执行上述实施例提供的多屏同步方法。通过执行该方法,该两个屏幕实现画面的同步显示。
第二种示例场景:两个以上屏幕同步(N≥3)。
在该场景中,需要同步的屏幕分别是中央控制屏和车辆座位后部设置的屏幕,即一个主屏多个副屏。假设多个副屏分别为:第三副屏和第四副屏。作为一可能的实现方式,乘客通过触控第三副屏上的相应模块,使第三副屏向车机发送所有需要同步的副屏与主屏建立同步的请求。作为另一可能的实现方式,乘客通过触控每个需要同步的副屏上的相应模块,使每个需要同步的副屏向车机发送各自与主屏建立同步的请求。车机可以根据以上任一实现方式发送的请求,将主屏显示的画面对应的数据作为需要同步的数据执行上述实施例提供的多屏同步方法。通过执行该方法,第三副屏和第四副屏实现与主屏的画面同步显示。
结合以上两种示例场景可知,在本申请实施例中,副屏可以主动向车机发送与主屏建立同步或与其他副屏建立同步的请求。在实际应用中,作为一种可能的实现方式,主屏也可以向车机发送与副屏建立同步的请求。因此,此处对于向车机发出同步请求的屏幕不加以限定。
目前,基于gstreamer的进度反馈和进度跳跃功能实现智能座舱的多屏同步的方法,即便同步完成,也需要在整个播放过程中持续运行差额比较算法以维持同步效果。这样导致同步时间增长,CPU占用高,影响CPU对其他车载功能的支持。为解决上述问题,在提升智能座舱多屏同步效果的同时降低对CPU的占用率,本申请进一步提供另一种智能座舱多屏同步的方法。下面结合实施例和附图对该方法的具体实现进行描述。
方法实施例二
参见图2,该图为本申请实施例提供的另一种智能座舱多屏同步的方法流程图。
如图2所示,本实施例提供的智能座舱多屏同步的方法,包括:
步骤201:利用gstreamer中的tee组件将需要同步的数据复制为N份,所述N为需要同步的屏幕数量。
步骤202:利用gstreamer中的queue组件建立N个独立的线程,每个所述屏幕对应一个所述线程。
本实施例步骤201-202的实现方式与前述实施例中步骤101-102的实现方式相同,因此步骤201-202的相关描述可参照前述实施例,此处不再赘述。
步骤203:N个独立的线程将N份数据分别提供给N个数据显示组件。
前文已经提及,每个屏幕对应一个由queue组件建立的独立的线程,也就是说,每个屏幕对应一个线程。本实施例中,数据显示组件的功能是将接收到的数据提供给屏幕,因此本步骤N个独立的线程将复制得到的N份数据份别提供给N个数据显示组件,实际上每个数据显示组件对应一个所述屏幕。
为便于理解,可参见图3和图4,图3所示为本实施例提供的一种双屏同步的数据流示意图;图4所示为本实施例提供的一种三屏同步的数据流示意图。图3和图4中,箭头所示方向为数据的流向。
结合图3,在双屏同步的场景中,车机利用tee组件将复制得到的两份数据分别提供给queue组件,利用queue组件建立的两个独立线程用以发送两份数据。其中,一份数据提供给数据显示组件A;另一份数据提供给数据显示组件B。每个数据显示组件携带一个标识号,该示例中A和B分别为两个不同的数据显示组件的标识号。
结合图4,在三屏同步的场景中,车机利用tee组件将复制得到的三份数据分别提供给queue组件,利用queue组件建立的三个独立线程用以发送三份数据。其中,一份数据提供给数据显示组件A;一份数据提供给数据显示组件B;另一份数据提供给数据显示组件C。该示例中A、B及C分别为三个不同的数据显示组件的标识号。
需要说明的是,图3和图4仅提供了两种多屏显示场景的数据流,在实际应用中N的数值不进行限定,因此还可能存在4屏同步、5屏同步等场景。N>3的场景数据流可参照图3和图4,此处不再详细描述。
需要说明的是,数据显示组件的标识号用于唯一标识数据显示组件,不同数据显示组件的标识号不同。实际应用中,标识号的形式可以是:数字,字母,数字与字母的组合等。本实施例对于数据显示组件的标识号的具体形式不进行限定。
步骤204:车机设置N份数据的可见性属性为可见;停止显示所述屏幕当前显示的画面。
可见性属性有两种,一种是可见,另一种是不可见。可见或不可见可由不同的形式表示,例如:用true表示可见,用false表示不可见;或者,用1表示可见,用0表示不可见。此处对于两种可见性属性的具体形式不进行限定。
进行数据的可见性属性设置时,作为一种可能的实现方式,可以依据数据显示组件的标识号对数据显示组件的数据可见性属性进行设置。例如,在需要N个屏幕同步的场景下,要求每个数据显示组件提供给屏幕都同步可见,此时,需要由车机根据每个数据显示组件的标识号,对各个标识号代表的数据显示组件其对应的数据设置为可见,即N个屏幕能够同步呈现画面。
可以理解的是,在N个屏幕实现画面同步之前,N个屏幕可能各自正在显示不同的视频文件的画面,或者播放同一视频文件的进度不同。通过可见性属性的设置,提升N个屏幕画面同步显示的可靠性。防止在同步显示画面的过程中,某些屏幕弹出之前播放的视频的画面,影响乘客的观看体验。
步骤205:每个所述数据显示组件根据自身的所述标识号将所述数据提供给对应的屏幕进行画面同步显示。
实际应用中,车机存储有数据显示组件的标识号与屏幕存在对应关系。例如图3和图4中所示,标识号A对应第一屏幕;标识号B对应第二屏幕;标识号C对应第三屏幕。因此,上一步骤提供给数据显示组件A的第一份数据将在本步骤中由数据显示组件A依据标识号与屏幕的对应关系提供给第一屏幕;上一步骤提供给数据显示组件B的第二份数据将在本步骤中由数据显示组件B依据标识号与屏幕的对应关系提供给第二屏幕;上一步骤提供给数据显示组件C的第三份数据将在本步骤中由数据显示组件C依据标识号与屏幕的对应关系提供给第三屏幕。
由于N个屏幕中不同的屏幕接收到的数据是相同的,并且,N份数据的可见性属性已经被车机设置为可见,因此屏幕在基于这些数据进行画面显示时,能够实现同步显示。
为便于理解,以三屏同步场景为例,参见图5和图6。图5和图6分别为本实施例提供的三屏同步场景下同步前和同步后各屏幕的画面显示示意图。此三个屏幕分别是主屏、副屏1和副屏2。从图5可以看到,各个屏幕正在显示不同的视频:主屏显示《视频1》,该视频编号为100A的画面的可见性为true;副屏1显示《视频2》,该视频编号为200B的画面的可见性为true;副屏2显示《视频3》,该视频编号为300C的画面的可见性为true。需要说明的是,因屏幕仅具备显示功能,不具备数据存储功能,本实施例图5和图6中,主屏框中的内容表示的是主屏对应的数据显示组件提供给主屏的数据;副屏1框中的内容表示的是副屏1对应的数据显示组件提供给副屏1的数据;副屏2框中的内容表示的是副屏2对应的数据显示组件提供给副屏2的数据。
对于图5所示的同步前场景,要求各个副屏按照主屏正在显示的内容进行同步。通过执行本实施例提供的多屏同步方法,由不同的数据显示组件将《视频1》的数据分别提供给主屏、副屏1和副屏2。通过图5可以看到,副屏1对应的数据显示组件提供数据给副屏1,即编号为100B的画面;副屏2对应的数据显示组件提供数据给副屏2,即编号为100C的画面。其中,编号为100B的画面及编号为100C的画面分别与主屏上显示的编号为100A的画面一致。在同步之前,画面100B和画面100C的可见性为false。
从图6可以看到,同步后,三个屏幕均显示《视频1》的画面。副屏1所显示的编号为100B的画面及副屏2所显示的编号为100C的画面分别与主屏上显示的编号为100A的画面同步一致。同步时,编号为100B的画面及编号为100C的画面的可见性均被设置为true。而副屏1原显示的《视频2》的画面200B以及副屏2原显示的《视频3》的画面300C则因本实施例步骤204的执行而均被停止播放。
需要说明的是,在图5和图6中,副屏1对应的数据显示组件还可以提供数据给副屏1,以备副屏1显示或不显示编号为300B的画面;副屏2对应的数据显示组件还可以提供数据给副屏2,以备副屏2显示或不显示编号为200C的画面。其中,画面200B与画面200C一致;画面300B与画面300C一致。在图5中,画面300B的可见性是false,其用途是以备要将副屏2正在显示的《视频3》的画面同步到副屏1的需求,当该需求生效时,画面300B可见性将被设置为true。在图5中,画面200C的可见性是false,其用途是以备要将副屏1正在显示的《视频2》的画面同步到副屏2的需求,当该需求生效时,画面200C可见性将被设置为true。
以上即为本实施例提供的智能座舱多屏同步方法。该方法仅在显示层进行数据分流,对于各个屏幕,实际使用的是相同的数据,同步效果非常好,不会因播放时间长导致播放进度差异。本申请仅增加数据显示组件,对于现有的其余组件(例如数据获取组件和数据解码组件)的重复利用率较高,所以仅比单独一个屏幕显示画面的CPU消耗多一点,进而相较于现有技术,CPU占用率得到大幅下降。
另外,目前基于gstreamer的进度反馈和进度跳跃功能实现多屏同步的方法存在适用性问题。有些视频文件对gstreamer的进度跳跃功能支持效果不佳,或者不支持进度跳跃功能,本申请将这类视频文件统称为“特殊视频文件”。作为示例,这些特殊视频文件可能是用户自己制作的视频,或是由于某种原因损坏的视频。对于特殊视频文件,即便执行上述方法也无法实现多屏同步,可见该方法适用性较差。本申请实施例提供的多屏同步方法不依赖于进度跳跃功能,并且屏幕之间播放进度一致,所以对于特殊视频文件的包容性更好。即本实施例提供的方法对于多种视频文件的适用性更高。
可以理解的是,在实际应用中,智能座舱的车机还可能面对用户取消多屏同步的需求。下面结合步骤206介绍在实现多屏同步后取消多屏同步的实现方式。
步骤206:接收屏幕发送的取消同步的请求,设置所述数据显示组件对应的数据的可见性属性为不可见。
本实施例中,当接收到屏幕发送的取消同步的请求后,车机根据取消同步的屏幕所对应的数据显示组件的标识号,将携带该标识号的数据显示组件向屏幕发送的数据的可见性属性设置为不可见。
参见图7和图8,分别是本实施例提供的三屏同步场景下取消同步前和取消同步后各屏幕的画面显示示意图。此三个屏幕分别是主屏、副屏1和副屏2。其中,图7所示内容与图6一致。从图7可以看到,取消同步前,各个屏幕显示相同视频(即《视频1》)的同一画面,仅画面编号不同,分别是100A,100B和100C。在取消同步前,副屏1原显示的《视频2》的画面200B以及副屏2原显示的《视频3》的画面300C则因本实施例步骤204的执行而均被停止播放。此外,各个屏幕所接收的备用数据,例如副屏1接收的画面300B相关数据,以及副屏2接收的画面200C相关数据,也被停止播放。这是因为当前的同步需求主要是将副屏1与副屏2分别与主屏同步。
执行步骤206后,参见图8,副屏1原显示的《视频2》的画面200B被恢复播放,其接收的备用的用于同步副屏2的画面300B也被恢复播放。由于同步前副屏1正在播放《视频2》,因此编号200B的画面可见性为true,编号300B的画面可见性为false。副屏2原显示的《视频3》的画面300C被恢复播放,其接收的备用的用于同步副屏1的画面200C也被恢复播放。由于同步前副屏2正在播放《视频3》,因此编号300C的画面可见性为true,编号200C的画面可见性为false。
为便于理解执行本实施例方法真实的多屏同步和取消同步的效果,参见图9至图11。其中,图9为三个屏幕同步前各自显示的画面;图10为三个屏幕同步后各自显示的画面;图11为三个屏幕取消同步后各自显示的画面。在同步前,三个屏幕各自显示的画面互不相同;在同步后,显示画面一致;取消同步后,三个屏幕恢复同步前各自显示的画面。
本实施例进行多屏同步之前,对于每个屏幕来说,需要同步的数据均已准备完毕,同步的过程以及取消同步的过程仅仅是改变画面的可见性属性,因此同步速度和取消同步的速度均非常快。通过图9至图11也可以看到,同步和取消同步的操作不会影响最上方被同步屏幕的画面显示,被同步屏幕始终显示相同的画面。也就是说,本实施例方法同步和取消同步的操作均对于被同步屏幕无干扰。因此,观看被同步屏幕(例如主屏)的乘客的观看体验不会受到同步或取消同步操作的干扰影响。
下面提供一种需要同步的数据的获取方式。首先由数据获取组件获取原数据,其后由数据解码组件对该数据进行解码,再由数据解码组件将解码后的数据发送给tee组件,作为需要同步的数据。
在实际应用中,N的数量可以根据车机机型进行设置。例如有一些车机机型支持双屏同步,则可以设置N=2,即利用queue组件建立两个独立的线程用于传输数据;有一些车机机型支持三屏同步,则可以设置N=3,即利用queue组件建立三个独立的线程用于传输数据。
可见,本实施例中,还可以依据车机机型支持的同步屏幕数量,设置具体地N值。从而是同步效果适应不同的车机机型。
基于前述实施例提供的智能座舱多屏同步方法,相应地,本申请还提供一种智能座舱多屏同步的装置。下面结合实施例和附图对该装置的具体实现进行描述和说明。
装置实施例
参见图12,该图为本申请实施例提供的一种智能座舱多屏同步装置的结构示意图。该装置具体应用于智能座舱的车机。
如图12所示,本实施例提供的该智能座舱多屏同步装置,包括:
复制模块1201,用于利用gstreamer中的tee组件将需要同步的数据复制为N份,所述N为需要同步的屏幕数量;
线程建立模块1202,用于利用gstreamer中的queue组件建立N个独立的线程,每个所述屏幕对应一个所述线程;
数据发送模块1203,用于通过所述N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示。
以上即为本申请实施例提供的智能座舱多屏同步装置。该装置不依赖于gstreamer的进度反馈和进度跳跃功能。需要同步的数据被复制为N份相同的数据,因此智能座舱的车机向不同屏幕发送的数据是相同的数据,由于各个屏幕的数据来源相同,因此即便播放时间逐渐增加,各个屏幕的播放进度也是相同的,多屏同步效果非常好。此外,车机利用该装置通过N个独立的线程将N份数据分别发送给N个屏幕,以使N个屏幕进行画面同步显示,因此,各个线程中的数据互不干扰,避免因单个线程数据阻塞而影响到其他线程所对应的屏幕的画面同步显示效果。可见,该装置提升了智能座舱多屏同步的可靠性。
目前,基于gstreamer的进度反馈和进度跳跃功能实现智能座舱的多屏同步的方式,即便同步完成,也需要在整个播放过程中持续运行差额比较算法以维持同步效果。这样导致同步时间增长,CPU占用高,影响CPU对其他车载功能的支持。为解决上述问题,在提升智能座舱多屏同步效果的同时降低对CPU的占用率,本实施例中数据发送模块1203,具体包括:
第一发送单元,用于通过所述N个独立的线程将N份数据分别提供给N个数据显示组件;每个所述数据显示组件对应一个所述屏幕;每个所述数据显示组件携带一个标识号;
第二发送单元,用于利用每个所述数据显示组件自身的所述标识号将所述数据提供给对应的屏幕进行画面同步显示。
可选地,智能座舱多屏同步的装置还可以包括:
设置模块,用于设置所述N份数据的可见性属性为可见;停止显示所述屏幕当前显示的画面。
由于该装置仅在显示层进行数据分流,对于各个屏幕,实际使用的是相同的数据,同步效果非常好,不会因播放时间长导致播放进度差异。本申请实施例仅增加数据显示组件,对于现有的其余组件(例如数据获取组件和数据解码组件)的重复利用率较高,所以仅比单独一个屏幕显示画面的CPU消耗多一点,进而相较于现有技术,CPU占用率得到大幅下降。
另外,目前基于gstreamer的进度反馈和进度跳跃功能实现多屏同步的方式存在适用性问题。有些视频文件对gstreamer的进度跳跃功能支持效果不佳,或者不支持进度跳跃功能,本申请将这类视频文件统称为“特殊视频文件”。作为示例,这些特殊视频文件可能是用户自己制作的视频,或是由于某种原因损坏的视频。对于特殊视频文件,即便依照上述方式实施也无法实现多屏同步,可见其适用性较差。本申请实施例提供的多屏同步装置不依赖于进度跳跃功能,并且屏幕之间播放进度一致,所以对于特殊视频文件的包容性更好。即本实施例提供的装置对于多种视频文件的适用性更高。
可以理解的是,在实际应用中,智能座舱的车机还可能面对用户取消多屏同步的需求。因此本实施例提供的多屏同步装置,还可以进一步包括:
取消同步请求接收模块,用于接收屏幕发送的取消同步的请求;
设置模块,还用于根据取消同步的请求设置所述数据显示组件对应的数据的可见性属性为不可见。
本实施例进行多屏同步之前,对于每个屏幕来说,需要同步的数据均已准备完毕,同步的过程以及取消同步的过程仅仅是改变画面的可见性属性,因此同步速度和取消同步的速度均非常快。并且,本实施例装置进行多屏同步和取消多屏同步的操作均对于被同步屏幕无干扰。因此,观看被同步屏幕(例如主屏)的乘客的观看体验不会受到同步或取消同步操作的干扰影响。
可选地,多屏同步装置还可进一步包括:
数据获取模块,用于从移动存储设备或者所述车机的存储器中获取所述需要同步的数据。其中,移动存储设备可以包括但不限于移动硬盘,U盘等。
基于前述实施例提供的多屏同步方法和多屏同步装置,相应地,本申请实施例还提供一种智能座舱。下面结合实施例和附图对该座舱的具体实现进行描述。
智能座舱实施例
参见图13,该图为本实施例提供的智能座舱结构示意图。
如图13所示,本实施例提供的智能座舱,包括:车机和N个屏幕。其中,N为大于或等于2的整数。
车机用于执行前述方法实施例提供的多屏同步方法。
N个屏幕,用于根据所述车机发送的数据进行画面同步显示。
由于前述方法实施例中已经对多屏同步方法进行了详细的描述,因此在描述智能座舱时,对于车机在实现多屏同步时具体执行的操作不加以赘述。
该智能座舱不依赖于gstreamer的进度反馈和进度跳跃功能。需要同步的数据被复制为N份相同的数据,因此智能座舱的车机向不同屏幕发送的数据是相同的数据,由于各个屏幕的数据来源相同,因此即便播放时间逐渐增加,各个屏幕的播放进度也是相同的,多屏同步效果非常好。此外,车机通过N个独立的线程将N份数据分别发送给N个屏幕,以使N个屏幕进行画面同步显示,因此,各个线程中的数据互不干扰,避免因单个线程数据阻塞而影响到其他线程所对应的屏幕的画面同步显示效果。可见,该智能座舱提升了多屏同步的可靠性。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元提示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (7)
1.一种智能座舱多屏同步的方法,其特征在于,应用于智能座舱的车机;包括:
利用gstreamer中的tee组件将需要同步的数据复制为N份,所述N为需要同步的屏幕数量;
利用gstreamer中的queue组件建立N个独立的线程,每个所述屏幕对应一个所述线程;
通过所述N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示;
所述通过所述N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示,具体包括:
所述N个独立的线程将N份数据分别提供给N个数据显示组件;每个所述数据显示组件对应一个所述屏幕;每个所述数据显示组件携带一个标识号;
每个所述数据显示组件根据自身的所述标识号将所述数据提供给对应的屏幕进行画面同步显示;
在所述N个独立的线程将N份数据分别提供给N个数据显示组件之后,所述方法还包括:
所述N个数据显示组件分别根据所述N份数据的画面编号设置所述N份数据的可见性属性为可见;根据所述屏幕当前显示的画面的画面编号停止显示所述屏幕当前显示的画面;不同所述数据显示组件提供的同一数据的画面编号是不同的;同一数据显示组件用于向对应的屏幕提供多个画面编号不同的数据。
2.根据权利要求1所述的方法,其特征在于,还包括:接收屏幕发送的取消同步的请求,设置所述数据显示组件对应的数据的可见性属性为不可见。
3.根据权利要求1所述的方法,其特征在于,还包括:从移动存储设备或者所述车机的存储器中获取所述需要同步的数据。
4.根据权利要求1所述的方法,其特征在于,当所述N为大于或等于3时,对应的需要同步的屏幕分别为中央控制屏和车辆座位后部设置的屏幕;
当所述N为2时,对应需要同步的屏幕分别是车辆两个不同座位后部设置的屏幕。
5.一种智能座舱多屏同步的装置,其特征在于,应用于智能座舱的车机;包括:
复制模块,用于利用gstreamer中的tee组件将需要同步的数据复制为N份,所述N为需要同步的屏幕数量;
线程建立模块,用于利用gstreamer中的queue组件建立N个独立的线程,每个所述屏幕对应一个所述线程;
数据发送模块,用于通过所述N个独立的线程将N份数据分别发送给N个屏幕,以使所述N个屏幕进行画面同步显示;
所述数据发送模块,具体包括:
第一发送单元,用于通过所述N个独立的线程将N份数据分别提供给N个数据显示组件;每个所述数据显示组件对应一个所述屏幕;每个所述数据显示组件携带一个标识号;
第二发送单元,用于利用每个所述数据显示组件自身的所述标识号将所述数据提供给对应的屏幕进行画面同步显示;
所述装置还包括:
设置模块,用于所述N个数据显示组件分别根据所述N份数据的画面编号设置所述N份数据的可见性属性为可见;根据所述屏幕当前显示的画面的画面编号停止显示所述屏幕当前显示的画面;不同所述数据显示组件提供的同一数据的画面编号是不同的;同一数据显示组件用于向对应的屏幕提供多个画面编号不同的数据。
6.根据权利要求5所述的装置,其特征在于,还包括:
设置模块,用于设置所述N份数据的可见性属性为可见;停止显示所述屏幕当前显示的画面。
7.一种智能座舱,其特征在于,包括:车机和N个屏幕;所述车机用于执行权利要求1-4任一项所述的方法;
所述N个屏幕,用于根据所述车机发送的数据进行画面同步显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910770084.XA CN110489072B (zh) | 2019-08-20 | 2019-08-20 | 一种智能座舱多屏同步的方法、装置及智能座舱 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910770084.XA CN110489072B (zh) | 2019-08-20 | 2019-08-20 | 一种智能座舱多屏同步的方法、装置及智能座舱 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110489072A CN110489072A (zh) | 2019-11-22 |
CN110489072B true CN110489072B (zh) | 2023-10-10 |
Family
ID=68552240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910770084.XA Active CN110489072B (zh) | 2019-08-20 | 2019-08-20 | 一种智能座舱多屏同步的方法、装置及智能座舱 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110489072B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112153444A (zh) * | 2020-09-17 | 2020-12-29 | 中国第一汽车股份有限公司 | 车载多屏视频同步方法、装置、电子系统和存储介质 |
CN112714343B (zh) * | 2020-12-25 | 2022-07-26 | 雄狮汽车科技(南京)有限公司 | 汽车开机显示控制方法和具有其的汽车开机显示控制系统 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004134834A (ja) * | 2002-10-08 | 2004-04-30 | Imd:Kk | 表示部品デザイン設定装置、表示部品デザイン設定方法及び表示部品デザイン設定処理プログラム |
CN101937325A (zh) * | 2010-08-26 | 2011-01-05 | 广东威创视讯科技股份有限公司 | 一种拼接墙控制方法和一种拼接墙控制系统 |
CN102262505A (zh) * | 2010-05-27 | 2011-11-30 | 株式会社理光 | 图像处理装置、显示装置、屏幕控制系统和屏幕控制方法 |
CN103248939A (zh) * | 2012-02-03 | 2013-08-14 | 海尔集团公司 | 一种实现多屏同步显示的方法及系统 |
CN103517153A (zh) * | 2012-11-30 | 2014-01-15 | Tcl集团股份有限公司 | 一种实现多屏幕同屏播放视频的方法及系统 |
CN104284098A (zh) * | 2013-07-01 | 2015-01-14 | 杭州海康威视数字技术股份有限公司 | 视频数据的处理方法及系统 |
CN104375798A (zh) * | 2014-11-27 | 2015-02-25 | 中国科学技术大学 | 一种由多个移动智能设备屏幕组合显示多媒体的方法 |
CN104978160A (zh) * | 2015-07-20 | 2015-10-14 | 北京创想联发科技有限公司 | 一种hmi人机交互大屏显示设计方法 |
CN105610824A (zh) * | 2015-12-29 | 2016-05-25 | 哈尔滨工业大学 | 一种基于屏幕镜像及rtsp流媒体框架的屏幕共享方法 |
CN106550017A (zh) * | 2016-10-14 | 2017-03-29 | 北京远特科技股份有限公司 | 一种屏幕共享技术在车载系统上的应用方法及系统 |
CN206480324U (zh) * | 2017-02-08 | 2017-09-08 | 深圳市新视力科技有限公司 | 多屏显示设备和带有多屏显示设备的广告机 |
CN107645669A (zh) * | 2017-10-18 | 2018-01-30 | 青岛桐轩佳航科技有限公司 | 多屏显示控制方法、装置及系统 |
CN107678721A (zh) * | 2017-10-09 | 2018-02-09 | 上海龙旗科技股份有限公司 | 一种多屏显示系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014201876A1 (zh) * | 2013-06-17 | 2014-12-24 | 华为技术有限公司 | 屏幕分享方法和相关设备及通信系统 |
KR102238533B1 (ko) * | 2014-02-26 | 2021-04-09 | 엘지전자 주식회사 | 디지털 디바이스 및 상기 디지털 디바이스에서 스크린 세이버 처리 방법 |
-
2019
- 2019-08-20 CN CN201910770084.XA patent/CN110489072B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004134834A (ja) * | 2002-10-08 | 2004-04-30 | Imd:Kk | 表示部品デザイン設定装置、表示部品デザイン設定方法及び表示部品デザイン設定処理プログラム |
CN102262505A (zh) * | 2010-05-27 | 2011-11-30 | 株式会社理光 | 图像处理装置、显示装置、屏幕控制系统和屏幕控制方法 |
CN101937325A (zh) * | 2010-08-26 | 2011-01-05 | 广东威创视讯科技股份有限公司 | 一种拼接墙控制方法和一种拼接墙控制系统 |
CN103248939A (zh) * | 2012-02-03 | 2013-08-14 | 海尔集团公司 | 一种实现多屏同步显示的方法及系统 |
CN103517153A (zh) * | 2012-11-30 | 2014-01-15 | Tcl集团股份有限公司 | 一种实现多屏幕同屏播放视频的方法及系统 |
CN104284098A (zh) * | 2013-07-01 | 2015-01-14 | 杭州海康威视数字技术股份有限公司 | 视频数据的处理方法及系统 |
CN104375798A (zh) * | 2014-11-27 | 2015-02-25 | 中国科学技术大学 | 一种由多个移动智能设备屏幕组合显示多媒体的方法 |
CN104978160A (zh) * | 2015-07-20 | 2015-10-14 | 北京创想联发科技有限公司 | 一种hmi人机交互大屏显示设计方法 |
CN105610824A (zh) * | 2015-12-29 | 2016-05-25 | 哈尔滨工业大学 | 一种基于屏幕镜像及rtsp流媒体框架的屏幕共享方法 |
CN106550017A (zh) * | 2016-10-14 | 2017-03-29 | 北京远特科技股份有限公司 | 一种屏幕共享技术在车载系统上的应用方法及系统 |
CN206480324U (zh) * | 2017-02-08 | 2017-09-08 | 深圳市新视力科技有限公司 | 多屏显示设备和带有多屏显示设备的广告机 |
CN107678721A (zh) * | 2017-10-09 | 2018-02-09 | 上海龙旗科技股份有限公司 | 一种多屏显示系统 |
CN107645669A (zh) * | 2017-10-18 | 2018-01-30 | 青岛桐轩佳航科技有限公司 | 多屏显示控制方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
基于Gstreamer的嵌入式流媒体传输系统的研究与实现;宫健;《中国优秀硕士学位论文全文数据库》;20170215;正文第1-82页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110489072A (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101980144B (zh) | 车载电脑多屏显示方法和系统 | |
CN104581190B (zh) | 一种多屏同步方法及系统 | |
CN110489072B (zh) | 一种智能座舱多屏同步的方法、装置及智能座舱 | |
JP6931801B2 (ja) | 車載表示システムおよびこの車載表示システムの制御方法 | |
WO2020048429A1 (zh) | 一种媒体资源获取的方法及装置 | |
US9113175B2 (en) | Method to provide a virtual cockpit experience to the flying passenger | |
KR20050092416A (ko) | 별개의 디스플레이 장치들 상에 상이한 영상들을디스플레이하기 위한 영상 디스플레이 시스템 | |
EP2852145B1 (en) | Provision of stereoscopic video camera views to aircraft passengers | |
CN110719510A (zh) | 一种车机音视频同步播放方法 | |
CN110134487A (zh) | 直播界面的动态换肤方法、可读存储介质及计算机设备 | |
CN103281595A (zh) | 一种信息发布物联网终端多屏组合显示的方法 | |
US20120331512A1 (en) | Av contents viewing and listening system provided in cabin of passenger carrier | |
US9886980B2 (en) | Method for synchronizing A/V streams | |
US9395948B2 (en) | Screen display control system and screen display control method | |
CN112040288B (zh) | 一种多媒体系统 | |
CN113691847A (zh) | 一种多屏帧同步的方法和装置 | |
CN110691231A (zh) | 一种虚拟现实播放系统及其同步播放方法 | |
CN112312040B (zh) | 视频处理器和显示系统 | |
CN110377253A (zh) | 一种多媒体资源共享方法、装置、系统、设备及介质 | |
CN113545097B (zh) | 利用一个流影像来播放多个虚拟现实影像的虚拟现实影像播放装置及方法 | |
CN113299321B (zh) | 一种车载娱乐系统多用户音频共享方法、车载系统及存储介质 | |
CN112087668A (zh) | 一种视频处理方法、装置、视频处理设备及存储介质 | |
US20190179919A1 (en) | Methods, systems, and media for updating a webpage rendered with cached content | |
CN117971147A (zh) | 一种多屏互动管理方法、装置、设备及车辆 | |
CN104965900A (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 |