【技术实现步骤摘要】
弹幕渲染方法、装置、电子设备及存储介质
[0001]本专利技术涉及图像处理
,具体而言,涉及一种弹幕渲染方法、装置、电子设备及存储介质。
技术介绍
[0002]弹幕是指用户通过视频应用程序在观看视频过程中发送的评论并且以动态的方式显示。用户可以看到其他人发送的弹幕并进行交流。对于安装在PC端的视频应用程序,通常是将DX11(DirectX11)着色器内嵌在视频播放器中来对视频流和弹幕进行同时渲染,但是这种方式的实现难度大且兼容性差,常常会将弹幕编码为乱码的字符,出现弹幕乱码的情况。
技术实现思路
[0003]有鉴于此,本专利技术的目的在于提供一种弹幕渲染方法、装置、电子设备及存储介质。
[0004]为了实现上述目的,本专利技术采用的技术方案如下:
[0005]第一方面,本专利技术提供一种弹幕渲染方法,所述方法包括:
[0006]根据获得的多个弹幕内容及其色彩值进行绘制,得到多个纹理图像;所述纹理图像包括至少一个所述弹幕内容;
[0007]根据当前时刻确定每个所述弹幕内容在视频画面中的当前显示位置;
[0008]根据每个所述弹幕内容的当前显示位置及其所在的纹理图像,确定所述视频画面中每个像素点的当前色彩值;
[0009]利用像素着色器根据每个所述像素点的当前色彩值,对每个所述弹幕内容进行渲染得到弹幕图像。
[0010]在可选的实施方式中,所述根据每个所述弹幕内容的当前显示位置及其所在的纹理图像,确定所述视频画面中每个像素点的当前色彩值的步骤, ...
【技术保护点】
【技术特征摘要】
1.一种弹幕渲染方法,其特征在于,所述方法包括:根据获得的多个弹幕内容及其色彩值进行绘制,得到多个纹理图像;所述纹理图像包括至少一个所述弹幕内容;根据当前时刻确定每个所述弹幕内容在视频画面中的当前显示位置;根据每个所述弹幕内容的当前显示位置及其所在的纹理图像,确定所述视频画面中每个像素点的当前色彩值;利用像素着色器根据每个所述像素点的当前色彩值,对每个所述弹幕内容进行渲染得到弹幕图像。2.根据权利要求1所述方法,其特征在于,所述根据每个所述弹幕内容的当前显示位置及其所在的纹理图像,确定所述视频画面中每个像素点的当前色彩值的步骤,包括:根据每个所述弹幕内容的当前显示位置,确定每个所述弹幕内容的当前显示范围;对于每个所述像素点,判断是否存在与所述像素点位置匹配的目标弹幕内容,所述目标弹幕内容的当前显示范围包含所述像素点;若不存在,则将预设色彩值作为所述像素点的当前色彩值;若存在,则根据每个所述目标弹幕内容所在的目标纹理图像,确定所述像素点的当前色彩值;遍历每个所述像素点,得到每个所述像素点的当前色彩值。3.根据权利要求2所述的方法,其特征在于,所述纹理图像中的全部弹幕内容横向排列,所述纹理图像的高度等于所述弹幕内容的显示高度;所述纹理图像包括多个纹理像素点的色彩值;所述根据每个所述目标弹幕内容所在的目标纹理图像,确定所述像素点的当前色彩值的步骤,包括:对于每个所述目标纹理图像,在所述目标纹理图像中确定所述目标弹幕内容所在的目标区域,并从所述目标区域中获取与所述像素点对应的目标纹理像素点,得到每个所述目标纹理像素点;将全部目标纹理像素点的色彩值进行混合,得到所述像素点的当前色彩值。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据所述视频画面中目标对象的当前位置,绘制当前蒙层缩略图像;所述目标对象表示防止弹幕遮挡的对象,所述当前蒙层缩略图像包括透明区域和不透明区域,所述当前蒙层缩略图像的透明区域表示所述目标对象;利用蒙层着色器根据所述视频画面的尺寸,对所述当前蒙层缩略图像进行放大操作得到当前蒙层图像;所述当前蒙层图像中的透明区域与所述目标对象的尺寸匹配,所述当前蒙层图像中的透明区域与不透明区域的接壤处呈半透明状态;将所述当前蒙层图像与所述弹幕图像进行融合得到弹幕蒙层图像,所述弹幕蒙层图像中位于不透明区域的弹幕内容显示且位于透明区域的弹幕内容不显示。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取弹幕控件的初始尺寸;所述弹幕控件用于控制所述弹幕图像中所有弹幕内容的旋转角度,所述初始尺寸等于所述视频画面的尺寸;根据所述弹幕控件的初始尺寸,计算临界角度;所述临界角度表示所述弹幕控件对应
的绘制图像的尺寸为最小时所述弹幕控件的旋转角度;根据目标角度、所述临界角度和所述弹幕控件的初始尺寸,计算所述弹幕控件的目标伸长量;根据所述弹幕控件的初始尺寸和目标伸长量,得到所述弹幕控件的目...
【专利技术属性】
技术研发人员:何颂贤,徐世炎,
申请(专利权)人:广州虎牙科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。