一种投屏方法与流程

文档序号:32606855发布日期:2022-12-20 17:50阅读:141来源:国知局
一种投屏方法与流程

1.本技术涉及投屏技术领域,尤其涉及一种投屏方法。


背景技术:

2.随着网络通信技术的发展和家庭智能化设备的普及,利用智能电视的大屏特性、智能手机和平板电脑的便携性,通过多屏幕协同工作有助于提升用户体验。投屏技术使得诸如手机、平板等电子设备可将本地或网络上的多媒体内容投放到个人电脑(personal computer,pc)、智慧屏等具有音频或视频等播放能力的显示设备上,在显示设备上播放上述多媒体数据。
3.但是,由于投屏操作所处条件的差异性较大,例如,无线保真(wireless fidelity,wi-fi)等网络连接状态、路由器的路由性能状态、电子设备的硬件配置状态和显示设备的硬件配置状态等,都会导致电子设备按照固定参数投屏出去的投屏内容在显示设备上显示的效果参差不齐,从而导致显示设备的丢帧、显示延迟等不良的显示效果出现,在一定程度上影响了用户体验。


技术实现要素:

4.本技术提供了一种投屏方法,一方面,实现了电子设备或显示设备可以确定出影响投屏效果的原因,并采用对应的策略改善投屏效果;另一方面,采用投屏效果分级调节策略,考虑了影响用户体验的因素,以减小用户的影响为目标进行调节。
5.第一方面,本技术提供了一种投屏系统,系统包括电子设备和显示设备。其中,电子设备用于与显示设备建立投屏连接;电子设备,还用于将第一投屏内容通过投屏连接发送给显示设备;显示设备,用于基于第一投屏内容显示投屏界面;电子设备,还用于确定投屏参数满足第一条件,或者电子设备确定出投屏效果不满足预设条件时;根据第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值;其中,第一值大于第一阈值,第二值大于第二阈值;在电子设备将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值之后,确定投屏参数满足第一条件;根据第二级调节策略将电子设备的第一参数调整至第三值,将电子设备的第二参数调整至第四值;其中,第三值小于第一阈值,第四值小于第二阈值。
6.其中,电子设备可以根据第一级调节策略将电子设备的第一参数调整至第一值的同时,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第一参数调整至第一值之后,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第二参数调整至第二值之后,将电子设备的第一参数调整至第一值。这里对电子设备调整第一参数和第二参数的顺序不做限定。
7.电子设备确定出投屏效果不满足预设条件时,通过第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。之后,电子设备确定出投屏效果还是不满足预设条件时,将根据第二级调节策略继续调节第一参数至第三值,将第二
参数调节至第四值。并且第三值小于第一阈值,第四值小于第二阈值。这样,电子设备采用分级调节的策略,不会一次性将第一参数和第二参数调整范围过大,而是缓慢的调整。当调整参数之后,电子设备确定投屏效果还是不好时,再次调整第一参数和第二参数。这样,通过分级调节的策略实现了人性化的调整参数,以减小用户的影响为目标进行调节。
8.在一种可能的实现方式中,第三值大于第三阈值,第四值大于第四阈值。也即第一参数和第二参数都有最低阈值,这样,可以避免出现第一参数和第二参数的调整范围过大导致影响用户体验的问题的。
9.通过第一方面的系统,电子设备或显示设备可以确定出影响投屏效果的原因,并采用对应的策略改善投屏效果,并采用投屏效果分级调节策略,考虑了影响用户体验的因素,以减小用户的影响为目标进行调节。
10.在一种可能的实现方式中,电子设备确定投屏效果不好时,且确定出第一负载满足第二条件时,电子设备根据第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。
11.第一参数和第二参数与第一负载息息相关。示例性的,当第一负载为电子设备中硬件(例如cpu或gpu或ddr或编码器)的使用率时,并且,电子设备中cpu和gpu大于预设使用率,第二参数为cpu的工作频率,第三参数为gpu的工作频率。示例性的,当电子设备中数据传输时延大于预设时延时,第二参数为电子设备的投屏码率。示例性的,当电子设备侧的图像合成时间大于预设时间或者电子设备中硬件的使用率大于预设使用率时,第二参数为电子设备的采样帧率。示例性的,当显示设备的图像合成时间大于预设时间或者显示设备中硬件的使用率大于预设使用率时,第二参数为电子设备的投屏分辨率。即只有当第一负载满足一定条件时,即第一负载过高,电子设备才会调节第一参数或者第二参数。这样,电子设备可以确定出导致投屏效果差的原因,并采取对应的措施提高投屏效果。
12.结合第一方面,在一种可选的实现方式中,电子设备确定出投屏效果不好时,电子设备还用于向显示设备发送第一信息,第一信息用于指示显示设备调整显示设备的第三参数;显示设备,还用于在接收第一信息后,调整显示设备的第三参数。这样,电子设备不仅可以调整电子设备侧的参数,还可以调整显示设备的参数,实现了多端调节。
13.在一种可能的实现方式中,显示设备也可以不接收电子设备发送的第一信息,显示设备监测到投屏效果不满足预设条件时,调整显示设备的第三参数。这样,显示设备可以监测显示设备侧的投屏效果,并根据投屏效果实时调整第三参数。
14.在一种可能的实现方式中,显示设备还用于在接收第一信息后,将第三参数调整至第五值;其中,第五值小于第三预设值。可以避免出现第三参数的调整范围过大导致影响用户体验的问题的。
15.在一种可能的实现方式中,电子设备确定出投屏效果不好,且电子设备确定出第二负载满足第三条件时,电子设备还用于向显示设备发送第一信息,第一信息用于指示显示设备调整显示设备的第三参数;显示设备,还用于在接收第一信息后,调整显示设备的第三参数。
16.第二负载包括但不仅限于显示设备中硬件(例如cpu或gpu或ddr或编码器)的使用率,或显示设备中的图像合成时间。当显示设备中硬件的使用率大于预设使用率,或者显示设备中的图像合成时间大于预设时间时,电子设备向显示设备发送第一信息。这样,电子设
备可以确定出导致投屏效果差的原因,并采取对应的措施提高投屏效果。
17.结合第一方面,在一种可选的实现方式中,第一参数和第二参数包括以下任意一项:电子设备中中央处理器cpu的工作频率、电子设备中图像处理器gpu的工作频率、电子设备中编码器的工作频率、电子设备中双倍速率同步动态随机存储器ddr的工作频率、电子设备的投屏码率、电子设备的采样帧率、电子设备的投屏分辨率;第一参数与第二参数不同。
18.第三参数包括以下任意一项:显示设备中cpu的工作频率、显示设备中gpu的工作频率、显示设备中解码器的工作频率、显示设备中ddr的工作频率、显示设备的显示帧率。
19.在一种可能的实现方式中,第一参数可以为电子设备的投屏码率,第二参数可以为电子设备的采样帧率。当电子设备确定出投屏效果不好时,电子设备将电子设备的投屏码率调整至第一码率,将显示设备的显示帧率调整至第一帧率,第一码率大于第一预设码率,第一帧率大于第一预设帧率。之后,当电子设备确定出投屏效果还是不好时,电子设备将电子设备的投屏码率调整至第二码率,将显示设备的显示帧率调整至第二帧率;其中,第二码率小于第一预设码率,第二帧率小于第一预设帧率。这样,电子设备通过多级调节策略,不会一次性将投屏码率或投屏帧率调整的幅度过大,而是通过一级调整之后,实时监测投屏效果,当投屏效果没有得到改善时,在将投屏码率或投屏帧率减低一级,这样,通过分级调节的策略实现了人性化的调整参数,以减小用户的影响为目标进行调节。
20.在一种可能的实现方式中,第一参数可以为电子设备中cpu的工作频率。当电子设备确定出投屏效果不好时,电子设备将电子设备中cpu的工作频率调整至第一频率。之后,当电子设备确定出投屏效果还是不好时,电子设备将电子设备中cpu的工作频率调整至第二频率,第二频率大于第一预设频率小于第二预设频率。这样,通过设置电子设备中cpu的工作频率调整的最高值(第二预设频率),可以防止将电子设备中cpu的工作频率调整过高导致电子设备出现发热的问题。
21.结合第一方面,在一种可选的实现方式中,电子设备,还用于在根据第一级调节策略将电子设备的第一参数调整至第一值之前,获取第四参数和第五参数;其中,投屏参数包括投屏时延,第四参数包括显示设备显示第一投屏内容中第一投屏帧画面的第一时刻,第五参数包括电子设备发送第一投屏帧画面的第二时刻;电子设备,还用于基于第一时刻和第二时刻确定投屏时延;第一条件包括:投屏时延大于预设时延;和/或,投屏参数包括投屏帧率差,第四参数包括显示设备显示第一投屏帧画面的第一帧率,第五参数包括电子设备获取到第一投屏帧画面的第二帧率;电子设备,还用于基于第一帧率和第二帧率确定投屏帧率差;第一条件包括:投屏帧率差大于预设帧率差。
22.这里,当投屏参数为投屏时延时,第一条件为投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏时延大于预设时延。当投屏参数为投屏帧率差时,第一条件为投屏帧率差大于预设帧率差,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差。投屏参数为投屏帧率差和投屏时延时,第一条件为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延。
23.在一种可能的实现方式中,电子设备可以根据投屏时延和投屏帧率差根据以下公式来综合衡量投屏效果:
24.cast_cost=(delay-delay_base)/delay_base*0.5+fps_diff/fps_base*0.5如
上述公式可知,delay表示投屏时延,投屏时延为电子设备实时测量出来的。delay_base表示投屏基准时延,投屏基准时延为预设值,一般的投屏基准时延为50ms或者100ms。fps_diff表示投屏帧率差,投屏帧率差为电子设备实时测量出来的。fps_base表示投屏基准帧率差,投屏基准帧率差为预设值,一般的投屏基准时延为60hz。cast_cost的取值范围为0-1。电子设备可以根据cast_cost衡量投屏效果,即当电子设备确定cast_cost大于预设值(例如0.25)时,电子设备确定出投屏效果不满足预设条件。
25.第二方面,本技术提供了一种投屏方法,方法包括:电子设备与显示设备建立投屏连接;电子设备将第一投屏内容通过投屏连接发送给显示设备;第一投屏内容显示在显示设备的投屏界面上;电子设备确定出投屏参数满足第一条件,根据第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值;其中,第一值大于第一阈值,第二值大于第二阈值;在电子设备将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值之后,电子设备确定投屏参数满足第一条件;电子设备根据第二级调节策略将电子设备的第一参数调整至第三值,将电子设备的第二参数调整至第四值;其中,第三值小于第一阈值,第四值小于第二阈值。
26.其中,电子设备可以根据第一级调节策略将电子设备的第一参数调整至第一值的同时,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第一参数调整至第一值之后,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第二参数调整至第二值之后,将电子设备的第一参数调整至第一值。这里对电子设备调整第一参数和第二参数的顺序不做限定。
27.电子设备确定出投屏效果不满足预设条件时,通过第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。之后,确定出投屏效果还是不满足预设条件时,将根据第二级调节策略继续调节第一参数至第三值,将第二参数调节至第四值。并且第三值小于第一阈值,第四值小于第二阈值。这样,电子设备采用分级调节的策略,不会一次性将第一参数和第二参数调整范围过大,而是缓慢的调整。当调整参数之后,电子设备确定投屏效果还是不好时,再次调整第一参数和第二参数。这样,通过分级调节的策略实现了人性化的调整参数,以减小用户的影响为目标进行调节。
28.在一种可能的实现方式中,第三值大于第三阈值,第四值大于第四阈值。也即第一参数和第二参数都有最低阈值,这样,可以避免出现第一参数和第二参数的调整范围过大导致影响用户体验的问题的。
29.通过第二方面的方法,电子设备或显示设备可以确定出影响投屏效果的原因,并采用对应的策略改善投屏效果,并采用投屏效果分级调节策略,考虑了影响用户体验的因素,以减小用户的影响为目标进行调节。
30.在一种可能的实现方式中,电子设备确定投屏效果不好时,且确定出第一负载满足第二条件时,电子设备根据第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。
31.第一参数和第二参数与第一负载息息相关。示例性的,当第一负载为电子设备中硬件(例如cpu或gpu或ddr或编码器)的使用率时,并且,电子设备中cpu和gpu大于预设使用率,第二参数为cpu的工作频率,第三参数为gpu的工作频率。示例性的,当电子设备中数据传输时延大于预设时延时,第二参数为电子设备的投屏码率。示例性的,当电子设备侧的图
像合成时间大于预设时间或者电子设备中硬件的使用率大于预设使用率时,第二参数为电子设备的采样帧率。示例性的,当显示设备的图像合成时间大于预设时间或者显示设备中硬件的使用率大于预设使用率时,第二参数为电子设备的投屏分辨率。即只有当第一负载满足一定条件时,即第一负载过高,电子设备才会调节第一参数或者第二参数。这样,电子设备可以确定出导致投屏效果差的原因,并采取对应的措施提高投屏效果。
32.结合第二方面,在一种可能的实现方式中,方法还包括:电子设备确定出投屏效果不好时,电子设备向显示设备发送第一信息,第一信息用于指示显示设备调整显示设备的第三参数。这样,电子设备不仅可以调整电子设备侧的参数,还可以调整显示设备的参数,实现了多端调节。
33.在一种可能的实现方式中,电子设备确定出投屏效果不好,且电子设备确定出第二负载满足第三条件时,电子设备还用于向显示设备发送第一信息,第一信息用于指示显示设备调整显示设备的第三参数;显示设备,还用于在接收第一信息后,调整显示设备的第三参数。
34.第二负载包括但不仅限于显示设备中硬件(例如cpu或gpu或ddr或编码器)的使用率,或显示设备中的图像合成时间。当显示设备中硬件的使用率大于预设使用率,或者显示设备中的图像合成时间大于预设时间时,电子设备向显示设备发送第一信息。这样,电子设备可以确定出导致投屏效果差的原因,并采取对应的措施提高投屏效果。
35.结合第二方面,在一种可能的实现方式中,第一参数和第二参数包括以下任意一项:电子设备中中央处理器cpu的工作频率、电子设备中图像处理器gpu的工作频率、电子设备中编码器的工作频率、电子设备中双倍速率同步动态随机存储器ddr的工作频率、电子设备的投屏码率、电子设备的采样帧率、电子设备的投屏分辨率;第一参数与第二参数不同。
36.第三参数包括以下任意一项:显示设备中cpu的工作频率、显示设备中gpu的工作频率、显示设备中解码器的工作频率、显示设备中ddr的工作频率、显示设备的显示帧率。
37.在一种可能的实现方式中,第一参数可以为电子设备的投屏码率,第二参数可以为电子设备的采样帧率。当电子设备确定出投屏效果不好时,电子设备将电子设备的投屏码率调整至第一码率,将显示设备的显示帧率调整至第一帧率,第一码率大于第一预设码率,第一帧率大于第一预设帧率。之后,当电子设备确定出投屏效果还是不好时,电子设备将电子设备的投屏码率调整至第二码率,将显示设备的显示帧率调整至第二帧率;其中,第二码率小于第一预设码率,第二帧率小于第一预设帧率。这样,电子设备通过多级调节策略,不会一次性将投屏码率或投屏帧率调整的幅度过大,而是通过一级调整之后,实时监测投屏效果,当投屏效果没有得到改善时,在将投屏码率或投屏帧率减低一级,这样,通过分级调节的策略实现了人性化的调整参数,以减小用户的影响为目标进行调节。
38.在一种可能的实现方式中,第一参数可以为电子设备中cpu的工作频率。当电子设备确定出投屏效果不好时,电子设备将电子设备中cpu的工作频率调整至第一频率。之后,当电子设备确定出投屏效果还是不好时,电子设备将电子设备中cpu的工作频率调整至第二频率,第二频率大于第一预设频率小于第二预设频率。这样,通过设置电子设备中cpu的工作频率调整的最高值(第二预设频率),可以防止将电子设备中cpu的工作频率调整过高导致电子设备出现发热的问题。
39.结合第二方面,在一种可能的实现方式中,在电子设备确定出投屏参数满足第一
条件,根据第一级调节策略将电子设备的第一参数调整至第一值之前,方法还包括:电子设备获取第三参数和第四参数;其中,投屏参数包括投屏时延,第四参数包括显示设备显示第一投屏内容中第一投屏帧画面的第一时刻,第五参数包括电子设备发送投屏效果调节策略将第一投屏帧画面的第二时刻;电子设备基于第一时刻和第二时刻确定投屏时延;第一条件包括:投屏时延大于预设时延;和/或,投屏参数包括投屏帧率差,第四参数包括显示设备显示第一投屏帧画面的第一帧率,第五参数包括电子设备获取到第一投屏帧画面的第二帧率;电子设备基于第一帧率和第二帧率确定投屏帧率差;第一条件包括:投屏帧率差大于预设帧率差。
40.这里,当投屏参数为投屏时延时,第一条件为投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏时延大于预设时延。当投屏参数为投屏帧率差时,第一条件为投屏帧率差大于预设帧率差,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差。投屏参数为投屏帧率差和投屏时延时,第一条件为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延。
41.在一种可能的实现方式中,电子设备可以根据投屏时延和投屏帧率差根据以下公式来综合衡量投屏效果:
42.cast_cost=(delay-delay_base)/delay_base*0.5+fps_diff/fps_base*0.5
43.如上述公式可知,delay表示投屏时延,投屏时延为电子设备实时测量出来的。delay_base表示投屏基准时延,投屏基准时延为预设值,一般的投屏基准时延为50ms或者100ms。fps_diff表示投屏帧率差,投屏帧率差为电子设备实时测量出来的。fps_base表示投屏基准帧率差,投屏基准帧率差为预设值,一般的投屏基准时延为60hz。cast_cost的取值范围为0-1。电子设备可以根据cast_cost衡量投屏效果,即当电子设备确定cast_cost大于预设值(例如0.25)时,电子设备确定出投屏效果不满足预设条件。
44.第三方面,本技术提供了一种投屏方法,方法包括:显示设备与电子设备建立投屏连接;显示设备通过投屏连接接收电子设备发送的第一投屏内容;显示设备基于第一投屏内容显示投屏界面;在电子设备确定投屏参数满足第一条件时,接收电子设备发送的第一信息,并调整显示设备的第三参数。这样,电子设备不仅可以调整电子设备侧的参数,还可以调整显示设备的参数,实现了多端调节。
45.在一种可能的实现方式中,显示设备也可以不接收电子设备发送的第一信息,显示设备监测到投屏效果不满足预设条件时,调整显示设备的第三参数。这样,显示设备可以监测显示设备侧的投屏效果,并根据投屏效果实时调整第三参数。
46.在一种可能的实现方式中,显示设备还用于在接收第一信息后,将第三参数调整至第五值;其中,第五值小于第三预设值。可以避免出现第三参数的调整范围过大导致影响用户体验的问题的。
47.在一种可能的实现方式中,在电子设备确定出投屏效果不好,且电子设备确定出第二负载满足第三条件之后,显示设备接收电子设备发送的第一信息,第一信息用于指示显示设备调整显示设备的第三参数;显示设备在接收第一信息后,调整显示设备的第三参数。
48.第二负载包括但不仅限于显示设备中硬件(例如cpu或gpu或ddr或编码器)的使用
率,或显示设备中的图像合成时间。当显示设备中硬件的使用率大于预设使用率,或者显示设备中的图像合成时间大于预设时间时,显示设备接收电子设备发送的第一信息。这样,电子设备可以确定出导致投屏效果差的原因,并采取对应的措施提高投屏效果。
49.结合第三方面,在一种可能的实现方式中,第三参数包括以下任意一项:显示设备中cpu的工作频率、显示设备中gpu的工作频率、显示设备中解码器的工作频率、显示设备中ddr的工作频率、显示设备的显示帧率。
50.结合第三方面,在一种可能的实现方式中,在显示设备接收电子设备发送的第一信息之前,方法还包括:显示设备向电子设备发送第四参数;其中,投屏参数包括投屏时延,第四参数包括显示设备显示第一投屏内容中第一投屏帧画面的第一时刻;第四参数用于电子设备基于第一时刻和电子设备发送第一投屏帧画面的第二时刻确定投屏时延;第一条件包括:投屏时延大于预设时延;和/或,投屏参数包括投屏帧率差,第四参数包括显示设备显示第一投屏帧画面的第一帧率;第四参数用于电子设备基于第一帧率和电子设备获取到第一投屏帧画面的第二帧率确定投屏帧率差;第一条件包括:投屏帧率差大于预设帧率差。
51.这里,当投屏参数为投屏时延时,第一条件为投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏时延大于预设时延。当投屏参数为投屏帧率差时,第一条件为投屏帧率差大于预设帧率差,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差。投屏参数为投屏帧率差和投屏时延时,第一条件为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延。
52.第四方面,本技术提供了一种电子设备,包括:一个或多个处理器、一个或多个存储器;一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,一个或多个处理器调用计算机指令以使得电子设备执行上述任一方面任一项可能的实现方式中电子设备执行方法步骤。
53.第五方面,本技术提供了一种显示设备,包括:一个或多个处理器、一个或多个存储器;一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,一个或多个处理器调用计算机指令以使得显示设备执行上述任一方面任一项可能的实现方式中显示设备执行方法步骤。
54.第六方面,本技术提供了一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的实现方式中电子设备执行方法步骤。
55.第七方面,本技术提供了一种计算机存储介质,包括计算机指令,当计算机指令在显示设备上运行时,使得显示设备执行上述任一方面任一项可能的实现方式中显示设备执行方法步骤。
56.第八方面,本技术提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的实现方式中电子设备执行方法步骤。
57.第九方面,本技术提供了一种计算机程序产品,当计算机程序产品在显示设备上运行时,使得显示设备执行上述任一方面任一项可能的实现方式中显示设备执行方法步骤。
附图说明
58.图1为本技术实施例提供的一种电子设备100如何将投屏内容传输至显示设备200的流程图;
59.图2为本技术实施例提供的一种系统架构图;
60.图3为本技术实施例提供的另一种系统架构图;
61.图4为本技术实施例提供的一种电子设备100的结构示意图;
62.图5为本技术实施例提供的一种电子设备100的软件结构框图;
63.图6为本技术实施例提供的一种电子设备100与显示设备200实时监测设备中的系统负载能力以及投屏性能参数,并根据投屏性能参数动态调整系统负载的能力的示意图;
64.图7a-图7d示例性示出了电子设备100监测到的开启协同投屏功能的用户操作的ui图;
65.图8为本技术实施例提供的一种电子设备100与显示设备200协商显示参数的过程;
66.图9-图10我本技术实施例提供的一种投屏效果调节策略一的方法流程图;
67.图11为本技术实施例提供的一种电子设备100调节电子设备100与显示设备200之间的投屏码率的示意图;
68.图12为本技术实施例提供的一种电子设备100调节电子设备100侧采样帧率的示意图;
69.图13为本技术实施例提供的一种显示设备200调节显示设备200侧显示帧率的示意图;
70.图14为本技术实施例提供的一种电子设备100调节电子设备100侧投屏分辨率的示意图;
71.图15为本技术实施例提供的一种投屏方法的流程图;
72.图16为本技术实施例提供的另一种投屏方法的流程图。
具体实施方式
73.下面将结合附图对本技术实施例中的技术方案进行清楚、详尽地描述。其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
74.以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本技术实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
75.本技术的说明书和权利要求书及附图中的术语“用户界面(user interface,ui)”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。应用程序的用户界面是通过java、可扩展标记语言(extensible markup language,xml)等特定计算机语言编写的源代码,界面源代码在
终端设备上经过解析,渲染,最终呈现为用户可以识别的内容,比如图像、文本、按钮等控件。控件(control)也称为部件(widget),是用户界面的基本元素,典型的控件有工具栏(toolbar)、菜单栏(menu bar)、输入框、按钮(button)、滚动条(scrollbar)、图像和文本。界面中的控件的属性和内容是通过标签或者节点来定义的,比如xml通过《textview》、《imgview》、《videoview》等节点来规定界面所包含的控件。一个节点对应界面中一个控件或属性,节点经过解析和渲染之后呈现为用户可视的内容。此外,很多应用程序,比如混合应用(hybrid application)的界面中通常还包含有网页。网页,也称为页面,可以理解为内嵌在应用程序界面中的一个特殊的控件,网页是通过特定计算机语言编写的源代码,例如超文本标记语言(hyper text markup language,html),层叠样式表(cascading style sheets,css),java脚本(javascript,js)等,网页源代码可以由浏览器或与浏览器功能类似的网页显示组件加载和显示为用户可识别的内容。网页所包含的具体内容也是通过网页源代码中的标签或者节点来定义的,比如html通过《p》、《img》、《video》、《canvas》来定义网页的元素和属性。
76.用户界面常用的表现形式是图形用户界面(graphic user interface,gui),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个窗口、控件等界面元素。
77.目前,电子设备100与显示设备200建立投屏连接。电子设备100实时获取投屏内容并将投屏内容发送至显示设备200。显示设备200接收并显示电子设备100发送的投屏内容。
78.如图1所示,图1示例性示出了电子设备100如何将投屏内容传输至显示设备200的流程图。
79.如图1所示,电子设备100包括虚拟显示器。图像合成模块。编码模块和打包模块;显示设备200中包括有解包模块、编码模块、图像合成模块和显示器。
80.电子设备100从电子设备100的显示器上获取显示器显示的图像信息。显示器显示的图像信息可以是虚拟显示器(virtual display screen,vds)显示的图像信息。
81.之后,电子设备100将图像信息发送至图像合成模块。图像合成模块接收图像信息,并把显示器显示的图像信息合成图像。之后,图像合成模块将合成的图像发送至编码模块。
82.编码模块用于接收合成的图像,并采用对应的编码器将合成的图像进行编码,之后,编码模块将编码图像发送至打包模块。
83.打包模块用于接收编码模块发送的编码图像,并将编码图像进行压缩,之后通过电子设备100与显示设备200之间的信道将压缩的编码图像通过数据流的形式传输至显示设备200。
84.显示设备200的解包模块用于接收电子设备100中打包模块发送的数据流,并将数据流解码出来,得到编码图像。解包模块将编码图像发送至解码模块。
85.解码模块用于接收解包模块发送的编码图像,并根据与电子设备100采用的编码器对应的解码器将编码图像解码出来,得到解码图像,加码模块将解码图像发送至解包模块。
86.解码模块还用于接收解码模块发送的解码图像,并将解码图像发送至显示设备200的图像合成模块。
87.显示设备200的图像合成模块用于接收解包模块发送的解码图像,并将解码图像合成适应于显示设备200显示的图像格式。之后,显示设备200将合成后的解码图像显示在显示设备200的虚拟显示器(virtual display screen,vds)上显示。
88.若此时投屏效果不好,例如电子设备100监测出电子设备100的采样帧率与显示设备200的显示帧率的帧率差大于预设帧率差,或者电子设备100与显示设备200的投屏时延大于预设时延,则电子设备100将监测网络状态是否正常。若电子设备100监测出网络负载过高导致投屏效果差,则电子设备100将减小数据传输的码率,以提高投屏效果。
89.若电子设备100监测出不是网络问题导致的投屏效果差,则电子设备100和显示设备200无法通过除了降低码率以外的其他的方式来改善电子设备100的投屏效果。
90.因此本技术提供了一种投屏方法,方法包括:电子设备100和显示设备200将采用投屏效果分级调节策略来调节系统负载能力或者投屏参数,以使得投屏性能参数满足预设条件,投屏效果分级调节策略以影响用户体验的程度从低到高为目标进行调节,减少电子设备100或显示设备200调节系统负载能力或者投屏参数时,影响用户的体验。采用该方法,一方面,电子设备100或显示设备200可以确定出影响投屏效果的原因,并采用对应的策略改善投屏效果;另一方面,采用投屏效果分级调节策略,考虑了影响用户体验的因素,以减小用户的影响为目标进行调节。
91.具体的,首先,电子设备100和/或显示设备200监测到各自的硬件负载比较高,则将各自的硬件的工作频率提高;若电子设备100和/或显示设备200的硬件的工作频率提高之后,投屏效果还是不好,电子设备100降低码率和采样帧率,若投屏效果还是不好,显示设备200降低显示设备200的显示帧率。若投屏效果还是不好,电子设备100降低分辨率,以改善投屏效果。
92.如图2所示,图2为本技术实施例提供的一种系统架构图。
93.图2示例性地示出了本技术实施例中提供的一种系统20的结构示意图。如图2所示,该系统20包括电子设备100和显示设备200。
94.电子设备100可以是手机、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,pda)、增强现实(augmented reality,ar)设备、虚拟现实(virtual reality,vr)设备、人工智能(artificial intelligence,ai)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备,本技术实施例对该电子设备的具体类型不作特殊限制。电子设备100的软件系统包括但不限于请实施例对该电子设备的具体类型不作特殊限制。电子设备100的软件系统包括但不限于linux或者其它操作系统。
95.显示设备200是指具有较大尺寸的显示屏的电子设备,例如平板、电视机、个人电脑(personal computer,pc)、台式电脑或者电子广告牌等。
96.本技术对于电子设备100和显示设备200的类型不做限定。本声请实施例以电子设备100为手机,显示设备200为个人电脑为例,对本技术实施例进行说明。
97.本技术的实施例中,电子设备100可以通过近距离无线通信连接或本地有线连接与显示设备200进行直接连接。示例性的,电子设备100和显示设备200可以具有无线局域网(wireless local area network,wlan)技术、无线保真直连(wireless fidelity direct,wi-fi direct)(又称为无线保真点对点(wirelessfidelity peer-to-peer,wi-fi p2p))、
超宽带(ultra wide band,uwb)通信模块、蓝牙(bluetooth)通信模块、近场通信(near field communication,nfc)通信模块、zigbee通信模块中的一项或多项近距离通信模块。以电子设备100为例,电子设备100可以通过近距离通信模块(例如wi-fi p2p)发射信号来探测、扫描电子设备100附近的电子设备,使得电子设备100可以通过近距离无线通信协议发现附近的电子设备,并与附近的电子设备建立无线通信连接,以及传输数据至附近的电子设备(例如显示设备200)。
98.本技术的实施例中,电子设备100和显示设备200建立投屏连接后,电子设备100可以向显示设备200发送投屏的图像数据和/或音频数据等,显示设备200可以基于电子设备100发送的数据进行界面显示和/或音频输出。电子设备100也可以被称为输出端或源端(source端),显示设备200也可以被称为接收端或宿端(sink端)。
99.其中,电子设备100显示或播放的多媒体内容的格式可包括以下任意一项或多项:视频、文字、图片、照片、音频或表格等。例如,当多媒体内容的格式为视频时,视频的类型可以是电影、电视剧、短视频、音乐剧等。
100.可以理解的,本实施例示出的结构并不构成对系统20的具体限定。在本技术另一些实施例中,系统20可以包括比图示更多或更少的设备。
101.如图3所示,图3为本技术实施例提供的另一种系统架构图。
102.图3示例性地示出了本技术实施例中提供的另一种系统30的结构示意图。如图3所示,电子设备100可以同时与多个显示设备建立投屏连接。该系统30包括电子设备100和多个显示设备,多个显示设备可以包括显示设备200、显示设备300和显示设备400等等。系统30还可以包括更多的显示设备,本技术在此不做限定。
103.电子设备100可以是手机、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,pda)、增强现实(augmented reality,ar)设备、虚拟现实(virtual reality,vr)设备、人工智能(artificial intelligence,ai)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备,本技术实施例对该电子设备的具体类型不作特殊限制。电子设备100的软件系统包括但不限于请实施例对该电子设备的具体类型不作特殊限制。电子设备100的软件系统包括但不限于linux或者其它操作系统。
104.显示设备是指具有较大尺寸的显示屏的电子设备,例如平板、电视机、个人电脑(personal computer,pc)、台式电脑或者电子广告牌等。
105.本技术对于电子设备100和显示设备的类型不做限定。本声请实施例以电子设备100为手机,显示设备200为个人电脑、显示设备300为平板、显示设备400电视机为为例,对本技术实施例进行说明。
106.手机可以同时将多媒体内容发送至显示设备200、显示设备300和显示设备400。
107.当电子设备100同时与多个显示设备建立投屏连接时,这种情况下,可以将电子设备100分别与多个显示设备的连接视为多个独立的系统的组成。即电子设备100与显示设备200践行数据传输、电子设备100与显示设备300进行数据传输、电子设备100与显示设备400进行数据传输相互独立,互不影响。
108.电子设备100与多个显示设备建立投屏连接并将数据传输至多个显示设备与电子100与一个显示设备建立投屏连接并将数据传输至该一个显示设备的方法一致。本技术实
施例以电子设备100与一个显示设备建立投屏连接为例进行说明。
109.图4示出了电子设备100的结构示意图。
110.下面以电子设备100为例对实施例进行具体说明。电子设备100的设备类型可以包括手机、平板电脑、智慧屏、桌面型计算机、膝上计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本,等。本技术实施例对电子设备100的设备类型不做特殊限制。
111.应该理解的是,图4所示电子设备100仅是一个范例,并且电子设备100可以具有比图4中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
112.电子设备100可以包括处理器110,外部存储器接口120,内部存储器130,通用串行总线(universal serial bus,usb)接口140,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,显示屏191,摄像头192,sim卡接口193等。其中传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
113.可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
114.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
115.其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
116.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
117.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
118.内部存储器130可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器130的指令,从而执行电子设备100的各种功能应用以及数据处理。
119.usb接口140是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接
口,usb type c接口等。usb接口140可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如ar设备等。
120.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
121.天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
122.移动通信模块150可以提供应用在电子设备100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
123.无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
124.电子设备100通过gpu,显示屏191,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏191和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
125.显示屏191用于显示图像,视频等。在一些实施例中,电子设备100可以包括1个或n个显示屏191,n为大于1的正整数。
126.电子设备100可以通过isp,摄像头192,视频编解码器,gpu,显示屏191以及应用处理器等实现拍摄功能。
127.isp用于处理摄像头192反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。在一些实施例中,isp可以设置在摄像头192中。
128.摄像头192用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备100可以包括1个或n个摄像头192,n为大于1的正整数。
129.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
130.视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
131.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
132.电子设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
133.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。
134.扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。
135.受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。
136.麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
137.耳机接口170d用于连接有线耳机。
138.sim卡接口193用于连接sim卡。sim卡可以通过插入sim卡接口193,或从sim卡接口193拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或n个sim卡接口,n为大于1的正整数。在一些实施例中,电子设备100采用esim,即:嵌入式sim卡。esim卡可以嵌在电子设备100中,不能和电子设备100分离。
139.电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的android系统为例,示例性说明电子设备100的软件结构。
140.图5是本发明实施例的电子设备100的软件结构框图。
141.分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。
142.应用程序层可以包括一系列应用程序包。
143.如图5所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序。
144.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
145.如图5所示,应用程序框架层可以包括窗口管理器,内容提供器,资源管理器,通知管理器等,监测模块、决策模块和执行模块。
146.窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
147.内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
148.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
149.通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
150.监测模块用于:
151.1、将电子设备100的采样帧率和获取投屏内容的时刻发送至显示设备200中的监测模块。
152.2、接收显示设备200中的监测模块发送的显示帧率和显示投屏内容的时刻。其中,显示帧率用于电子设备100根据显示设备200的显示帧率和电子设备100的采样帧率计算出投屏帧率差。显示投屏内容的时刻用于电子设备100根据显示设备200显示投屏内容的时刻和电子设备100获取投屏内容的时刻计算出投屏时延。
153.3、监测投屏帧率差以及投屏时延。投屏帧率差等于显示设备200的显示帧率和电子设备100的采样帧率的差值,投屏时延等于显示设备200的显示投屏内容的时刻与电子设备100获取投屏内容的时刻的差值。
154.4、监测电子设备100中的系统负载能力。系统负载能力包括cpu使用率、gpu使用率、ddr使用率、codec使用率、网络传输时延、图像合成时间。
155.5、将系统负载能力和投屏性能参数发送至决策模块。其中,投屏性能参数包括投屏帧率差以及投屏时延。
156.其中,cpu使用率是电子设备100中运行的程序占用的cpu资源。cpu的使用率越高,则电子设备100中运行的程序越多。cpu使用率低于预设使用率时,则cpu的负载正常,当cpu的使用率高于预设使用率时,则cpu的负载过高。
157.gpu使用率是电子设备100中显卡的占用率。
158.ddr使用率是电子设备100中双倍速率同步动态随机存储器的占用率。
159.codec使用率是电子设备100中编解码器的占用率。
160.网络传输时延即电子设备100与显示设备200之间的数据传输时延,网络传输时延等于投屏内容离开电子设备100的时刻与投屏内容到达显示设备200的时刻之间的时间差。网络传输时延越小,说明当前电子设备100与显示设备200之间的网络状况越好。
161.图像合成时间电子设备100或显示设备200合成预定数量的图像帧(例如一帧)所花费的时间。
162.决策模块,用于:
163.1、接收监测模块发送的系统负载能力和投屏性能参数。
164.2、确定出投屏性能参数是否满足预设条件,若投屏性能参数不满足预设条件,即决策模块判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设投屏时延,决策模块监测系统负载能力,若系统负载能力大于预设能力,决策模块向执行模块发送调节投屏参数请求。
165.执行模块,用于:
166.1、接收决策模块发送的调节投屏参数请求。
167.2、根据调节投屏参数请求,调节投屏参数。其中,投屏参数包括采样帧率或投屏码
率或投屏分辨率等等。
168.这里,决策模块如何根据系统负载能力向执行模块发送调节投屏参数请求,以及执行模块如何根据调节投屏参数请求,调节系统负载能力或者投屏参数的,将在后续实施例,详细介绍,本技术在此不再赘述。
169.android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
170.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
171.应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
172.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),2d图形引擎(例如:sgl)等。
173.表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。
174.媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg4,h.264,mp3,aac,amr,jpg,png等。
175.三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
176.2d图形引擎是2d绘图的绘图引擎。
177.内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
178.下面结合捕获拍照场景,示例性说明电子设备100软件以及硬件的工作流程。
179.当触摸传感器180k接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头捕获静态图像或视频。
180.如图6所示,图6示例性示出了电子设备100与显示设备200实时监测设备中的系统负载能力以及投屏性能参数,并根据投屏性能参数动态调整系统负载的能力的示意图。
181.需要说明的是,电子设备100可以监测投屏性能参数和电子设备100中的系统负载能力同时,监测显示设备200中的系统负载能力;显示设备200可以监测投屏性能参数和显示设备200中的系统负载能力的同时,监测电子设备100中的系统负载能力;电子设备100可以只监测投屏性能参数和电子设备100中的系统负载能力,显示设备200可以只监测投屏性能参数和显示设备200中的系统负载能力。本身请对此不做限制。
182.本技术以下实施例以电子设备100监测投屏性能参数和电子设备100中的系统负载能力,显示设备200监测投屏性能参数和和显示设备200中的系统负载能力为例进行说明。
183.如图6所示,电子设备100包括监测模块、决策模块和执行模块;显示设备200包括
监测模块、决策模块和执行模块。
184.需要说明的是,监测模块、决策模块和执行模块实质是可以为一个模块,即一个模块可以实现该监测模块、决策模块和执行模块的功能,监测模块、决策模块和执行模块也可以为独立的三个模块,监测模块、决策模块和执行模块也可以为两两结合为一个模块,本技术实施例对于监测模块、决策模块和执行模块的存在形式不做限定。在一些实施例中,电子设备100也可以不包括监测模块、决策模块和执行模块,监测模块、决策模块和执行模块仅为示例作为对本方案的解释,不应构成限定。
185.电子设备100中监测模块、决策模块和执行模块在图5所示的实施例中已详细介绍本技术在此不再赘述。显示设备200中的监测模块、决策模块和执行模块的作用于电子设备100中监测模块、决策模块和执行模块的作用类似。
186.监测模块:
187.具体的,对于电子设备100的监测模块的作用见图5实施例中介绍的监测模块的作用,本技术在此不再赘述。
188.在一些实施例中,电子设备100中的监测模块,还用于将电子设备100的系统负载能力发送至电子设备100中的监测模块。
189.在一些实施例中,电子设备100中的监测模块在监测电子设备100中的系统负载能力的同时,接收显示设备200的监测模块发送的显示设备200中的系统负载能力,并监测显示设备200中的系统负载能力。系统负载能力包括cpu使用率、gpu使用率、ddr使用率、codec使用率、网络传输时延、图像合成时间等等。
190.对于显示设备200,监测模块用于:
191.1、将显示设备200的显示帧率和显示投屏内容的时刻发送至电子设备100中的监测模块。其中,显示帧率用于电子设备100根据显示设备200的显示帧率和电子设备100的采样帧率计算出投屏帧率差。显示投屏内容的时刻用于电子设备100根据显示设备200显示投屏内容的时刻和电子设备100获取投屏内容的时刻计算出投屏时延。
192.2、接收电子设备100中的监测模块发送的采样帧率和获取投屏内容的时刻。其中,采样帧率用于显示设备200根据显示设备200的显示帧率和电子设备100发送的采样帧率计算出投屏帧率差。该获取投屏内容的时刻用于显示设备200根据显示设备200的显示投屏内容的时刻和电子设备100发送的获取投屏内容的时刻计算出投屏时延。
193.在一些实施例中,显示设备200中的监测模块在监测显示设备200中的系统负载能力的同时,接收电子设备100的监测模块发送的电子设备100中的系统负载能力,并监测电子设备100中的系统负载能力。系统负载能力包括cpu使用率、gpu使用率、ddr使用率、codec使用率、网络传输时延、图像合成时间等等。
194.3、监测投屏帧率差以及投屏时延。投屏帧率差等于显示设备200的显示帧率和电子设备100的采样帧率的差值,投屏时延等于据显示设备200的显示投屏内容的时刻与电子设备100获取投屏内容的时刻的差值。
195.4、实时监测显示设备200中的系统负载能力。系统负载能力包括显示设备200的cpu使用率、gpu使用率、ddr使用率、codec使用率、网络传输时延、图像合成时间。
196.5、将投屏性能参数和显示设备200的系统负载能力发送至决策模块。其中,显示设备200的系统负载能力包括:显示设备200中的cpu使用率、gpu使用率、ddr使用率、codec使
用率、网络传输时延、图像合成时间;投屏性能指标包括投屏帧率差以及投屏时延。
197.在一些实施例中,监测模块还用于将电子设备100中的系统负载能力发送至决策模块。
198.决策模块:
199.对于电子设备100的决策模块的作用见图5实施例中介绍的决策模块的作用,本技术在此不再赘述。
200.在一些实施例中,若电子设备100的监测模块监测到显示设备200中的系统负载能力高于预设能力,则电子设备100的监测模块向显示设备200中的决策模块发送调节投屏参数请求,该调节投屏参数用于请求显示设备200调节显示设备200中的系统负载能力或者投屏参数。
201.对于显示设备200,决策模块,用于:
202.1、接收监测模块发送的显示设备200的系统负载和投屏性能指标。
203.在一些实施例中,决策模块还用接收监测模块发送的电子设备100中的系统负载能力。
204.2、确定出投屏性能指标是否满足预设条件,若投屏性能指标不满足预设条件,即决策模块判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设投屏时延,决策模块向执行模块发送调节投屏参数请求,该调节投屏参数用于请求显示设备200调节显示设备200中的系统负载能力或者投屏参数。
205.具体的,若监测模块监测到显示设备200中的系统负载能力高于预设能力,则监测模块向显示设备200中的决策模块发送调节投屏参数请求,该调节投屏参数请求用于调节显示设备200中的系统负载能力或者投屏参数。
206.在一些实施例中,若监测模块监测到电子设备100中的系统负载能力高于预设能力,则监测模块向电子设备100中的监测模块发送调节投屏参数请求,该调节投屏参数请求用于调节电子设备100中的系统负载能力或者投屏参数。
207.执行模块:
208.对于电子设备100的执行模块的作用见图5实施例中介绍的执行模块的作用,本技术在此不再赘述。
209.在一些实施例中,电子设备100中的决策模块接收到显示设备200中的决策模块发送的调节投屏参数请求之后,电子设备100的决策模块将调节投屏参数请求发送至电子设备100的执行模块,执行模块接收并响应该调节投屏参数请求,该调节投屏参数请求用于调节电子设备100中的系统负载能力或者投屏参数。
210.对于显示设备200,执行模块用于:
211.1、接收决策模块发送的调节投屏参数请求。
212.2、根据调节投屏参数请求,调整系统负载能力或者投屏参数。
213.在一些实施例中,显示设备200中的决策模块接收到电子设备100中的决策模块发送的调节投屏参数请求之后,显示设备200的决策模块将调节投屏参数请求发送至显示设备200的执行模块,执行模块接收并响应该调节投屏参数请求,该调节投屏参数请求用于调节显示设备200中的系统负载能力或者投屏参数。
214.这里,决策模块如何根据系统负载能力向执行模块发送调节投屏参数请求,以及
执行模块如何根据调节投屏参数请求,调节系统负载能力或者投屏参数的,将在后续实施例,详细介绍,本技术在此不再赘述。
215.下面结合ui图具体介绍电子设备100与显示设备200如何建立投屏连接。
216.电子设备100可以通过以下方式与显示设备200建立投屏连接。
217.图7a-图7d示例性示出了电子设备100监测到的开启协同投屏功能的用户操作的ui图。
218.图7a示出了电子设备100上的示例性视频播放用户界面40。该用户界面40显示有:视频名称(勇敢的跨步)、视频播放进度(第1集)、视频播放时长(4分13秒)、视频总时长(7分33秒)、视频的热度(5946)、视频的总集数(23集全)、更多视频图标以及更多视频对应的图像。
219.如图7a及图7b所示,当电子设备100监测到在显示屏上的向下滑动手势时,响应于该滑动手势,电子设备100在用户界面40上显示窗口401。如图7b所示,窗口401中可以显示有控件402,控件402可接收开启/关闭电子设备100的协同投屏功能的操作(例如触摸操作、点击操作)。控件402的表现形式可以包括图标和/或文本(例如文本“投屏”)。窗口401中还可以显示有其他功能例如wi-fi、蓝牙、手电筒、响铃、自动旋转、即时分享、飞行模式、移动数据、位置信息、截屏、护眼模式、热点、屏幕录制、nfc等开关控件,即监测到开启协同投屏功能的用户操作。在一些实施例中,电子设备100监测到作用于控件402的用户操作后,可以更改控件402的显示形式,例如增加显示控件402时的阴影等。
220.不限于在图7a所示的视频播放用户界面40上,用户还可以在其他界面上输入向下滑动的手势,触发电子设备100显示窗口401。
221.不限于图7a及图7b示出的用户在窗口401中作用于控件402的用户操作,在本技术实施例中,开启协同投屏功能的用户操作还可以实现为其他形式,本技术实施例不作限制。
222.例如,电子设备100还可以显示设置(settings)应用提供的设置界面,该设置界面中可包括提供给用户的用于开启/关闭电子设备100的协同投屏功能的控件,用户可通过在该控件上输入用户操作来开启电子设备100的协同投屏功能。
223.监测到开启协同投屏功能的用户操作,电子设备100通过wi-fi p2p、无线局域网、蓝牙、nfc中一项或多项发现该电子设备100附近的可投屏的电子设备。例如,电子设备100可以通过wi-fi p2p发现附近的显示设备200以及其他电子设备。
224.除了显示电子设备100发现的可接受协同投屏的电子设备的标识,电子设备100还可以显示其他信息,例如发现的电子设备的图像等,本技术实施例不作限制。
225.之后,示例性地,如图7c所示,电子设备100上弹出窗口403。窗口403包括:界面指示符404、图标405、一个或多个显示设备的图像406和标识407。
226.示例性地,如图7c所示,选择显示设备200的用户操作可以是作用于显示设备200对应的图像406和/或标识407上的用户操作。选择显示设备200的用户操作还可以实现为其他形式,本技术实施例不作限制。
227.响应于该用户操作,电子设备100可以通过例如wi-fi p2p、无线局域网等无线通信技术和显示设备200建立通信连接。例如,电子设备100和显示设备200建立wi-fi p2p通信连接。电子设备100和显示设备200建立通信连接后,电子设备100将实时显示的内容发送至显示设备200。
228.具体的,电子设备100可以通过录屏、录音等方式获取当前显示的多媒体内容(包含图像或图像和音频),然后将获取的内容压缩后,通过和显示设备200之间的通信连接发送给显示设备200。以电子设备100和显示设备200基于miracast共享多媒体内容为例,电子设备100可以根据miracast协议中的规定,通过录屏的方式获取显示屏显示的图像,使用h.264编码算法对该图像进行压缩;采集电子设备100所播放的音频,使用高级音频编码(advanced audio coding,aac)算法对该音频进行压缩;然后将压缩后的音频数据和图像数据封装为传输流(transport stream,ts),之后对ts流按照实时传送协议(real-time transport protocol,rtp)进行编码并将编码后得到的数据通过wi-fi直连连接发送给显示设备200。即,该多媒体内容通过流媒体的方式传输。
229.如图7d所示,电子设备100将当前显示的多媒体内容(包含图像和/或音频)传输至显示设备200,显示设备200接收电子设备100传输的当前显示的多媒体内容(包含图像和/或音频),并显示在显示设备200的显示屏上。
230.显示设备200接收到电子设备100基于通信连接发送的多媒体内容后,可以对该多媒体内容执行解码处理,从而获取多媒体内容。以电子设备100和显示设备200基于miracast共享多媒体内容为例,显示设备200可以基于与电子设备100之间的wi-fi直连通信连接接收到rtp编码的ts流,并可以按顺序对其执行rtp解码、ts流解封装、音画质处理/时延同步处理,最后输出音视频,即播放多媒体内容。
231.需要说明的是,上述只是示例性的列举了一种电子设备100与显示设备200建立投屏连接的方式,电子设备100还可以通过其他的方式,与显示设备200建立投屏连接,本身请在此不做限定。
232.在电子设备100与显示设备200建立投屏连接之后,电子设备100将与显示设备200进行显示参数的协商,显示参数包括双方支持的编码格式、屏幕分辨率、音频格式、采样帧率、数据传输的码率等等,便于后续执行的投屏内容的传输。
233.如图8所示,图8示例性示出了电子设备100与显示设备200协商显示参数的过程。
234.s801、电子设备100与显示设备200建立投屏连接。
235.电子设备100与显示设备200建立连接的过程请参考图7a-图7d所示的实施例,本技术在此不再赘述。
236.s802、电子设备100接收显示设备200发送显示参数一,显示参数一包括显示设备200支持的显示帧率、屏幕分辨率。
237.显示帧率为显示设备200在固定时间内(例如1s)可以显示的图像帧的数量。示例性的,显示设备200支持的显示帧率可以包括60hz、70hz、90hz、100hz和120hz等等。显示设备200的显示帧率越高,则显示设备200显示的画面越流畅。
238.屏幕分辨率为显示设备200在水平方向和水平方向上显示的像素数量。示例性的,屏幕分辨率为150
×
128,表示水平方向含有像素数为150个,垂直方向像素数128个。屏幕分辨率越高,则显示设备200显示的图像的清晰度越高。屏幕分辨率为显示设备200可以支持的显示图像的分辨率,屏幕分辨率反映的是显示设备200支持的分辨率的能力。需要说明的是,屏幕分辨率为显示设备200的固有属性,显示设备200支持的分辨率的类型由显示设备的00的硬件条件决定的,一般是不可变的。示例性的,显示设备200支持的屏幕分辨率可以为1080p,720p,540p中的一种或几种。
239.屏幕分辨率与显示设备200的中央处理器(central processing unit,cpu)的类型、wifi芯片的类型、内存大小、电子设备100与显示设备200之间的信道类型有关系。
240.当满足cpu是高性能的cpu,wifi芯片是高性能的wifi芯片、存储器的容量大于预设容量、电子设备100与显示设备200之间的信道类型为5g信道中的任意一项或多项时,显示设备200支持1080p的屏幕分辨率。
241.示例性的,如表1所示,表1示例性示出了一种显示设备200根据cpu类型、wifi芯片的类型、内存大小和信道类型确定出显示设备200支持的屏幕分辨率的示例。
242.表1
[0243][0244]
如表1所示,只有当显示设备200的cpu的类型为980/985/990/9a0中的任意一种、且显示设备200的wifi芯片的类型为1103/1105中的任意一种、且显示设备200的内存为6g/8g中的任意一种、且显示设备200与电子设备100建立的数据通道为5g信道时,显示设备200才会支持1080p的屏幕分辨率。当显示设备200的cpu的类型不属于980/985/990/9a0中的任意一种,例如显示设备200的cpu的类型属于710/810/970中的任意一种时,不管显示设备200的wifi芯片的类型、内存大小以及与电子设备100建立的数据通道类型为多少,显示设备200只支持540p的屏幕分辨率。当显示设备200的wifi芯片的类型不属于1103/1105中的任意一种,例如显示设备200的wifi芯片的类型属于1102/1102a中的任意一种时,不管显示设备200的cpu类型、内存大小以及与电子设备100建立的数据通道类型为多少,显示设备200只支持540p的屏幕分辨率。当显示设备200的内存大小不属于6g/8g中的任意一种,例如显示设备200的内存大小属于3g/4g中的任意一种时,不管显示设备200的cpu类型、wifi芯片的类型以及与电子设备100建立的数据通道类型为多少,显示设备200只支持540p的屏幕分辨率。当显示设备200与电子设备100建立的数据通道类型不属于5g时,例如显示设备200与电子设备100建立的数据通道类型为2.4g时,不管显示设备200的cpu类型、wifi芯片的类型以及显示设备200的内存为多少,显示设备200只支持540p的屏幕分辨率。
[0245]
示例性的,若显示设备的200支持的屏幕分辨率为540p和1080p时,显示设备200将支持的屏幕分辨率的数值发送至电子设备100。
[0246]
显示参数一还包括其他的参数,例如编码类型等等,本技术在此不做限定。
[0247]
编码类型包括语音编码类型和图像流编码类型。示例性的,图像流编码类型包括以下任意一种:xvid,avc/h.264,mpeg1,mpeg2;语音编码类型包括以下任意一种:mp3、aac。需要说明的是,图像流编码类型和语音编码类型还可以是其他的类型,本技术在此不做限定。
[0248]
s803、电子设备100根据显示参数二和显示参数一得到投屏参数,投屏参数包括投屏码率、采样帧率和投屏分辨率。
[0249]
显示参数二包括电子设备100支持的显示帧率和屏幕分辨率。
[0250]
显示帧率为电子设备100在固定时间内(例如1s)可以显示的图像帧的数量。示例性的,电子设备100支持的显示帧率可以包括60hz、70hz、90hz、100hz和120hz等等。电子设备100的显示帧率越高,则电子设备100显示的画面越流畅。
[0251]
投屏分辨率是可以实时变化的,投屏分辨率反映的是电子设备100中投屏内容的显示状态。即电子设备100可以根据网络状况、硬件的负载情况等改变投屏内容的分辨率。示例性的,若电子设备100和显示设备200均支持1080p和540p的屏幕分辨率时,当前的投屏分辨率为1080p,当网络条件变差,或者硬件的负载比较高时,电子设备100可以将电子设备100与显示设备200之间的投屏分辨率降低至540p。对于同样尺寸的电子设备100或者显示设备200,对于同样的投屏内容,投屏分辨率越高,则电子设备100或者显示设备200显示的每一帧图像的像素数越多。
[0252]
屏幕分辨率与电子设备100的中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和wifi芯片的类型。
[0253]
如表2所示,表2示例性示出了电子设备100根据cpu类型、wifi芯片的类型、内存大小和信道类型确定出显示设备200支持的屏幕分辨率。
[0254]
当满足cpu是高性能的cpu,wifi芯片是高性能的wifi芯片、存储器的容量大于预设容量、电子设备100与显示设备200之间的信道类型为5g信道中的任意一项或多项,电子设备100才支持1080p的屏幕分辨率。
[0255]
示例性的,如表2所示,表2示例性示出了一种电子设备100根据cpu类型、wifi芯片的类型、内存大小和信道类型确定出电子设备100支持的屏幕分辨率的示例。
[0256]
表2
[0257][0258]
如表2所示,只有当显示设备200的cpu的类型为980/985/990/9a0中的任意一种、且显示设备200的wifi芯片的类型为bcm43596/1103/1105中的任意一种、且显示设备200的内存为6g/8g/12g中的任意一种、且显示设备200与电子设备100建立的数据通道为5g信道时,显示设备200才会支持1080p的屏幕分辨率。当显示设备200的cpu的类型不属于980/985/990/9a0中的任意一种,例如显示设备200的cpu的类型属于710/810/820/970中的任意一种时,不管显示设备200的wifi芯片的类型、内存大小以及与电子设备100建立的数据通道类型为多少,显示设备200只支持540p的屏幕分辨率。当显示设备200的wifi芯片的类型不属于bcm43596/1103/1105中的任意一种,例如显示设备200的wifi芯片的类型属于1102/1102a中的任意一种时,不管显示设备200的cpu类型、内存大小以及与电子设备100建立的数据通道类型为多少,显示设备200只支持540p的屏幕分辨率。当显示设备200的内存大小
不属于6g/8g/12g中的任意一种,例如显示设备200的内存大小属于3g/4g中的任意一种时,不管显示设备200的cpu类型、wifi芯片的类型以及与电子设备100建立的数据通道类型为多少,显示设备200只支持540p的屏幕分辨率。当显示设备200与电子设备100建立的数据通道类型不属于5g时,例如显示设备200与电子设备100建立的数据通道类型为2.4g时,不管显示设备200的cpu类型、wifi芯片的类型以及显示设备200的内存为多少,显示设备200只支持540p的屏幕分辨率。
[0259]
电子设备100接收显示设备200发送的屏幕分辨率的数值,并确定出电子设备100与显示设备200共有的屏幕分辨率的数值,并从共有的屏幕分辨率的数值中确定出投屏分辨率的数值;若电子设备100与显示设备200共有的屏幕分辨率的数值只包括一个数值时,则该一个数值为电子设备100与显示设备200传输数据的投屏分辨率;若电子设备100与显示设备200共有的分辨率的数值大于一个数值时,则电子设备100需要从多于一个数值中确定出一个数值为电子设备100与显示设备200传输数据的投屏分辨率。在一可能的实施例中,电子设备100从多个屏幕分辨率数值中确定出分辨率数值最高的为电子设备100与显示设备200传输数据的投屏分辨率。这样,电子设备100与显示设备200显示的画面会更清晰。
[0260]
示例性的,当电子设备100支持的屏幕分辨率的数值为540p和1080p,并且显示设备的200支持的屏幕分辨率也为540p和1080p。则电子设备100与显示设备200共同支持的屏幕分辨率的数值为540p和1080p。电子设备100可以采用540p和1080p中任意一种分辨率与显示设备200进行数据传输。在一可能的实施例中,当电子设备100与显示设备200共同支持的屏幕分辨率的数值为540p和1080p时,电子设备100优先采用1080p的分辨率(投屏分辨率)与显示设备200进行数据传输。这样,电子设备100与显示设备200显示的画面会更清晰。
[0261]
示例性的,当显示设备200支持的屏幕分辨率的数值为540p,并且显示设备的200支持的屏幕分辨率也为540p时,则电子设备100确定出540p(投屏分辨率)为电子设备100与显示设备200传输数据的分辨率。
[0262]
在一些实施例中,显示设备200也可以将显示设备200的cpu类型、wifi芯片的类型、内存大小和信道类型发送至电子设备100,由电子设备100确定出显示设备200支持的屏幕分辨率的数值。之后,电子设备100根据显示设备200支持的屏幕分辨率的数值和电子设备100支持的屏幕分辨率的数值确定出双方均支持的屏幕分辨率的数值。其中,电子设备100确定出显示设备200支持的屏幕分辨率的数值与显示设备200确定出显示设备200支持的屏幕分辨率的数值方法一致,具体的,请参考上述实施例,本技术在此不再赘述。
[0263]
另外,码率与投屏分辨率是相关的。当投屏分辨率为1080p时,码率的范围为3m-10m;当投屏分辨率为540p时,码率的范围为1m-5m;
[0264]
即当电子设备100与显示设备200确定出投屏分辨率之后,该投屏分辨率中限定了投屏码率的范围,电子设备100采取该投屏分辨率对应的最高的码率作为投屏码率。
[0265]
示例性的,当电子设备100与显示设备200确定出投屏分辨率为1080p之后,电子设备100采取10m的码率作为投屏码率;当电子设备100与显示设备200确定出投屏分辨率为540p之后,电子设备100采取5m的码率作为投屏码率。
[0266]
电子设备100接收显示设备200发送的显示帧率的数值,并确定出电子设备100与显示设备200共有的显示帧率的数值;若电子设备100与显示设备200共有的显示帧率的数值只包括一个数值时,则该一个数值为电子设备100与显示设备200传输数据的采样帧率;
若电子设备100与显示设备200共有的显示帧率的数值大于一个数值时,则电子设备100需要从多于一个数值中确定出一个数值为电子设备100与显示设备200传输数据的采样帧率。在一可能的实施例中,电子设备100从多个显示帧率数值中确定出显示帧率数值最高的为电子设备100与显示设备200传输数据的采样帧率。这样,电子设备100与显示设备200显示的画面会更清晰。
[0267]
示例性的,当电子设备100支持的显示帧率的数值为60hz、70hz、90hz、100hz和120hz,并且显示设备的200支持的显示帧率也为60hz、70hz、90hz、100hz和120hz。则电子设备100与显示设备200共同支持的显示帧率的数值为60hz、70hz、90hz、100hz和120hz。电子设备100可以采用60hz、70hz、90hz、100hz和120hz中任意一种显示帧率与显示设备200进行数据传输。在一可能的实施例中,当电子设备100与显示设备200共同支持的显示帧率的数值为60hz、70hz、90hz、100hz和120hz时,电子设备100优先采用120hz的显示帧率作为采样帧率与显示设备200进行数据传输。这样,电子设备100与显示设备200显示的画面会更流畅。
[0268]
示例性的,当显示设备200支持的显示帧率的数值为90hz,并且显示设备的200支持的显示帧率的数值为90hz时,则电子设备100确定出90hz为电子设备100与显示设备200传输数据的采样帧率。
[0269]
在一些实施例中,投屏参数除了包括投屏码率、采样帧率和投屏分辨率之外,还包括投屏编码类型,投屏参数还可以包括其他的参数,本技术在此不再一一介绍。
[0270]
s804、电子设备100向显示设备200发送投屏参数。
[0271]
投屏参数包括投屏码率、采样帧率和投屏分辨率。投屏参数还可以包括投屏编码类型。
[0272]
响应于发送的投屏参数,显示设备200接收电子设备100发送的投屏参数。
[0273]
s805、电子设备100获取投屏内容一,并以投屏参数处理投屏内容一得到投屏数据。
[0274]
s806、电子设备100将投屏数据发送至显示设备200。
[0275]
电子设备100可以通过录屏和/或录音等方式获取投屏内容一,并根据投屏参数对投屏内容一进行处理,得到以投屏参数处理后的投屏数据。
[0276]
电子设备100将投屏数据进行压缩,之后,将投屏数据发送至显示设备200。
[0277]
s807、显示设备200基于投屏数据和投屏参数,显示投屏内容一。
[0278]
响应于电子设备100发送的投屏数据,显示设备200接收投屏数据,并按照顺序将投屏数据解码、音画质处理,得到投屏内容一,之后,显示设备200显示投屏内容一。如图7d所示,图7d为显示设备200显示投屏内容一的示意图。
[0279]
电子设备100将投屏内容发送至显示设备200之后,电子设备100与显示设备200中,的监测模块、决策模块和执行模块将基于系统负载能力以及投屏性能参数,对硬件的工作频率和投屏参数做出调整,以使得投屏性能参数达到预设的条件,以改善投屏效果。
[0280]
接下来,将详细介绍,电子设备100与显示设备200中的决策模块如何根据系统负载能力向执行模块发送调节投屏参数请求,以及执行模块如何根据调节投屏参数请求,调节系统负载能力或者投屏参数的。
[0281]
本技术实施例中,当电子设备100或者显示设备200监测到投屏性能参数不满足预
设条件,即投屏效果不好时,电子设备100或者显示设备200将检测导致投屏效果不好的原因,确定出具体原因之后,电子设备100或者显示设备200将调节系统负载能力或者投屏参数使得投屏性能参数满足预设条件,以改善投屏效果。
[0282]
目前,若此时投屏效果不好,例如电子设备100监测出电子设备100的采样帧率与显示设备200的显示帧率的帧率差大于预设帧率差,或者电子设备100与显示设备200的投屏时延大于预设时延,则电子设备100将监测网络状态是否正常。若电子设备100监测出网络负载过高导致投屏效果差,则电子设备100将减小数据传输的码率,以提高投屏效果。
[0283]
若电子设备100监测出不是网络问题导致的投屏效果差,则电子设备100和显示设备200无法通过除了降低码率以外的其他的方式来改善电子设备100的投屏效果。因此本技术实施例提供了一种投屏方法,电子设备100和显示设备200将采用投屏效果分级调节策略来调节系统负载能力或者投屏参数,以使得投屏性能参数满足预设条件,投屏效果分级调节策略以影响用户体验的程度从低到高为目标进行调节,减少电子设备100或显示设备200调节系统负载能力或者投屏参数时,影响用户的体验。采用该方法,一方面,电子设备100或显示设备200可以确定出影响投屏效果的原因,并采用对应的策略改善投屏效果;另一方面,采用投屏效果分级调节策略,考虑了影响用户体验的因素,以减小用户的影响为目标进行调节。
[0284]
图9-图14示例性示出了几种投屏效果分级调节的策略,电子设备100或者显示设备200将依次判断采取哪种策略来改善投屏效果,当电子设备100或者显示设备200调节系统负载能力或者投屏参数使得投屏性能参数满足预设条件之后,电子设备100或者显示设备200将停止调节系统负载能力或者投屏参数;当电子设备100或者显示设备200调节系统负载能力或者投屏参数后,投屏性能参数还是不满足预设条件,则电子设备100或者显示设备200将采取轮询的机制继续判断采取哪种策略来改善投屏效果,直至投屏性能参数满足预设条件。
[0285]
需要说明的是,图9-图14只是示例性示出了部分投屏效果调节策略,本技术实施例还可以包括更多的投屏效果调节策略,本技术在此不做限定。
[0286]
并且,图9-图14示例性示出的几种投屏效果调节策略的执行顺序本技术在此不做限定。
[0287]
接下来,将详细介绍投屏效果分级调节的策略。
[0288]
投屏效果调节策略一
[0289]
首先,如图9-图10示例性示出了投屏效果调节策略一的方法流程图。该投屏效果调节策略一调节的是电子设备100或者显示设备200中的硬件的工作频率。当投屏时延大于预设时延和/或投屏帧率差大于预设帧率差时,并且电子设备100判断出电子设备100的硬件负载高,或者显示设备200判断出显示设备200的硬件负载高时,调节电子设备100或者显示设备200中的硬件的工作频率时,不会改变电子设备100与显示设备200的投屏参数,这样,在投屏参数没有改变的情况下,调节硬件的工作频率使得投屏性能参数满足预设条件,不会影响用户体验。其中,硬件包括cpu、gpu、ddr和codec等等。
[0290]
由于投屏效果调节策略一没有调节投屏参数,因此,当电子设备100或者显示设备200调节硬件的工作频率之后,投屏参数不变。电子设备100与显示设备200建立投屏连接时的协商得到的投屏参数包括投屏码率、采样帧率和投屏分辨率。示例性的,投屏码率为第一
码率(例如10m),采样帧率为第一采样帧率(例如60hz),投屏分辨率为第一投屏分辨率(例如1080p)。则在电子设备100或者显示设备200调节硬件的工作频率之后,投屏码率依然为第一码率(例如10m),采样帧率依然为第一采样帧率(例如60hz),投屏分辨率依然为第一投屏分辨率(例如1080p)。
[0291]
图9示例性示出了电子设备100调整电子设备100的硬件的工作频率的示意图。
[0292]
电子设备100监测投屏性能参数,投屏性能参数包括投屏帧率差以及投屏时延。当电子设备100判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,电子设备100将判断是否是电子设备100中的硬件负载高导致的投屏性能参数不满足预设条件,若是电子设备100中的硬件负载高导致的投屏性能参数不满足预设条件,电子设备100将硬件的工作频率提高,再监测投屏性能参数是否满足预设条件。若硬件的工作频率已提高至预设值,但是投屏性能参数仍然不满足预设条件,则电子设备100执行投屏效果调节策略二。
[0293]
电子设备100提高硬件的工作频率可以通过以下公式一和公式二实现:
[0294]
p2=p1*(1+cast_cost)公式一
[0295]
cast_cost=(delay-delay_base)/delay_base*0.5+fps_diff/fps_base*0.5公式二
[0296]
由公式一所示,p2表示硬件提频之后的工作频率,p1表示硬件提频之前的工作频率,cast_cost表示投屏性能参数归一化指标,1+cast_cost表示提频率。
[0297]
由公式二所示,delay表示投屏时延,投屏时延为电子设备100实时测量出来的。delay_base表示投屏基准时延,投屏基准时延为预设值,一般的投屏基准时延为50ms或者100ms。fps_diff表示投屏帧率差,投屏帧率差为电子设备100实时测量出来的。fps_base表示投屏基准帧率差,投屏基准帧率差为预设值,一般的投屏基准时延为60hz。cast_cost的取值范围为0-1。
[0298]
为了避免功耗和发热的问题,提频率需小于预设提频率(例如1.25)。
[0299]
具体的,如图9所示,电子设备100监测投屏帧率差以及投屏时延,若投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,电子设备100判断出电子设备100中的硬件负载高,硬件负载高包括:电子设备100的cpu的使用率大于预设值和/或电子设备100的gpu的使用率大于预设值和/或电子设备100的ddr的使用率大于预设值和/或电子设备100的codec的使用率大于预设值。之后,电子设备100将根据公式二基于投屏时延和投屏帧率差得到提频率,之后,当cpu的使用率大于预设值时,电子设备100可以根据公式一将cpu的工作频率由频率一提升到频率二(第一值或第二值),和/或当gpu的使用率大于预设值时,电子设备100可以根据公式一将gpu的工作频率由频率三提升到频率四(第一值或第二值),和/或当ddr的使用率大于预设值时,电子设备100可以根据公式一将ddr的工作频率由频率五提升到频率六(第一值或第二值),和/或当codec的使用率大于预设值时,电子设备100可以根据公式一将codec的工作频率由频率七提升到频率八(第一值或第二值)。
[0300]
需要说明的是,频率二、频率四、频率六和频率八大于第一阈值或第二阈值。之后,电子设备100将硬件的工作频率提高之后,电子设备100继续监测投屏时延和投屏帧率差。
[0301]
之后,电子设备100继续监测投屏帧率差是否小于预设帧率差和投屏时延是否小于预设时延。若此时,投屏帧率差小于预设帧率差和投屏时延小于预设时延,则电子设备100将硬件的工作频率提高之后,改善了投屏效果。之后,电子设备100将不再执行后续的方
法步骤。
[0302]
若投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,电子设备100将判断硬件的提频率是否小于预设提频率,若提频率小于预设提频率(第三阈值或者第四阈值),电子设备100继续判断是哪个硬件的负载高,并将对应的硬件的工作频率提高。示例性的,电子设备100将cpu的工作频率到频率m(第三值或第四值),频率m大于第一阈值或第二阈值,不小于预设提频率。直至提频率大于预设提频率之后,电子设备100为了避免功耗和发热的问题,将不再调节硬件的工作频率,执行投屏效果调节策略二。
[0303]
图10示例性示出了显示设备200调整显示设备200的硬件的工作频率的示意图。
[0304]
显示设备200监测投屏性能参数,投屏性能参数包括投屏帧率差以及投屏时延。当显示设备200判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,显示设备200将判断是否是显示设备200中的硬件负载高导致的投屏性能参数不满足预设条件,若是显示设备200中的硬件负载高导致的投屏性能参数不满足预设条件,显示设备200将硬件的工作频率提高,再监测投屏性能参数是否满足预设条件。若硬件的频率已提高至预设值,但是投屏性能参数仍然不满足预设条件,则显示设备200执行投屏效果调节策略二。
[0305]
显示设备200提高硬件的工作频率可以通过公式一和公式二实现,对公式一和公式二的介绍,可以参考图9所示的实施例,本技术在此不再赘述。
[0306]
具体的,如图10所示,显示设备200监测投屏帧率差以及投屏时延,若投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,显示设备200判断出显示设备200中的硬件负载高,硬件负载高包括:显示设备200的cpu的使用率大于预设值和/或显示设备200的gpu的使用率大于预设值和/或显示设备200的ddr的使用率大于预设值和/或显示设备200的codec的使用率大于预设值。之后,显示设备200将根据公式二基于投屏时延和投屏帧率差得到提频率,之后,当cpu的使用率大于预设值时,显示设备200可以根据公式一将cpu的工作频率由频率九提升到频率十(第一值或第二值),和/或当gpu的使用率大于预设值时,显示设备200可以根据公式一将gpu的工作频率由频率十一提升到频率十二(第一值或第二值),和/或当ddr的使用率大于预设值时,显示设备200可以根据公式一将ddr的工作频率由频率十三提升到频率十四(第一值或第二值),和/或当codec的使用率大于预设值时,显示设备200可以根据公式一将codec的工作频率由频率十五提升到频率十六(第一值或第二值)。
[0307]
需要说明的是,频率十、频率十二、频率十四和频率十六大于第一阈值或第二阈值。之后,显示设备200将硬件的工作频率提高之后,显示设备200继续监测投屏时延和投屏帧率差。
[0308]
之后,显示设备200将判断投屏帧率差是否小于预设帧率差和投屏时延是否小于预设时延。若此时,投屏帧率差小于预设帧率差和投屏时延小于预设时延,则显示设备200将硬件的工作频率提高之后,改善了投屏效果。之后,显示设备200将不再执行后续的方法步骤。
[0309]
若投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,显示设备200将判断硬件的提频率是否小于预设提频率,若提频率小于预设提频率(第三阈值或者第四阈值),显示设备200继续判断是哪个硬件的负载高,并将对应的硬件的工作频率提高。示例性的,电子设备100将cpu的工作频率到频率m(第三值或第四值),频率m大于第一阈值或第二
阈值,不小于预设提频率。直至提频率大于预设提频率之后,显示设备200为了避免功耗和发热的问题,将不再调节硬件的工作频率,执行投屏效果调节策略二。
[0310]
投屏效果调节策略二
[0311]
当电子设备100或者显示设备200硬件的工作频率的提频率达到预设提频率之后,投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延;或者,电子设备100中的硬件负载不高以及显示设备200中的硬件负载也不高,则不是硬件负载的问题导致的投屏效果差。电子设备100将执行投屏效果调节策略二。
[0312]
投屏效果调节策略二调节的是电子设备100与显示设备200之间的投屏码率。采用投屏效果调节策略二,将降低电子设备100与显示设备200之间的投屏码率。与投屏效果调节策略一相比,投屏效果调节策略二会轻微影响用户的体验。
[0313]
具体的,如图11所示,图11示例性示出了电子设备100调节电子设备100与显示设备200之间的投屏码率的示意图。
[0314]
首先,电子设备100监测投屏性能参数,投屏性能参数包括投屏帧率差以及投屏时延。当电子设备100判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,电子设备100将计算电子设备100与显示设备200之间的数据传输时延。当数据传输时延大于预设值时,则可能是网络负载过高导致的投屏效果差。电子设备100将降低投屏码率,以使得投屏帧率差小于预设帧率差和投屏时延小于预设时延。当数据传输时延小于预设值时,则此时网络负载不高,则电子设备100确定出不是网络问题导致的投屏效果差。电子设备100直接执行投屏效果调节策略三。
[0315]
当数据传输时延大于预设值时,电子设备100可以采取以下公式三降低投屏码率:
[0316]
r=r1-(r1-r2)*cast_cost
ꢀꢀꢀ
公式三
[0317]
如公式三所示,r为调节之后的投屏码率,r的取值范围为r2-r1之间。r1为电子设备100与显示设备200之间的实时投屏码率,r2为最低投屏码率,cast_cost表示投屏性能参数归一化指标。对于cast_cost的计算方式可以参考公式二,本技术在此不再赘述。
[0318]
示例性的,当投屏分辨率为1080p时,投屏码率的范围为3m-r1之间,r1小于等于10m,r2为3m,则r的取值范围为3m-r1之间。
[0319]
当投屏分辨率为540p时,投屏码率的范围为1m-r1之间,r1小于等于5m,r2为1m,则r的取值范围为1m-r1之间。
[0320]
电子设备100根据公式三将投屏码率由码率一降低至码率二(第一值或第二值)之后,第一值或第二值大于第一阈值或第二阈值。电子设备100继续监测投屏帧率差是否小于预设帧率差和投屏时延是否小于预设时延。若此时,投屏帧率差小于预设帧率差和投屏时延小于预设时延,则电子设备100将投屏码率降低之后,改善了投屏效果。之后,电子设备100将不再执行后续的方法步骤。
[0321]
若投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,电子设备100将判断调节之后的投屏码率(例如码率二)是否小于最低投屏码率(第三阈值或者第四阈值),若调节之后的投屏码率(例如码率二)小于最低投屏码率,并判断电子设备100与显示设备200之间的数据传输时延是否大于预设值时,若是,电子设备100继续将电子设备100与显示设备200之间的投屏码率(例如码率二)降低至码率三(第三值或第四值),码率三大于第一阈值或第二阈值,不小于第三阈值或者第四阈值之后,电子设备100将不再调节码率,执行
投屏效果调节策略三。
[0322]
电子设备100判断出电子设备100与显示设备200之间的数据传输时延大于预设时延,电子设备100根据投屏效果调节策略二调整投屏码率之后,采样帧率和投屏分辨率没有改变,因此,采样帧率依然是第一采样帧率(例如60hz),投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率为第二投屏码率,第二投屏码率大于等于最低投屏码率小于第一投屏码率。示例性的,若第一投屏分辨率为1080p,则第二投屏码率大于等于3m,小于第一投屏码率(例如10m)。若第一投屏分辨率为540p,则第二投屏码率大于等于1m,小于第一投屏码率(例如5m)。
[0323]
或者,电子设备100判断出电子设备100与显示设备200之间的数据传输时延小于预设时延,则此时网络负载不高,则电子设备100确定出不是网络问题导致的投屏效果差。电子设备100不调节投屏码率,直接执行投屏效果调节策略三。因此,采样帧率依然是第一采样帧率(例如60hz),投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率依然是第一投屏码率(例如10m)。
[0324]
投屏效果调节策略三
[0325]
当电子设备100与显示设备200之间的数据传输时延大于预设时延时,电子设备100将投屏码率降低至最低投屏码率之后,投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延;或者,电子设备100与显示设备200之间的数据传输时延小于预设时延,则不是网络问题导致的投屏效果差。电子设备100将执行投屏效果调节策略三。
[0326]
投屏效果调节策略三调节的是电子设备100的采样帧率。采用投屏效果调节策略三,电子设备100将降低采样帧率。与投屏效果调节策略二相比,投屏效果调节策略三会一定程度上影响用户的体验。即投屏效果调节策略三对用户的体验比投屏效果调节策略二的影响更大。
[0327]
具体的,如图12所示,图12示例性示出了电子设备100调节电子设备100侧采样帧率的示意图。
[0328]
首先,电子设备100监测投屏性能参数,投屏性能参数包括投屏帧率差以及投屏时延。当电子设备100判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,电子设备100监测电子设备100与显示设备200之间的数据传输时延、电子设备100的图像合成时间和显示设备200的图像合成时间。电子设备100的图像合成时间包括电子设备100合成预设数量的图像帧(例如1帧)花费的时间,显示设备200的图像合成时间包括显示设备200合成预设数量的图像帧(例如1帧)花费的时间。当电子设备100监测到数据传输时延大于预设值,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,则可能是电子设备100侧采样帧率过高导致的投屏效果差,电子设备100将降低电子设备100侧的采样帧率。当电子设备100监测到显示设备200的硬件负载不高,并且电子设备100的图像合成时间小于预设时间以及显示设备200的图像合成时间小于预设时间时,则电子设备100确定出不是采样帧率高导致的投屏效果差。电子设备100直接执行投屏效果调节策略四。
[0329]
当显示设备200的硬件负载高,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,电子设备100可以采取以下公式四降低采样帧率:
[0330]
pd=pd1-(pd1-pd2)*cast_cost
ꢀꢀꢀ
公式四
[0331]
如公式四所示,pd为调节之后的采样帧率,pd的取值范围为d 2-d 1之间。pd 1为电子设备100与显示设备200之间的实时采样帧率,pd 2为最低采样帧率,cast_cost表示投屏性能参数归一化指标。对于cast_cost的计算方式可以参考公式二,本技术在此不再赘述。
[0332]
示例性的,实时采样帧率pd 1为60hz,最低采样帧率pd 2为52hz,则pd的取值范围为52hz-60hz之间。
[0333]
电子设备100根据公式四将采样帧率由帧率一降低至帧率二(第一值或第二值)之后,帧率二大于第一阈值或第二阈值,电子设备100继续监测投屏帧率差是否小于预设帧率差和投屏时延是否小于预设时延。若此时,投屏帧率差小于预设帧率差和投屏时延小于预设时延,则电子设备100将采样帧率降低之后,改善了投屏效果。之后,电子设备100将不再执行后续的方法步骤。
[0334]
若投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,电子设备100将判断调节之后的采样帧率(例如帧率二)是否小于最低采样帧率(第三阈值或者第四阈值),若调节之后的采样帧率(例如帧率二)小于最低采样帧率,并监测到数据传输时延大于预设值,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,电子设备100继续将电子设备100与显示设备200之间的采样帧率(例如帧率二)降低至帧率三(第三值或第四值),帧率三大于第一阈值或第二阈值,不小于最低采样帧率之后,电子设备100将不再调节采样帧率,为了避免采样帧率低于最低采样帧率之后,会出现严重丢帧的问题。因此,当帧率三大于最低采样帧率之后,电子设备100执行投屏效果调节策略三。
[0335]
电子设备100采用投屏效果调节策略二调节采样帧率之后,投屏效果还是不好,并且电子设备100监测到数据传输时延大于预设值,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,电子设备100根据投屏效果调节策略三调整采样帧率之后,投屏分辨率没有改变,投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率为第二投屏码率,第二投屏码率大于等于最低投屏码率小于第一投屏码率。示例性的,若第一投屏分辨率为1080p,则第二投屏码率大于等于3m,小于第一投屏码率(例如10m)。若第一投屏分辨率为540p,则第二投屏码率大于等于1m,小于第一投屏码率(例如5m)。采样帧率为第二采样帧率,第二采样帧率大于等于最低投屏码率(例如52hz)小于第一投屏码率(例如60hz)。
[0336]
或者,电子设备100根据投屏效果调节策略一提高电子设备100或显示设备200中的硬件的工作频率之后,投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,但是电子设备100监测到电子设备100与显示设备200之间的数据传输时延小于预设时延,则不是网络问题导致的投屏效果不好。电子设备100不需要根据投屏效果调节策略二调节投屏码率。并且电子设备100监测到显示设备200的硬件负载高,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,电子设备100直接根据投屏效果调节策略三调整采样帧率,此时,投屏码率和投屏分辨率没有改变。投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率依然是第一投屏码率(例如10m),采样帧率为第二采样帧率,第二采样帧率大于等于最低投屏码率(例如52hz)小于第一投屏码率
(例如60hz)。
[0337]
或者,电子设备100根据投屏效果调节策略一提高电子设备100或显示设备200中的硬件的工作频率之后,投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,但是电子设备100监测到电子设备100与显示设备200之间的数据传输时延小于预设时延,则不是网络问题导致的投屏效果不好。电子设备100不需要根据投屏效果调节策略二调节投屏码率。并且电子设备100监测到显示设备200的硬件负载不高,并且电子设备100的图像合成时间小于预设时间以及显示设备200的图像合成时间小于预设时间时,则也不是采样帧率高导致的投屏效果不好。电子设备100也不需要根据投屏效果调节策略三调节采样帧率,电子设备100直接执行投屏效果调节策略四。此时,投屏码率、采样帧率和投屏分辨率没有改变。因此,采样帧率依然是第一采样帧率(例如60hz),投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率依然是第一投屏码率(例如10m)。
[0338]
投屏效果调节策略四
[0339]
若电子设备100判断出导致投屏帧率差大于预设帧率差和/或投屏时延大于预设时延的原因,不是电子设备100的采样帧率高的原因导致的;或者,电子设备100判断出导致投屏帧率差大于预设帧率差和/或投屏时延大于预设时延的原因,是电子设备100的采样帧率高的原因导致的,但是,电子设备100将采样帧率降低至最低采样帧率之后,投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延。显示设备200将执行投屏效果调节策略四。
[0340]
投屏效果调节策略四调节的是显示设备200的显示帧率。采用投屏效果调节策略四,显示设备200将降低显示帧率。与投屏效果调节策略三相比,投屏效果调节策略四会一定程度上影响用户的体验。即投屏效果调节策略四对用户的体验比第三级投屏效果调节策略的影响更大。
[0341]
具体的,如图13所示,图13示例性示出了显示设备200调节显示设备200侧显示帧率的示意图。
[0342]
首先,显示设备200监测投屏性能参数,投屏性能参数包括投屏帧率差以及投屏时延。当显示设备200判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,显示设备200监测显示设备200的硬件负载,以及显示设备200的图像合成时间。其中,显示设备200的硬件负载包括显示设备200的cpu的使用率、显示设备200的gpu的使用率、显示设备200的ddr的使用率以及显示设备200的codec的使用率。显示设备200的图像合成时间包括显示设备200合成预设数量的图像帧(例如1帧)花费的时间。当显示设备200监测到显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,则可能是显示设备200侧显示帧率过高导致的投屏效果差,显示设备200将降低显示设备200侧的采样帧率。当显示设备200监测到显示设备200的硬件负载不高,并且显示设备200的图像合成时间小于预设时间时,则显示设备200确定出不是显示帧率高导致的投屏效果差。显示设备200直接执行投屏效果调节策略五。
[0343]
当显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,显示设备200可以采取以下公式五降低采样帧率:
[0344]
d=d1-(d1-d2)*cast_cost
ꢀꢀꢀ
公式五
[0345]
如公式四所示,d为调节之后的显示帧率,d的取值范围为d 2-d 1之间。d 1为显示
设备200的实时显示帧率,d 2为最低显示帧率,cast_cost表示投屏性能参数归一化指标。对于cast_cost的计算方式可以参考公式二,本技术在此不再赘述。
[0346]
示例性的,实时显示帧率d1为52hz,最低显示帧率d 2为45hz,则d的取值范围为45hz-52hz之间。
[0347]
显示设备200根据公式五将显示帧率由帧率四降低至帧率五之后,显示设备200继续监测投屏帧率差是否小于预设帧率差和投屏时延是否小于预设时延。若此时,投屏帧率差小于预设帧率差和投屏时延小于预设时延,则显示设备200将显示帧率降低之后,改善了投屏效果。之后,显示设备200不再执行后续的方法步骤。
[0348]
若投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,显示设备200将判断调节之后的显示帧率(例如帧率五)是否小于最低显示帧率(第三阈值或者第四阈值),若调节之后的显示帧率(例如帧率五)小于最低显示帧率,并监测到显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,显示设备200继续将显示设备200的显示帧率(例如帧率五)降低至帧率六,直至帧率六大于最低显示帧率之后,显示设备200将不再调节显示帧率。当帧率六大于最低显示帧率之后,显示设备200执行投屏效果调节策略五。
[0349]
显示设备200采用投屏效果调节策略二调节投屏码率和投屏效果调节策略三调节采样帧率之后,投屏效果还是不好,并且显示设备200监测到显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,显示设备200根据投屏效果调节策略四调整显示设备200的显示帧率之后,投屏分辨率没有改变,投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率为第二投屏码率,第二投屏码率大于等于最低投屏码率小于第一投屏码率。示例性的,若第一投屏分辨率为1080p,则第二投屏码率大于等于3m,小于第一投屏码率(例如10m)。若第一投屏分辨率为540p,则第二投屏码率大于等于1m,小于第一投屏码率(例如5m)。采样帧率为第二采样帧率,第二采样帧率大于等于最低投屏码率(例如52hz)小于第一投屏码率(例如60hz)。
[0350]
或者,电子设备100没有采用投屏效果调节策略二调节投屏码率,直接根据投屏效果调节策略三调节电子设备100的采样帧率后。显示设备200监测到投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,并且显示设备200监测到显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,显示设备200根据投屏效果调节策略四调整显示设备200的显示帧率之后,投屏码率和投屏分辨率没有改变。投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率依然是第一投屏码率(例如10m),采样帧率为第二采样帧率,第二采样帧率大于等于最低投屏码率(例如52hz)小于第一投屏码率(例如60hz)。
[0351]
或者,电子设备100采用投屏效果调节策略二调节投屏码率,没有采用投屏效果调节策略三调节电子设备100的采样帧率。显示设备200监测到投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,并且显示设备200监测到显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,显示设备200根据投屏效果调节策略四调整显示设备200的显示帧率之后,采样帧率和投屏分辨率没有改变。投屏分辨率依然是第一投屏分辨率(例如1080p),采样帧率依然是第一采样帧率(例如60hz),投屏码率为为第二投屏码率,第二投屏码率大于等于最低投屏码率小于第一投屏码率。示例性的,若第一投屏分辨
率为1080p,则第二投屏码率大于等于3m,小于第一投屏码率(例如10m)。若第一投屏分辨率为540p,则第二投屏码率大于等于1m,小于第一投屏码率(例如5m)。
[0352]
或者,电子设备100没有采用投屏效果调节策略二调节投屏码率,也没有采用投屏效果调节策略三调节电子设备100的采样帧率,投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,并且显示设备200监测到显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,显示设备200根据投屏效果调节策略四调整显示设备200的显示帧率之后。此时,投屏码率、采样帧率和投屏分辨率没有改变。因此,采样帧率依然是第一采样帧率(例如60hz),投屏分辨率依然是第一投屏分辨率(例如1080p),投屏码率依然是第一投屏码率(例如10m)。
[0353]
投屏效果调节策略五
[0354]
若显示设备200判断出导致显示帧率差大于预设帧率差和/或投屏时延大于预设时延的原因,不是显示设备200的显示帧率过高导致的;或者,显示设备200判断出导致投屏帧率差大于预设帧率差和/或投屏时延大于预设时延的原因,是显示设备200的显示帧率过高导致的,但是显示设备200降低显示设备200的显示帧率之后,投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延。电子设备100将执行投屏效果调节策略五。
[0355]
投屏效果调节策略五调节的是电子设备100的投屏分辨率。采用投屏效果调节策略五,电子设备100将降低投屏分辨率。与投屏效果调节策略四相比,投屏效果调节策略五会一定程度上影响用户的体验。即投屏效果调节策略五对用户的体验比第四级投屏效果调节策略的影响更大。
[0356]
具体的,如图14所示,图14示例性示出了电子设备100调节电子设备100侧投屏分辨率的示意图。
[0357]
首先,显示设备200监测投屏性能参数,投屏性能参数包括投屏帧率差以及投屏时延。当显示设备200判断出投屏帧率差大于预设帧率差和/或投屏时延大于预设时延时,并且显示设备200的硬件负载高或者显示设备200的图像合成时间大于预设时间时,则可能是电子设备100侧分辨率过高导致的投屏效果差。显示设备200向电子设备100发送降低投屏分辨率请求,电子设备100接收并响应降低投屏分辨率请求,电子设备100将降低投屏分辨率。当显示设备200的硬件负载不高,并且显示设备200的图像合成时间小于预设时间时,则显示设备200确定出不是电子设备100侧分辨率过高导致的投屏效果差。电子设备100或显示设备200将执行投屏效果调节策略一。其中,显示设备200的硬件负载包括显示设备200的cpu的使用率、显示设备200的gpu的使用率、显示设备200的ddr的使用率以及显示设备200的codec的使用率。显示设备200的图像合成时间包括显示设备200合成预设数量的图像帧(例如1帧)花费的时间。
[0358]
当显示设备200的硬件负载高或者显示设备200的图像合成时间大于预设时间时,电子设备100将投屏分辨率由分辨率一降低至分辨率二。
[0359]
电子设备100将投屏分辨率由分辨率一降低至分辨率二(第一值或第二值)之后,分辨率二大于第一阈值或第二阈值,示设备200继续监测投屏帧率差是否小于预设帧率差和投屏时延是否小于预设时延。若此时,投屏帧率差小于预设帧率差和投屏时延小于预设时延,则电子设备100将投屏分辨率降低之后,改善了投屏效果。之后,电子设备100不再执行后续的方法步骤。
[0360]
若投屏帧率差还是大于预设帧率差和/或投屏时延大于预设时延,电子设备100将判断调节之后的投屏分辨率(例如分辨率二)是否小于最低投屏分辨率(第三阈值或者第四阈值),若调节之后的投屏分辨率(例如分辨率二)小于最低投屏分辨率,并且显示设备200的硬件负载高,或者显示设备200的图像合成时间大于预设时间时,电子设备100继续将电子设备100的投屏分辨率(例如分辨率二)降低至分辨率三(第三值或第四值),分辨率三小于第一阈值或第二阈值,不小于最低投屏分辨率之后,电子设备100将不再调节投屏分辨率。当分辨率三大于最低投屏分辨率之后,电子设备100执行投屏效果调节策略一。
[0361]
电子设备100采用投屏效果调节策略二调节投屏码率和投屏效果调节策略三调节采样帧率,显示设备200采用投屏效果调节策略四调节显示帧率,电子设备100采用投屏效果调节策略五调节投屏分辨率之后,投屏分辨率为第二投屏分辨率,第二投屏分辨率大于等于最低投屏分辨率,小于第一投屏分辨率。投屏码率为第二投屏码率,第二投屏码率大于等于最低投屏码率,小于第一投屏码率。示例性的,若第一投屏分辨率为1080p,则第二投屏码率大于等于3m,小于第一投屏码率(例如10m)。若第一投屏分辨率为540p,则第二投屏码率大于等于1m,小于第一投屏码率(例如5m)。采样帧率为第二采样帧率,第二采样帧率大于等于最低投屏码率(例如52hz)小于第一投屏码率(例如60hz)。
[0362]
或者,电子设备100没有采用投屏效果调节策略二调节投屏码率和没有采用投屏效果调节策略三调节采样帧率,显示设备200没有采用投屏效果调节策略四调节显示帧率,电子设备100采用投屏效果调节策略五调节投屏分辨率之后,投屏分辨率为第二投屏分辨率,第二投屏分辨率大于等于最低投屏分辨率(第三阈值或者第四阈值),小于第一投屏分辨率。投屏码率依然为第一投屏码率(例如10m)。投屏采样帧率依然为第一采样帧率(例如60hz)。
[0363]
或者,电子设备100采用投屏效果调节策略二调节投屏码率和投屏效果调节策略三调节采样帧率,显示设备200采用投屏效果调节策略四调节显示帧率之后,电子设备100没有采用投屏效果调节策略五调节投屏分辨率,投屏分辨率依然是第一投屏分辨率(例如1080p)。投屏码率为第二投屏码率,第二投屏码率大于等于最低投屏码率小于第一投屏码率。示例性的,若第一投屏分辨率为1080p,则第二投屏码率大于等于3m,小于第一投屏码率(例如10m)。若第一投屏分辨率为540p,则第二投屏码率大于等于1m,小于第一投屏码率(例如5m)。采样帧率为第二采样帧率,第二采样帧率大于等于最低投屏码率(例如52hz)小于第一投屏码率(例如60hz)。
[0364]
需要说明的是,本技术实施例只是示例性示出了几种投屏效果调节策略,还可以包括更多的投屏效果调节策略,本技术在此不在一一列举。
[0365]
本技术实施例中,当电子设备100或者显示设备200监测到投屏性能参数不满足预设条件,即投屏效果不好时,电子设备100或者显示设备200将检测导致投屏效果不好的原因,确定出具体原因之后,电子设备100或者显示设备200将调节系统负载能力或者投屏参数使得投屏性能参数满足预设条件,以改善投屏效果。
[0366]
具体的,电子设备100和显示设备200将采用投屏效果分级调节的策略来调节系统负载能力或者投屏参数,以使得投屏性能参数满足预设条件,投屏效果分级调节的策略以影响用户体验的程度从低到高为目标进行调节,减少电子设备100或显示设备200调节系统负载能力或者投屏参数时,影响用户的体验。
[0367]
如图15所示,图15示例性示出了本技术实施例提供的一种投屏方法的流程图。
[0368]
s1501、电子设备100与显示设备200建立投屏连接。
[0369]
电子设备100与显示设备200建立投屏连接的方式,请参考图7a-图7d所示的实施例,本技术再次不再赘述。
[0370]
不限于上述两种电子设备100与显示设备200建立投屏连接的方式,电子设备100还可以采取其他的方式与显示设备200建立投屏连接,本技术在此不做限定。
[0371]
s1502、电子设备100和显示设备200监测投屏时延是否大于预设时延或者投屏帧率差是否大于预设帧率差。
[0372]
投屏时延为电子设备100获取第一投屏内容的时刻与显示设备200显示第一投屏内容的时刻的差值。
[0373]
投屏帧率差为电子设备100的采样帧率与显示设备200的显示帧率之间的帧率差。
[0374]
当电子设备100监测到投屏时延大于预设时延或者投屏帧率差大于预设帧率差时,电子设备100执行s1503。
[0375]
当显示设备200监测到投屏时延大于预设时延或者投屏帧率差大于预设帧率差时,显示设备200执行s1505。
[0376]
需要说明的,在后续电子设备100或者显示设备200根据分级调剂策略调整投屏参数或硬件工作平率时,只要投屏时延小于预设时延,且投屏帧率差小于预设帧率差时,电子设备100或显示设备200不再执行分级调剂策略调整投屏参数。
[0377]
当是硬件的使用频率大于预设值导致投屏时延大于预设时延或者投屏帧率差大于预设帧率差时,电子设备100可以降低电子设备100中的硬件的工作频率或者显示设备200降低电子设备100中的硬件的工作频率。
[0378]
具体的,s1503-s1506描述了电子设备100或显示设备200调节硬件工作频率的方法流程。需要说明的是,电子设备100或显示设备200调节硬件工作频率的方法流程可以包括比s1503-s1506更多或更少的步骤,本技术在此不做限定。并且,本技术对于s1503-s1506中每个步骤的执行顺序不做限定。
[0379]
s1505和s1506可以在s1504之后执行,s1502也可以在s1502之后执行,本技术对于s1503和s1504、s1505和s1506的执行顺序不做限定。
[0380]
s1503、电子设备100判断电子设备100中的硬件的使用率是否大于预设值?
[0381]
若电子设备100确定出电子设备100中的硬件的使用率大于预设值,则电子设备100执行s1504,否则电子设备100执行s1507。
[0382]
电子设备100中的硬件的使用率包括电子设备100的cpu的使用率、电子设备100的gpu的使用率、电子设备100的ddr的使用率、电子设备100的codec的使用率。
[0383]
电子设备100中的硬件的使用率大于预设值是指,电子设备100的cpu的使用率大于预设值和/或电子设备100的gpu的使用率大于预设值和/或电子设备100的ddr的使用率大于预设值和/或电子设备100的codec的使用率大于预设值。
[0384]
s1504、当电子设备100判断电子设备100中的硬件的使用率大于预设值,电子设备100执行投屏效果调节策略一。
[0385]
投屏效果调节策略一提升的是电子设备100中的硬件的工作频率。示例性的,当电子设备100监测到cpu的使用率大于预设值,则电子设备100将cpu的工作频率由频率一提升
至频率二。其中,频率二小于最高工作频率,最高工作频率是为了限制cpu的工作频率过高,导致发热和功耗过高的问题。
[0386]
具体的,电子设备100如何执行投屏效果调节策略一的,请参考图9所示的实施例,本技术在此不再赘述。
[0387]
需要说明的是,对于s1503和s1504,可以是电子设备100监测到电子设备100中的硬件的使用率高于预设值,执行投屏效果调节策略一;也可以是显示设备200监测到电子设备100中的硬件的使用率高于预设值,显示设备200向电子设备100发送指示信息,该指示信息用于指示电子设备100执行投屏效果调节策略一。
[0388]
需要说明的是,当电子设备100监测到电子设备100中的硬件的使用率小于预设值,则电子设备100可以不执行s1504。
[0389]
s1505、显示设备200判断显示设备200中的硬件的使用率是否大于预设值?
[0390]
若显示设备200确定出显示设备200中的硬件的使用率大于预设值,则显示设备200执行s1506,否则电子设备100执行s1507。
[0391]
显示设备200中的硬件的使用率包括显示设备200的cpu的使用率、显示设备200的gpu的使用率、显示设备200的ddr的使用率、显示设备200的codec的使用率。
[0392]
显示设备200中的硬件的使用率大于预设值是指,显示设备200的cpu的使用率大于预设值和/或显示设备200的gpu的使用率大于预设值和/或显示设备200的ddr的使用率大于预设值和/或显示设备200的codec的使用率大于预设值。
[0393]
s1506、当显示设备200判断显示设备200中的硬件的使用率大于预设值,显示设备200执行投屏效果调节策略一。
[0394]
投屏效果调节策略一提升的是显示设备200中的硬件的工作频率。示例性的,当显示设备200监测到cpu的使用率大于预设值,则显示设备200将cpu的工作频率由频率一提升至频率二。其中,频率二小于最高工作频率,最高工作频率是为了限制cpu的工作频率过高,导致发热和功耗过高的问题。
[0395]
具体的,显示设备200如何执行投屏效果调节策略一的,请参考图10所示的实施例,本技术在此不再赘述。
[0396]
需要说明的是,需要说明的是,当显示设备200监测到显示设备200中的硬件的使用率小于预设值,则显示设备200可以不执行s1506。
[0397]
需要说明的是,对于s1505和s1506,可以是显示设备200监测到显示设备200中的硬件的使用率高于预设值,执行投屏效果调节策略一;也可以是电子设备100监测到显示设备200中的硬件的使用率高于预设值,电子设备100向显示设备200发送指示信息,该指示信息用于指示显示设备200执行投屏效果调节策略一。
[0398]
s1505和s1506也可以在s1502之后执行,本技术对于s1503和s1504、s1505和s1506的执行顺序不做限定。
[0399]
当是网络负载高导致投屏时延大于预设时延或者投屏帧率差大于预设帧率差时,电子设备100可以降低电子设备100于显示设备200之间的数据传输的速率。
[0400]
具体的,s1507-s1508描述了电子设备100降低电子设备100于显示设备200之间的数据传输的速率的方法流程。需要说明的是,电子设备100降低电子设备100于显示设备200之间的数据传输的速率的方法流程可以包括比s1507-s1508更多或更少的步骤,本技术在
此不做限定。并且,本技术对于s1507-s1508中每个步骤的执行顺序不做限定。
[0401]
s1507和s1508也可以在s1502或s1504或s1506之后执行,本技术对于s1503和s1504、s1505和s1506、s1507和s1508的执行顺序不做限定。
[0402]
s1507、电子设备100监测电子设备100与显示设备200之间的数据传输时延大于预设值?
[0403]
若电子设备100确定出电子设备100与显示设备200之间的数据传输时延大于预设值,则电子设备100执行s1508,否则,电子设备100执行s1509。
[0404]
电子设备100与显示设备200之间的数据传输时延,是指电子设备100将投屏内容离开电子设备100的时刻与投屏内容到达显示设备200的时刻之间的时间差。
[0405]
s1508、电子设备100监测电子设备100与显示设备200之间的数据传输时延大于预设时延,电子设备100执行投屏效果调节策略二。
[0406]
投屏效果调节策略二降低的是电子设备100与显示设备200之间的投屏码率。当电子设备100监测电子设备100与显示设备200之间的数据传输时延大于预设时延时,电子设备100将投屏码率由码率一降低至码率二。码率二大于最低投屏码率。
[0407]
具体的,电子设备100如何执行投屏效果调节策略二的,请参考图11所示的实施例,本技术在此不再赘述。
[0408]
需要说明的是,对于s1507和s1508,可以是电子设备100监测到电子设备100中的数据传输时延大于预设时延,执行投屏效果调节策略二;也可以是显示设备200监测到电子设备100中的数据传输时延大于预设时延,显示设备200向电子设备100发送指示信息,该指示信息用于指示电子设备100执行投屏效果调节策略二。
[0409]
需要说明的是,当电子设备100监测电子设备100与显示设备200之间的数据传输时延小于预设时延,则电子设备100不执行s1508。
[0410]
当网络负载高,或者电子设备100的时间长或显示设备200的图像合成时间长导致投屏时延大于预设时延或者投屏帧率差大于预设帧率差时,电子设备100可以降低电子设备100于显示设备200之间的采样帧率。
[0411]
具体的,s1509-s1510描述了电子设备100降低电子设备100于显示设备200之间的采样帧率的方法流程。需要说明的是,电子设备100降低电子设备100于显示设备200之间的采样帧率的方法流程可以包括比s1509-s1510更多或更少的步骤,本技术在此不做限定。并且,本技术对于s1509-s1510中每个步骤的执行顺序不做限定。
[0412]
s1509和s1510也可以在s1502或s1504或s1506或s1508之后执行,本技术对于s1503和s1504、s1505和s1506、s1507和s1508、s1509和s1510的执行顺序不做限定。
[0413]
s1509、显示设备200的硬件使用率大于预设值,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间?
[0414]
当数据传输时延大于预设时延,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,电子设备100执行s1510。否则,电子设备100执行s1511。
[0415]
电子设备100的图像合成时间为电子设备100合成预设数量的图像帧(例如1帧)花费的时间。
[0416]
显示设备200的图像合成时间为显示设备200合成预设数量的图像帧(例如1帧)花
费的时间。
[0417]
s1510、当显示设备200的硬件使用率大于预设值,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,电子设备100执行投屏效果调节策略三。
[0418]
投屏效果调节策略三降低的是电子设备100侧的采样帧率。示例性的,当显示设备200的硬件使用率大于预设值,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间时,电子设备100将采样帧率由帧率一降低至帧率二。帧率二大于最低采样帧率。最低采样帧率是为了防止采样帧率过低,导致失帧严重的问题。
[0419]
具体的,电子设备100如何执行投屏效果调节策略二的,请参考图12所示的实施例,本技术在此不再赘述。
[0420]
需要说明的是,当显示设备200的硬件使用率小于预设值,且电子设备100的图像合成时间小于预设时间,且显示设备200的图像合成时间小于预设时间时,则电子设备100不执行s1510。
[0421]
需要说明的是,对于s1509和s1510,可以是电子设备100监测数据传输时延大于预设时延,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间,之后执行投屏效果调节策略三;也可以是显示设备200监测到数据传输时延大于预设时延,或者电子设备100的图像合成时间大于预设时间,或者显示设备200的图像合成时间大于预设时间,显示设备200向电子设备100发送指示信息,该指示信息用于指示电子设备100执行投屏效果调节策略三。
[0422]
当显示设备200的负载高,或者电子设备100的时间长或显示设备200的图像合成时间长导致投屏时延大于预设时延或者投屏帧率差大于预设帧率差时,显示设备200可以降低显示设备200的显示帧率。
[0423]
具体的,s1511-s1512描述了显示设备200降低显示设备200的显示帧率的方法流程。需要说明的是,显示设备200降低显示设备200的显示帧率的方法流程可以包括比s1509-s1510更多或更少的步骤,本技术在此不做限定。并且,本技术对于s1511-s1512中每个步骤的执行顺序不做限定。
[0424]
s1511和s1512也可以在s1502或s1504或s1506或s1508或s1510之后执行,本技术对于s1503和s1504、s1505和s1506、s1507和s1508、s1509和s1510、s1511和s1512的执行顺序不做限定。
[0425]
s1511、显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间?
[0426]
当显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间时,显示设备200执行s1512。否则,显示设备200执行s1513。
[0427]
s1512、当显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间时,显示设备200执行投屏效果调节策略四。
[0428]
投屏效果调节策略四降低的是电子设备100侧的显示帧率。示例性的,当显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间时,显示设备200将显示帧率由帧率四降低至帧率五。帧率五大于最低显示帧率。
[0429]
具体的,显示设备200如何执行投屏效果调节策略二的,请参考图13所示的实施例,本技术在此不再赘述。
[0430]
需要说明的是,当显示设备200的硬件使用率小于预设值,且显示设备200的图像合成时间小于预设时间时,则显示设备200不执行s1512。
[0431]
需要说明的是,对于s1511和s1512,可以是显示设备200监测到显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间,之后执行投屏效果调节策略三;也可以是电子设备100监测到显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间,电子设备100向显示设备200发送指示信息,该指示信息用于指示显示设备200执行投屏效果调节策略四。
[0432]
当显示设备200的负载高,或者电子设备100的时间长或显示设备200的图像合成时间长导致投屏时延大于预设时延或者投屏帧率差大于预设帧率差时,电子设备100可以降低电子设备100的投屏分辨率。
[0433]
具体的,s1513-s1514描述了电子设备100降低电子设备100的投屏分辨率的方法流程。需要说明的是,电子设备100降低电子设备100的投屏分辨率的方法流程可以包括比s1513-s1514更多或更少的步骤,本技术在此不做限定。并且,本技术对于s1513-s1514中每个步骤的执行顺序不做限定。
[0434]
s1513和s1514也可以在s1502或s1504或s1506或s1508或s1510或s1512之后执行,本技术对于s1503和s1504、s1505和s1506、s1507和s1508、s1509和s1510、s1511和s1512、s1513和s1514的执行顺序不做限定。
[0435]
s1513、显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间?
[0436]
当显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间时,电子设备100执行s1514。否则,电子设备100执行s1503。
[0437]
s1514、当显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间时,电子设备100执行投屏效果调节策略五。
[0438]
投屏效果调节策略五降低的是电子设备100侧的投屏分辨率。示例性的,当显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间时,电子设备100将投屏分辨率由分辨率一降低至分辨率二。分辨率二大于最低投屏分辨率。
[0439]
具体的,电子设备100如何执行投屏效果调节策略五的,请参考图14所示的实施例,本技术在此不再赘述。
[0440]
需要说明的是,当显示设备200的硬件使用率小于预设值,且显示设备200的图像合成时间小于预设时间时,则显示设备200不执行s1514。
[0441]
需要说明的是,对于s1513和s1514,可以是电子设备100监测到显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间,之后电子设备100执行投屏效果调节策略五;也可以是显示设备200监测到显示设备200的硬件使用率大于预设值,或者显示设备200的图像合成时间大于预设时间,显示设备200向电子设备100发送指示信息,该指示信息用于指示电子设备100执行投屏效果调节策略五。
[0442]
如图16所示,图16示例性示出了另一种投屏方法的方法流程图。
[0443]
s1601、电子设备100与显示设备200建立投屏连接。
[0444]
电子设备100与显示设备200建立投屏连接的方式,请参考图7a-图7d所示的实施例,本技术再次不再赘述。
[0445]
不限于上述两种电子设备100与显示设备200建立投屏连接的方式,电子设备100还可以采取其他的方式与显示设备200建立投屏连接,本技术在此不做限定。
[0446]
s1602、电子设备100确定投屏参数满足第一条件,根据第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。
[0447]
电子设备100确定投屏参数满足第一条件,或者确定出投屏效果不满足预设条件。
[0448]
投屏参数包括投屏时延和/或投屏帧率差。投屏时延为电子设备100获取第一投屏内容的时刻与显示设备200显示第一投屏内容的时刻的差值。
[0449]
投屏帧率差为电子设备100的采样帧率与显示设备200的显示帧率之间的帧率差。
[0450]
在电子设备100确定出投屏参数满足第一条件,或者确定出投屏效果不满足预设条件,电子设备100根据第一级调节策略将投屏效果调节策略将电子设备的第一参数调整至第一值之前,方法还包括:电子设备获取第三参数和第四参数;其中,投屏参数包括投屏时延,第四参数包括显示设备显示第一投屏内容中第一投屏帧画面的第一时刻,第五参数包括电子设备发送第一投屏帧画面的第二时刻;电子设备基于第一时刻和第二时刻确定投屏时延;第一条件包括:投屏时延大于预设时延;和/或,投屏参数包括投屏帧率差,第四参数包括显示设备显示第一投屏帧画面的第一帧率,第五参数包括电子设备获取到第一投屏帧画面的第二帧率;电子设备基于第一帧率和第二帧率确定屏帧率差;第一条件包括:投屏帧率差大于预设帧率差。
[0451]
当投屏参数为投屏时延时,第一条件为投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏时延大于预设时延。当投屏参数为投屏帧率差时,第一条件为投屏帧率差大于预设帧率差,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差。投屏参数为投屏帧率差和投屏时延时,第一条件为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延,即电子设备确定投屏效果不好的依据为投屏帧率差大于预设帧率差和/或投屏时延大于预设时延。
[0452]
或者,电子设备100确定出投屏效果不满足预设条件,在一种可能的实现方式中,电子设备可以根据投屏时延和投屏帧率差根据以下公式来综合衡量投屏效果:
[0453]
ast_cost=(delay-delay_base)/delay_base*0.5+fps_diff/fps_base*0.5
[0454]
如上述公式可知,delay表示投屏时延,投屏时延为电子设备100实时测量出来的。delay_base表示投屏基准时延,投屏基准时延为预设值,一般的投屏基准时延为50ms或者100ms。fps_diff表示投屏帧率差,投屏帧率差为电子设备100实时测量出来的。fps_base表示投屏基准帧率差,投屏基准帧率差为预设值,一般的投屏基准时延为60hz。cast_cost的取值范围为0-1。电子设备可以根据cast_cost衡量投屏效果,即当电子设备确定cast_cost大于预设值(例如0.25)时,电子设备确定出投屏效果不满足预设条件。
[0455]
在电子设备100确定投屏效果不满足预设条件或者投屏参数满足第一条件时,电子设备可以根据第一级调节策略将电子设备的第一参数调整至第一值的同时,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第一参数调整至第一值之后,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第二参数调整至第二值之后,将电子设备的第一参数调整至第一值。这
里对电子设备调整第一参数和第二参数的顺序不做限定。
[0456]
电子设备确定出投屏效果不满足预设条件时,通过第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。之后,电子设备确定出投屏效果还是不满足预设条件时,将根据第二级调节策略继续调节第一参数至第三值,将第二参数调节至第四值。并且第三值小于第一阈值,第四值小于第二阈值。这样,电子设备采用分级调节的策略,不会一次性将第一参数和第二参数调整范围过大,而是缓慢的调整。当调整参数之后,电子设备确定投屏效果还是不好时,再次调整第一参数和第二参数。这样,通过分级调节的策略实现了人性化的调整参数,以减小用户的影响为目标进行调节。
[0457]
在一些实施例中,电子设备确定投屏效果不好时,且确定出第一负载满足第二条件时,电子设备根据第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。
[0458]
第一参数和第二参数与第一负载息息相关。示例性的,当第一负载为电子设备中硬件(例如cpu或gpu或ddr或编码器)的使用率时,并且,电子设备中cpu和gpu大于预设使用率,第二参数为cpu的工作频率,第三参数为gpu的工作频率。示例性的,当电子设备中数据传输时延大于预设时延时,第二参数为电子设备的投屏码率。示例性的,当电子设备侧的图像合成时间大于预设时间或者电子设备中硬件的使用率大于预设使用率时,第二参数为电子设备的采样帧率。示例性的,当显示设备的图像合成时间大于预设时间或者显示设备中硬件的使用率大于预设使用率时,第二参数为电子设备的投屏分辨率。即只有当第一负载满足一定条件时,即第一负载过高,电子设备才会调节第一参数或者第二参数。这样,电子设备可以确定出导致投屏效果差的原因,并采取对应的措施提高投屏效果。
[0459]
第一参数和第二参数包括以下任意一项:电子设备中cpu的工作频率、电子设备中gpu的工作频率、电子设备中编码器的工作频率、电子设备中ddr的工作频率、电子设备的投屏码率、电子设备的采样帧率、电子设备的投屏分辨率;第一参数与第二参数不同。
[0460]
电子设备可以根据第一级调节策略将电子设备的第一参数调整至第一值的同时,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第一参数调整至第一值之后,将电子设备的第二参数调整至第二值;电子设备也可以根据第一级调节策略将电子设备的第二参数调整至第二值之后,将电子设备的第一参数调整至第一值。这里对电子设备调整第一参数和第二参数的顺序不做限定。
[0461]
在一些实施例中,第一参数和第二参数是有优先级区分的,示例性的,第一参数可以是图15中实施例所述的投屏效果调节策略一中的电子设备100的硬件的工作频率;第二参数可以是图15中实施例所述的投屏效果调节策略二中的电子设备100的硬件的工作频率。示例性的,第一参数也可以是图15中实施例所述的投屏效果调节策略二中的电子设备100的投屏码率;第二参数可以是图15中实施例所述的投屏效果调节策略三中的电子设备100的采样帧率。第一参数和第二参数可以任意组合,本技术在此不做限定。具体的,电子设备100如何调节第一参数和第二参数的,可以参考图15所示的实施例,本技术在此不再赘述。
[0462]
在一些实施例中,当电子设备100确定出投屏效果不好时,电子设备100还可以向显示设备200发送第一信息,第一信息用于指示显示设备200调整显示设备的第三参数;显示设备200在接收第一信息后,调整显示设备的第三参数。这样,电子设备100以调整电子设
备100的参数,还可以调整显示设备200的参数,实现了多端调节。
[0463]
在一种可能的实现方式中,显示设备也可以不接收电子设备发送的第一信息,显示设备监测到投屏效果不满足预设条件时,调整显示设备的第三参数。这样,显示设备可以监测显示设备侧的投屏效果,并根据投屏效果实时调整第三参数。
[0464]
在一种可能的实现方式中,显示设备还用于在接收第一信息后,将第三参数调整至第五值;其中,第五值小于第三预设值。可以避免出现第三参数的调整范围过大导致影响用户体验的问题的。
[0465]
第三参数包括以下任意一项:显示设备中cpu的工作频率、显示设备中gpu的工作频率、显示设备中解码器的工作频率、显示设备中ddr的工作频率、显示设备的显示帧率。显示设备如何调节第三参数的,可以参考图15实施例中显示设备200如何根据投屏效果调节策略一和投屏效果调节策略四调节第三参数的,本技术在此不再赘述。
[0466]
s1603、在电子设备将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值之后,确定投屏参数满足第一条件。
[0467]
在电子设备将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值之后,电子设备100如何判断投屏参数满足第一条件,或者电子设备100如何判断投屏效果不满足预设条件的,请参考s1602中所述的实施例,本技术在此不再赘述。
[0468]
s1604、电子设备根据第二级调节策略将电子设备的第一参数调整至第三值,将电子设备的第二参数调整至第四值。
[0469]
电子设备确定出投屏效果不满足预设条件时,通过第一级调节策略将电子设备的第一参数调整至第一值,将电子设备的第二参数调整至第二值。之后,电子设备确定出投屏效果还是不满足预设条件时,将根据第二级调节策略继续调节第一参数至第三值,将第二参数调节至第四值。并且第三值小于第一阈值,第四值小于第二阈值。这样,电子设备采用分级调节的策略,不会一次性将第一参数和第二参数调整范围过大,而是缓慢的调整。当调整参数之后,电子设备确定投屏效果还是不好时,再次调整第一参数和第二参数。这样,通过分级调节的策略实现了人性化的调整参数,以减小用户的影响为目标进行调节。
[0470]
可以理解为,电子设备100在将第一参数调整至第一值,将电子设备的第二参数调整至第二值,第一值大于第一值,第二值大于第二阈值。不会一次性将第一参数和第二参数调整的幅度过大,而是缓慢的调整。当电子设备100在将第一参数调整至第一值,将电子设备的第二参数调整至第二值之后,并且判断出投屏参数满足第一条件,或者确定出投屏效果不满足预设条件,电子设备100根据第二级调整策略将第一参数调整至第三值,将电子设备的第二参数调整至第四值,第一值小于第一值,第二值小于第二阈值。这样,当调整参数之后,电子设备确定投屏效果还是不好时,再次调整第一参数和第二参数。这样,通过分级调节的策略实现了人性化的调整参数,以减小用户的影响为目标进行调节。
[0471]
在一些实施例中,第三值大于第三阈值,第四值大于第四阈值。也即第一参数和第二参数都有最低阈值,这样,可以避免出现第一参数和第二参数的调整范围过大导致影响用户体验的问题的。
[0472]
在一些实施例中,电子设备确定投屏效果不好时,且确定出第一负载满足第二条件时,电子设备根据第二级调节策略将电子设备的第一参数调整至第三值,将电子设备的第二参数调整至第四值。
[0473]
第一参数和第二参数与第一负载息息相关。示例性的,当第一负载为电子设备中硬件(例如cpu或gpu或ddr或编码器)的使用率时,并且,电子设备中cpu和gpu大于预设使用率,第二参数为cpu的工作频率,第三参数为gpu的工作频率。示例性的,当电子设备中数据传输时延大于预设时延时,第二参数为电子设备的投屏码率。示例性的,当电子设备侧的图像合成时间大于预设时间或者电子设备中硬件的使用率大于预设使用率时,第二参数为电子设备的采样帧率。示例性的,当显示设备的图像合成时间大于预设时间或者显示设备中硬件的使用率大于预设使用率时,第二参数为电子设备的投屏分辨率。即只有当第一负载满足一定条件时,即第一负载过高,电子设备才会调节第一参数或者第二参数。这样,电子设备可以确定出导致投屏效果差的原因,并采取对应的措施提高投屏效果。
[0474]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
[0475]
上述实施例中所用,根据上下文,术语“当

时”可以被解释为意思是“如果
…”
或“在

后”或“响应于确定
…”
或“响应于监测到
…”
。类似地,根据上下文,短语“在确定

时”或“如果监测到(所陈述的条件或事件)”可以被解释为意思是“如果确定
…”
或“响应于确定
…”
或“在监测到(所陈述的条件或事件)时”或“响应于监测到(所陈述的条件或事件)”。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1