一种基于车载视频的图像自定义渲染方法及存储介质与流程

文档序号:29627928发布日期:2022-04-13 15:00阅读:86来源:国知局
一种基于车载视频的图像自定义渲染方法及存储介质与流程

1.本发明涉及视频显示技术领域,尤其涉及一种基于车载视频的图像自定义渲染方法及存储介质。


背景技术:

2.互联网时代,随着智能终端等设备的推广和普及,用户不断的追求高品质的音视频体验。
3.现有技术中对视频播放的方法为:终端通过浏览器接收视频流之后,基于开源流媒体处理工具ffmpeg对视频流依次进行解封装、解码处理,得到解码之后的音频数据和视频帧,将解码后的视频帧在gpu(graphics processing unit,图形图处理器)中使用webgl(web graphics library,web图形库)中的canvas进行渲染,再将解码得到的音频数据和渲染的视频帧进行同步播放,从而通过软件解码实现视频播放。
4.在android系统上,车载视频流媒体应用越来越多,个性化需求也越来越高。当车载主机停止视频渲染后,视频窗口将保留显示最后一帧图像(如下图的carplay为例),存在如下问题:
5.(1)视频窗口维持在前台时,无法清除残留图像;
6.(2)视频窗口在隐藏状态下将被android系统自动释放,再次显示时需要重建窗口,影响效率;
7.(3)在多窗口切换时,由于残留图像容易引发闪屏问题,无法达到窗口间平滑过渡的效果。


技术实现要素:

8.本发明提供一种基于车载视频的图像自定义渲染方法及存储介质,解决了现有的车载视频流媒体显示方案存在局限性,由于视频窗口维持在最后一帧图像,导致多窗口切换时存在残留图像引发闪屏的技术问题。
9.为解决以上技术问题,本发明提供一种基于车载视频的图像自定义渲染方法,包括步骤:
10.s1、根据获取到的视频显示请求,发送视频图像;
11.s2、将获取到的所述视频图像进行解码后渲染视频窗口;
12.s3、在检测到停止视频请求时,停止图像渲染,所述视频窗口维持显示最后一帧所述视频图像;
13.s4、将预设图像渲染到所述视频窗口。
14.本基础方案在检测到停止视频请求时,停止图像渲染,视频窗口维持显示最后一帧所述视频图像,此时,将预设图像渲染到视频窗口,可快速清除窗口残留图像;同时,在多窗口切换时,可根据窗口颜色设置预设图像进行渲染,即达到窗口间平滑过渡的效果。
15.在进一步的实施方案,所述步骤s4包括步骤:
16.s41、获取所述视频窗口的窗口对象的引用;
17.s42、锁住所述视频窗口,并获取下一个可写的显示缓冲区;
18.s43、将预设图像填充到所述显示缓冲区中;
19.s44、对所述视频窗口解锁,根据所述显示缓冲区进行窗口渲染;
20.s45、释放所述视频窗口的窗口对象的引用,并断开连接。
21.本方案在结束当前视频窗口的视频播放时,直接获取其窗口对象的引用,并锁住视频窗口,防止窗口闪烁,并获取下一个可写的显示缓冲区,填入预设图像,此时对视频窗口进行解锁,以显示缓冲区进行窗口渲染,根据预设图像对当前视频窗口进行自定义渲染,可达到窗口间平滑过渡的效果。
22.在进一步的实施方案,本发明还包括步骤:
23.s0、根据视频显示窗口制作自定义的rgb图像,作为预设图像;
24.所述视频显示窗口为车载显示屏的显示窗口。
25.本方案根据车载显示屏的视频显示窗口制作自定义的rgb图像,可多场景下实现自定义渲染任何rgb图像至视频窗口,进行个性化显示。
26.在进一步的实施方案,所述步骤s4还包括:
27.s40、根据所述预设图像的图像参数设置窗口缓冲区的格式和大小;
28.所述图像参数包括rgb格式和图像分辨率。
29.在进一步的实施方案,所述步骤s1具体为:流媒体服务器接收车载主机发送的视频显示请求,进行图像解码和渲染得到视频图像,并将所述视频图像发送到流媒体服务器。
30.在进一步的实施方案,所述步骤s2具体为:所述车载主机将获取到的所述视频图像进行解码,得到rgb数据并渲染至视频窗口。
31.在进一步的实施方案,所述rgb格式包括rgb565、rgb555、rgb24、rgb32。
32.本发明还提供一种存储介质,其上存储有计算机程序,所述计算机程序用实现上述一种基于车载视频的图像自定义渲染方法。其中,存储介质可以是磁碟、光盘、只读存储器(read only memory,rom)或者随机存取器(random access memory,ram)等。
附图说明
33.图1是本发明实施例提供的一种基于车载视频的图像自定义渲染方法的工作流程图;
34.图2是本发明实施例提供的视频窗口切换图。
具体实施方式
35.下面结合附图具体阐明本发明的实施方式,实施例的给出仅仅是为了说明目的,并不能理解为对本发明的限定,包括附图仅供参考和说明使用,不构成对本发明专利保护范围的限制,因为在不脱离本发明精神和范围基础上,可以对本发明进行许多改变。
36.实施例1
37.本发明实施例提供的一种基于车载视频的图像自定义渲染方法,如图1所示,在本实施例中,包括步骤s0~s4:
38.s0、根据视频显示窗口制作自定义的rgb图像,作为预设图像;
39.所述视频显示窗口为车载显示屏的显示窗口。
40.本实施例根据车载显示屏的视频显示窗口制作自定义的rgb图像,可多场景下实现自定义渲染任何rgb图像至视频窗口,进行个性化显示。
41.s1、根据获取到的视频显示请求,发送视频图像,具体为:流媒体服务器接收车载主机发送的视频显示请求,进行图像解码和渲染得到视频图像,并将所述视频图像发送到流媒体服务器。
42.s2、将获取到的所述视频图像进行解码后渲染视频窗口,具体为:所述车载主机将获取到的所述视频图像进行解码,得到rgb数据并渲染至视频窗口。
43.s3、在检测到停止视频请求时,停止图像渲染,所述视频窗口维持显示最后一帧所述视频图像;
44.s4、将预设图像渲染到所述视频窗口。
45.在进一步的实施方案,所述步骤s4包括步骤s40~s44:
46.s40、从视频窗口获取anativewindow句柄,根据所述预设图像的图像参数设置窗口缓冲区的格式和大小;
47.在本实施例中,所述图像参数包括rgb格式和图像分辨率。
48.在本实施例中,所述rgb格式包括但不限于rgb565、rgb555、rgb24、rgb32。
49.s41、获取所述视频窗口的窗口对象的引用;
50.s42、锁住所述视频窗口,并获取下一个可写的显示缓冲区;
51.s43、将预设图像填充到所述显示缓冲区中;
52.s44、对所述视频窗口解锁,根据所述显示缓冲区进行窗口渲染;
53.s45、释放所述视频窗口的窗口对象的引用,并断开连接。
54.本实施例在结束当前视频窗口的视频播放时,直接获取其窗口对象的引用,并锁住视频窗口,防止窗口闪烁,并获取下一个可写的显示缓冲区,填入预设图像,此时对视频窗口进行解锁,以显示缓冲区进行窗口渲染,根据预设图像对当前视频窗口进行自定义渲染,可达到窗口间平滑过渡的效果。
55.参见图2,具体的自定义渲染工作原理如下:
56.其中,物理窗口a,一个物理窗口a(即上述的视频显示窗口)可包含多个虚拟窗口(例如虚拟窗口b、虚拟窗口c),物理窗口a本身也可具备背景颜色;
57.以虚拟窗口b(即上述的视频窗口)表示视频流媒体的虚拟窗口、虚拟窗口c表示其他app的窗口为例:当视频流媒体停止视频传输,并残留最后一帧图像时(比如图2中部的深灰色块),在与“虚拟窗口c”之间切换时,将“虚拟窗口b”渲染为物理窗口a的背景颜色(如图2中的白色),从而避免闪屏问题。
58.本发明实施例在检测到停止视频请求时,停止图像渲染,视频窗口维持显示最后一帧所述视频图像,此时,将预设图像渲染到视频窗口,可快速清除窗口残留图像;同时,在多窗口切换时,可根据窗口颜色设置预设图像进行渲染,即达到窗口间平滑过渡的效果。
59.实施例2
60.本发明还提供一种存储介质,其上存储有计算机程序,所述计算机程序用实现上述实施例提供的一种基于车载视频的图像自定义渲染方法。其中,存储介质可以是磁碟、光盘、只读存储器(read only memory,rom)或者随机存取器(random access memory,ram)
等。
61.上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1