CN105872679A - 弹幕显示方法和装置 - Google Patents

弹幕显示方法和装置 Download PDF

Info

Publication number
CN105872679A
CN105872679A CN201511026842.5A CN201511026842A CN105872679A CN 105872679 A CN105872679 A CN 105872679A CN 201511026842 A CN201511026842 A CN 201511026842A CN 105872679 A CN105872679 A CN 105872679A
Authority
CN
China
Prior art keywords
barrage
sub
line journey
backstage
display
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.)
Pending
Application number
CN201511026842.5A
Other languages
English (en)
Inventor
李欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LeTV Information Technology Beijing Co Ltd
Original Assignee
LeTV Information Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by LeTV Information Technology Beijing Co Ltd filed Critical LeTV Information Technology Beijing Co Ltd
Priority to CN201511026842.5A priority Critical patent/CN105872679A/zh
Publication of CN105872679A publication Critical patent/CN105872679A/zh
Priority to PCT/CN2016/097733 priority patent/WO2017113856A1/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44204Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4314Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例公开了一种弹幕显示方法和装置。所述方法包括:在目标视频的播放过程中,UI主线程实时监测弹幕显示请求;在监测到所述弹幕显示请求时,所述UI主线程开启至少一个后台子线程;所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容;所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。本发明优化了现有的弹幕显示技术,减少了弹幕显示任务对UI主线程资源的占用。

Description

弹幕显示方法和装置
技术领域
本发明实施例涉及计算机技术,尤其涉及一种弹幕显示方法和装置。
背景技术
弹幕显示,是在显示视频时,将大量的用户评论以滚动字幕形式显示在视频上的一种显示方式。通过弹幕功能,用户可以在网上观看视频时,增加自己的评论,并实时的显示在视频画面的上方,同时,在用户的本地客户端中也可以显示其他用户对于该视频增加的评论。通过这一功能,能够增强观看同一视频的不同用户之间的互动性。
在现有技术中,弹幕显示功能主要通过UI(User Interface,用户界面)主线程统一实现的。其中,对于Android(安卓)系统来说,当一个应用程序启动后,系统会为该应用程序创建一个名为“main”的主线程。这个主线程(也就是UI主线程)主要用于处理各种UI事件。通过在UI主线程中分发各种功能事件,可以执行弹幕文字格式、弹幕弹出速度以及弹幕布局等控制操作。
现有的弹幕显示技术的主要缺陷在于:弹幕显示过程中需要实时绘制图像以更新弹幕,因此,需要UI主线程不停的响应画图任务,在一定程度上会使得UI主线程会被画图函数阻塞,因而无法响应按键以及触屏等用户操作,增加了用户的操作等待时间,用户体验差。
发明内容
有鉴于此,本发明实施例提供一种弹幕显示方法和装置,以优化现有的弹幕显示技术,减少弹幕显示任务对UI主线程资源的占用。
在第一方面,本发明实施例提供了一种弹幕显示方法,包括:
在目标视频的播放过程中,UI主线程实时监测弹幕显示请求;
在监测到所述弹幕显示请求时,所述UI主线程开启至少一个后台子线程;
所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容;
所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
在第二方面,本发明实施例提供了一种弹幕显示装置,包括:
弹幕显示请求监控模块,用于在目标视频的播放过程中,通过UI主线程实时监测弹幕显示请求;
后台子线程开启模块,用于在监测到所述弹幕显示请求时,通过所述UI主线程开启至少一个后台子线程;
弹幕内容绘制模块,用于通过所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容;
弹幕显示模块,用于通过所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
本发明实施例的技术方案在监测到用户发送的弹幕显示请求时,不再占用UI主线程完成弹幕内容的绘制,而是通过在UI主线程开启至少一个后台子线程,并通过所述后台子线程实时绘制弹幕内容后,经由UI主线程绘制完成的弹幕内容在视频的播放界面中进行显示的技术手段,解决了现有的弹幕显示技术需要UI主线程不停的响应画图任务,因而无法实时响应按键以及触屏等用户操作,增加了用户的操作等待时间,用户体验差等问题,优化了现有的弹幕显示技术,减少了弹幕显示任务对UI主线程资源的占用。
附图说明
图1是本发明第一实施例的一种弹幕显示方法的流程图;
图2是本发明第二实施例的一种弹幕显示方法的流程图;
图3是本发明第三实施例的一种弹幕显示方法的流程图;
图4是本发明第四实施例的一种弹幕显示装置的结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。
另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
第一实施例
图1为本发明第一实施例提供的弹幕显示方法的流程图,本实施例的方法可以由弹幕显示装置来执行,该装置可通过硬件和/或软件的方式实现,并一般可以集成于具有弹幕显示功能的视频播放器中,或作为视频播放器的子程序。其中,所述视频播放器可以为安装于终端设备中的客户端应用程序,也可以为配置于网页中的视频播放插件,本实施例对此并不进行限制。
本实施例的方法具体包括:
110、在目标视频的播放过程中,UI主线程实时监测弹幕显示请求。
一般来说,在视频的播放过程中,用户可以根据个人喜好打开或者关闭视频播放器向用户提供的弹幕显示按钮,以观看或者屏蔽弹幕。
典型的,当用户在目标视频的播放界面中,点击或者触摸弹幕显示按钮打开弹幕功能时,触发产生所述弹幕显示请求。
如背景技术所述,UI主要用于处理各种UI事件并响应按键以及触屏等用户操作,因此,在目标视频的播放过程中,所述UI主线程实时监测由用户操作所触发产生的监测弹幕显示请求。
120、在监测到所述弹幕显示请求时,所述UI主线程开启至少一个后台子线程。
在本实施例中,UI主线程在监测到所述弹幕显示请求时,并不占用UI主线程中的珍贵资源来实现弹幕数据的读取、弹幕绘制等弹幕处理功能,而是通过开启后台子线程的方式,将所述弹幕处理功能移交给后台线程实现,这样就可以大大减少对UI主线程中资源的占用。
其中,UI主线程可以开启一个或者多个后台子线程来实现所述弹幕处理功能,本实施例对此并不进行限制。
在本实施例的一个优选的实施方式中,所述至少一个后台子线程可以通过调用Android系统平台的SurfaceView组件的Thread类的run方法实现。
其中,SurfaceView组件具有在独立于UI主线程之外的后台线程中向屏幕绘图的功能,可以实现高效率的绘制二维图或者显示图像,在Android系统平台中,提供有功能完善的SurfaceView组件。一般来说,可以在UI主线程中通过接口surfaceHolder.callback接口实现对SurfaceView组件的调用。
130、所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容。
在本实施例中,为了最终实现将弹幕在目标视频的播放界面中进行显示,所述后台子线程需要完成的操作主要包括:
获取弹幕数据,也就是需要获取在播放界面中实时显示的弹幕文字,一般来说,弹幕数据在存储时是与视频播放时间相对应的,也就是说,在不同的视频播放时间下所需要显示的弹幕是不同的,因此需要首先根据当前目标视频的播放时间,获取对应的弹幕数据;
将获取的弹幕数据按照设定的规则(例如,弹幕文字颜色以及弹幕文字显示位置等)在画布(Canvas)中进行绘制。
因此,可以使用一个后台子线程来完成上述操作,也可以使用两个后台子线程来配合完成上述操作。
其中,可以通过在SurfaceView组件的Thread类的run方法中添加对应的功能代码的方式为各后台子线程的赋予不同的弹幕处理功能。
140、所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
在本实施例中,UI主线程通过对后台子线程绘制完成的所述弹幕内容进行渲染,即可实现将弹幕在目标视频的播放界面中进行显示。
典型的,后台子线程在画布中进行绘图后,绘制结果会缓存于SurfaceView中的成员变量Surface中,在后台子线程绘制完成后,UI主线程获取Surface中存储的绘制结果在所述目标视频的播放界面中进行显示。
本发明实施例的方法在监测到用户发送的弹幕显示请求时,不再占用UI主线程完成弹幕内容的绘制,而是通过在UI主线程开启至少一个后台子线程,并通过所述后台子线程实时绘制弹幕内容后,经由UI主线程绘制完成的弹幕内容在视频的播放界面中进行显示的技术手段,解决了现有的弹幕显示技术需要UI主线程不停的响应画图任务,因而无法实时响应按键以及触屏等用户操作,增加了用户的操作等待时间,用户体验差等问题,优化了现有的弹幕显示技术,减少了弹幕显示任务对UI主线程资源的占用。
第二实施例
图2是本发明第二实施例的一种弹幕显示方法的流程图。本实施例以上述实施例为基础进行优化,在本实施例中,将所述后台子线程具体优化为弹幕加载子线程以及弹幕绘制子线程;
同时。将所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容具体优化为:
所述弹幕加载子线程在设定弹幕数据存储区域内读取与目标视频的当前播放时间对应的弹幕数据,并将所述弹幕数据存储于加载队列中;所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据,并根据所述弹幕数据以及设定弹幕绘制规则实时绘制弹幕内容。
相应的,本实施例的方法具体包括:
210、在目标视频的播放过程中,UI主线程实时监测弹幕显示请求。
220、在监测到所述弹幕显示请求时,所述UI主线程开启弹幕加载子线程以及弹幕绘制子线程。
在本实施例中,通过使用弹幕加载子线程以及弹幕绘制子线程的配合,实现如前所述的弹幕处理功能。这样设置的好处是:将弹幕数据的加载过程以及弹幕数据的绘制过程独立开来,提高了对弹幕内容的绘制效率。
230、所述弹幕加载子线程在设定弹幕数据存储区域内读取与目标视频的当前播放时间对应的弹幕数据,并将所述弹幕数据存储于加载队列中。
一般来说,目标视频中显示的弹幕来源为各个不同的视频观看用户对该目标视频实时发布的评论,其可以存储于视频服务器中也可以作为缓存文件存储于视频播放器所在的终端设备中。
相应的,所述设定弹幕数据存储区域可以为视频服务器中设定的弹幕存储文件也可以为终端设备中设定的弹幕缓存文件,本实施例对此并不进行显示。
其中,所述加载队列为先进先出队列。
240、所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据,并根据所述弹幕数据以及设定弹幕绘制规则实时绘制弹幕内容。
在本实施例的一个优选的实施方式中,所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据后,会相应删除所述加载队列中已经被获取的弹幕数据,以减少弹幕数据对内容空间的占用。
250、所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
本实施例的方法通过使用弹幕加载子线程以及弹幕绘制子线程的配合来完成对应的弹幕处理功能,实现了将弹幕数据的加载过程以及弹幕数据的绘制过程独立开来,并行执行,进一步提高了对弹幕内容的绘制效率。
第三实施例
图3是本发明第三实施例的一种弹幕显示方法的流程图。本实施例以上述实施例为基础进行优化,在本实施例中,将所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据,并根据所述弹幕数据以及设定弹幕绘制规则实时绘制弹幕内容具体优化为:
所述弹幕绘制子线程从所述加载队列中获取与单屏弹幕显示数量对应的所述弹幕数据;所述弹幕绘制子线程根据弹幕显示参数,将获取的所述弹幕数据实时绘制于一块画布中。
同时,所述弹幕绘制子线程优选包括至少一个用户输入接口;
在所述UI主线程开启所述弹幕绘制子线程之后,还优选包括:
所述弹幕绘制子线程通过所述用户输入接口获取用户输入的自定义参数;其中,所述自定义参数包括自定义参数类型以及自定义参数值;所述弹幕绘制子线程将与所述自定义参数类型对应的所述弹幕显示参数的参数值调整为所述自定义参数值。
相应的,本实施例的方法具体包括:
310、在目标视频的播放过程中,UI主线程实时监测弹幕显示请求。
320、在监测到所述弹幕显示请求时,所述UI主线程开启弹幕加载子线程以及弹幕绘制子线程。
330、所述弹幕绘制子线程通过所述用户输入接口获取用户输入的自定义参数。
在本实施例中,所述弹幕绘制子线程可以根据弹幕显示参数,对获取的所述弹幕数据进行绘制。优选的,所述弹幕显示参数可以包括下述至少一项:弹幕文字颜色、弹幕文字大小、弹幕文字字体以及弹幕文字显示位置以及弹幕文字滚动方向。
其中,为了实现用户对目标视频播放界面中显示的弹幕进行灵活控制,本实施例的方法在弹幕绘制子线程中配置有用户输入接口,用户可以通过该用户输入接口输入完成对弹幕的显示控制。例如:通过下拉菜单选择或者手动输入的方式输入“弹幕字体,红色”或者“弹幕文字大小,小四”等自定义参数至所述用户输入接口。
其中,所述自定义参数包括自定义参数类型(例如,“弹幕字体”)以及自定义参数值(例如,“红色”)。
340、所述弹幕绘制子线程将与所述自定义参数类型对应的所述弹幕显示参数的参数值调整为所述自定义参数值。
350、所述弹幕加载子线程在设定弹幕数据存储区域内读取与目标视频的当前播放时间对应的弹幕数据,并将所述弹幕数据存储于加载队列中。
360、所述弹幕绘制子线程从所述加载队列中获取与单屏弹幕显示数量对应的所述弹幕数据。
一般来说,弹幕绘制子线程在一块画布中绘制的弹幕内容会在一次屏幕刷新后显示在目标视频的播放界面中,因此,弹幕绘制子线程可以在每次绘制前获取与单屏弹幕显示数量对应的弹幕数据进行弹幕绘制。
其中,所述单屏弹幕显示数量具体是指,一次屏幕刷新后,在目标视频的播放界面中所显示的弹幕数量。
其中,所述单屏弹幕显示数量可以固定设置,也可以由用户进行自由设置,本实施例对此并不进行显示。
370、所述弹幕绘制子线程根据弹幕显示参数,将获取的所述弹幕数据实时绘制于一块画布中。
需要说明的是,本实施例中虽然将330—340的执行顺序放置于350—370之前,但是330—340的执行与用户输入自定义参数的时机密切相关,因此,330—340的执行顺序可以在350—370之前,也可以在350—370之后,还可以在350—370执行过程中,中断350—370后执行。
380、所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
本实施的方法通过在弹幕绘制子线程中加入至少一个用户输入接口,可以实现根据用户输入的自定义参数修改弹幕显示形式的技术效果,提高了弹幕显示的灵活性,改善了用户体验。
第四实施例
在图4中示出了本发明第四实施例的一种弹幕显示装置的结构图,如图4所示,所述装置包括:
弹幕显示请求监控模块41,用于在目标视频的播放过程中,通过UI主线程实时监测弹幕显示请求。
后台子线程开启模块42,用于在监测到所述弹幕显示请求时,通过所述UI主线程开启至少一个后台子线程。
弹幕内容绘制模块43,用于通过所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容。
弹幕显示模块44,用于通过所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
本发明实施例的装置在监测到用户发送的弹幕显示请求时,不再占用UI主线程完成弹幕内容的绘制,而是通过在UI主线程开启至少一个后台子线程,并通过所述后台子线程实时绘制弹幕内容后,经由UI主线程绘制完成的弹幕内容在视频的播放界面中进行显示的技术手段,解决了现有的弹幕显示技术需要UI主线程不停的响应画图任务,因而无法实时响应按键以及触屏等用户操作,增加了用户的操作等待时间,用户体验差等问题,优化了现有的弹幕显示技术,减少了弹幕显示任务对UI主线程资源的占用。
在上述各实施例的基础上,所述后台子线程可以包括弹幕加载子线程以及弹幕绘制子线程;
相应的,所述后台子线程开启模块可以包括:
弹幕加载子单元,用于通过所述弹幕加载子线程在设定弹幕数据存储区域内读取与目标视频的当前播放时间对应的弹幕数据,并将所述弹幕数据存储于加载队列中;
弹幕绘制子单元,用于通过所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据,并根据所述弹幕数据以及设定弹幕绘制规则实时绘制弹幕内容。
在上述各实施例的基础上,所述弹幕绘制子单元具体可以用于:
通过所述弹幕绘制子线程从所述加载队列中获取与单屏弹幕显示数量对应的所述弹幕数据;
通过所述弹幕绘制子线程根据弹幕显示参数,将获取的所述弹幕数据实时绘制于一块画布中。
在上述各实施例的基础上,所述弹幕显示参数可以包括下述至少一项:弹幕文字颜色、弹幕文字大小、弹幕文字字体以及弹幕文字显示位置以及弹幕文字滚动方向。
在上述各实施例的基础上,所述弹幕绘制子线程包括至少一个用户输入接口;
相应的,还可以包括:
参数修改模块,用于在所述UI主线程开启所述弹幕绘制子线程之后,采用所述弹幕绘制子线程通过所述用户输入接口获取用户输入的自定义参数;其中,所述自定义参数包括自定义参数类型以及自定义参数值;
采用所述弹幕绘制子线程将与所述自定义参数类型对应的所述弹幕显示参数的参数值调整为所述自定义参数值。
在上述各实施例的基础上,所述至少一个后台子线程可以通过调用Android系统平台的SurfaceView组件的Thread类的run方法实现。
本发明实施例所提供的弹幕显示装置可用于执行本发明任意实施例提供的弹幕显示方法,具备相应的功能模块,实现相同的有益效果。
显然,本领域技术人员应该明白,上述的本发明的各模块或各步骤可以通过如上所述的视频播放器实施。可选地,本发明实施例可以用计算机装置可执行的程序来实现,从而可以将它们存储在存储装置中由处理器来执行,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等;或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种弹幕显示方法,其特征在于,包括:
在目标视频的播放过程中,用户界面UI主线程实时监测弹幕显示请求;
在监测到所述弹幕显示请求时,所述UI主线程开启至少一个后台子线程;
所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容;
所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
2.根据权利要求1所述的方法,其特征在于,所述后台子线程包括弹幕加载子线程以及弹幕绘制子线程;
所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容包括:
所述弹幕加载子线程在设定弹幕数据存储区域内读取与目标视频的当前播放时间对应的弹幕数据,并将所述弹幕数据存储于加载队列中;
所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据,并根据所述弹幕数据以及设定弹幕绘制规则实时绘制弹幕内容。
3.根据权利要求2所述的方法,其特征在于,所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据,并根据所述弹幕数据以及设定弹幕绘制规则实时绘制弹幕内容具体包括:
所述弹幕绘制子线程从所述加载队列中获取与单屏弹幕显示数量对应的所述弹幕数据;
所述弹幕绘制子线程根据弹幕显示参数,将获取的所述弹幕数据实时绘制于一块画布中。
4.根据权利要求3所述的方法,其特征在于,所述弹幕显示参数包括下述至少一项:弹幕文字颜色、弹幕文字大小、弹幕文字字体以及弹幕文字显示位置、以及弹幕文字滚动方向。
5.根据权利要求3所述的方法,其特征在于,所述弹幕绘制子线程包括至少一个用户输入接口;
相应的,在所述UI主线程开启所述弹幕绘制子线程之后,还包括:
所述弹幕绘制子线程通过所述用户输入接口获取用户输入的自定义参数;其中,所述自定义参数包括自定义参数类型以及自定义参数值;
所述弹幕绘制子线程将与所述自定义参数类型对应的所述弹幕显示参数的参数值调整为所述自定义参数值。
6.根据权利要求1-5任一所述的方法,其特征在于,所述至少一个后台子线程通过调用Android系统平台的SurfaceView组件的Thread类的run方法实现。
7.一种弹幕显示装置,其特征在于,包括:
弹幕显示请求监控模块,用于在目标视频的播放过程中,通过用户界面UI主线程实时监测弹幕显示请求;
后台子线程开启模块,用于在监测到所述弹幕显示请求时,通过所述UI主线程开启至少一个后台子线程;
弹幕内容绘制模块,用于通过所述后台子线程根据所述弹幕显示请求以及设定的弹幕绘制规则,实时绘制弹幕内容;
弹幕显示模块,用于通过所述UI主线程将所述后台子线程绘制完成的所述弹幕内容在所述目标视频的播放界面中进行显示。
8.根据权利要求7所述的装置,其特征在于,所述后台子线程包括弹幕加载子线程以及弹幕绘制子线程;
所述后台子线程开启模块包括:
弹幕加载子单元,用于通过所述弹幕加载子线程在设定弹幕数据存储区域内读取与目标视频的当前播放时间对应的弹幕数据,并将所述弹幕数据存储于加载队列中;
弹幕绘制子单元,用于通过所述弹幕绘制子线程从所述加载队列中获取所述弹幕数据,并根据所述弹幕数据以及设定弹幕绘制规则实时绘制弹幕内容。
9.根据权利要求8所述的装置,其特征在于,所述弹幕绘制子单元具体用于:
通过所述弹幕绘制子线程从所述加载队列中获取与单屏弹幕显示数量对应的所述弹幕数据;
通过所述弹幕绘制子线程根据弹幕显示参数,将获取的所述弹幕数据实时绘制于一块画布中。
10.根据权利要求9所述的装置,其特征在于,所述弹幕显示参数包括下述至少一项:弹幕文字颜色、弹幕文字大小、弹幕文字字体以及弹幕文字显示位置以及弹幕文字滚动方向。
11.根据权利要求9所述的装置,其特征在于,所述弹幕绘制子线程包括至少一个用户输入接口;
相应的,还包括:
参数修改模块,用于在采用所述UI主线程开启所述弹幕绘制子线程之后,采用所述弹幕绘制子线程通过所述用户输入接口获取用户输入的自定义参数;其中,所述自定义参数包括自定义参数类型以及自定义参数值;
采用所述弹幕绘制子线程将与所述自定义参数类型对应的所述弹幕显示参数的参数值调整为所述自定义参数值。
12.根据权利要求7-11任一所述的装置,其特征在于,所述至少一个后台子线程通过调用Android系统平台的SurfaceView组件的Thread类的run方法实现。
CN201511026842.5A 2015-12-31 2015-12-31 弹幕显示方法和装置 Pending CN105872679A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201511026842.5A CN105872679A (zh) 2015-12-31 2015-12-31 弹幕显示方法和装置
PCT/CN2016/097733 WO2017113856A1 (zh) 2015-12-31 2016-08-31 弹幕显示方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511026842.5A CN105872679A (zh) 2015-12-31 2015-12-31 弹幕显示方法和装置

Publications (1)

Publication Number Publication Date
CN105872679A true CN105872679A (zh) 2016-08-17

Family

ID=56624190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511026842.5A Pending CN105872679A (zh) 2015-12-31 2015-12-31 弹幕显示方法和装置

Country Status (2)

Country Link
CN (1) CN105872679A (zh)
WO (1) WO2017113856A1 (zh)

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106331345A (zh) * 2016-08-24 2017-01-11 腾讯科技(深圳)有限公司 一种交互消息展示方法、装置及系统
CN106358068A (zh) * 2016-10-10 2017-01-25 郭海波 大数据解决网络直播绘画的系统及方法
CN106375827A (zh) * 2016-08-30 2017-02-01 广州华多网络科技有限公司 弹幕处理方法及装置
CN106791937A (zh) * 2016-12-15 2017-05-31 广东威创视讯科技股份有限公司 视频图像的标注方法和系统
WO2017113856A1 (zh) * 2015-12-31 2017-07-06 乐视控股(北京)有限公司 弹幕显示方法和装置
CN106951334A (zh) * 2017-03-21 2017-07-14 武汉斗鱼网络科技有限公司 发送彩色弹幕的方法及系统
CN107087236A (zh) * 2017-03-22 2017-08-22 北京潘达互娱科技有限公司 一种直播信息展示方法及装置
CN108156508A (zh) * 2017-12-28 2018-06-12 北京安云世纪科技有限公司 弹幕信息处理的方法、装置、移动终端、服务器及系统
CN108206959A (zh) * 2016-12-20 2018-06-26 武汉斗鱼网络科技有限公司 一种显示弹幕消息的方法和装置
CN108235105A (zh) * 2018-01-22 2018-06-29 上海硬创投资管理有限公司 一种弹幕呈现方法、记录介质、电子设备、信息处理系统
CN108322807A (zh) * 2018-02-24 2018-07-24 武汉斗鱼网络科技有限公司 一种弹幕展示方法及装置
CN108600852A (zh) * 2018-04-28 2018-09-28 北京酷我科技有限公司 一种弹幕效果的实现方法
CN108829336A (zh) * 2018-06-29 2018-11-16 深圳市理邦精密仪器股份有限公司 波形移动方法、装置及计算机可读存储介质
CN109189537A (zh) * 2018-08-31 2019-01-11 掌阅科技股份有限公司 页面信息的动态显示方法、计算设备及计算机存储介质
CN109474845A (zh) * 2018-09-14 2019-03-15 咪咕音乐有限公司 弹幕控制方法、弹幕处理服务器以及计算机可读存储介质
CN109582409A (zh) * 2018-10-15 2019-04-05 广东宝莱特医用科技股份有限公司 一种基于双缓冲的显示叠加方法
CN109618225A (zh) * 2018-12-25 2019-04-12 百度在线网络技术(北京)有限公司 视频抽帧方法、装置、设备和介质
CN109669752A (zh) * 2018-12-19 2019-04-23 北京达佳互联信息技术有限公司 一种界面绘制方法、装置及移动终端
CN109788334A (zh) * 2019-01-31 2019-05-21 北京字节跳动网络技术有限公司 弹幕处理方法、装置、电子设备及计算机可读存储介质
CN109978971A (zh) * 2019-03-29 2019-07-05 深圳市万普拉斯科技有限公司 Ui绘图方法、装置和移动终端
CN110012338A (zh) * 2019-04-10 2019-07-12 广州虎牙信息科技有限公司 一种显示弹幕数据的方法、装置、计算机设备和存储介质
CN110764766A (zh) * 2019-10-15 2020-02-07 成都四方伟业软件股份有限公司 一种光圈效果实现方法及装置
CN110837589A (zh) * 2019-11-08 2020-02-25 北京字节跳动网络技术有限公司 一种信息展示方法及装置
CN110891190A (zh) * 2018-09-05 2020-03-17 武汉斗鱼网络科技有限公司 一种弹幕显示方法、装置及电子设备
CN110930496A (zh) * 2019-11-19 2020-03-27 北京达佳互联信息技术有限公司 视图绘制方法、装置、电子设备和存储介质
CN111083551A (zh) * 2019-12-17 2020-04-28 腾讯科技(深圳)有限公司 弹幕渲染方法、装置、计算机可读存储介质和计算机设备
CN111131910A (zh) * 2020-01-02 2020-05-08 广州虎牙科技有限公司 弹幕实现方法、装置、电子设备和可读存储介质
CN111405342A (zh) * 2020-03-17 2020-07-10 北京字节跳动网络技术有限公司 富文本消息显示方法、装置、系统、介质和电子设备
WO2020156035A1 (zh) * 2019-01-31 2020-08-06 北京字节跳动网络技术有限公司 弹幕处理方法、装置、电子设备及计算机可读存储介质、以及图像处理方法、装置、电子设备及计算机可读存储介质
CN112565824A (zh) * 2020-12-03 2021-03-26 腾讯科技(深圳)有限公司 一种生成弹幕的方法、装置、终端及存储介质
CN112637691A (zh) * 2019-09-24 2021-04-09 广州虎牙科技有限公司 弹幕隔离方法、装置和系统
CN112752131A (zh) * 2019-10-30 2021-05-04 腾讯科技(深圳)有限公司 弹幕信息的显示方法和装置、存储介质及电子装置
CN112866787A (zh) * 2021-04-12 2021-05-28 上海哔哩哔哩科技有限公司 弹幕设置方法、装置及系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113271502B (zh) * 2020-02-17 2023-04-28 上海哔哩哔哩科技有限公司 基于视频弹幕的数据显示方法、装置以及计算机设备
CN113411683B (zh) * 2021-06-23 2022-07-22 北京奇艺世纪科技有限公司 一种视频播放方法及装置
CN114443153B (zh) * 2022-01-28 2024-03-12 深圳Tcl新技术有限公司 界面绘图方法、装置、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060098945A1 (en) * 2004-11-08 2006-05-11 Samsung Electronics Co., Ltd. Method for storing audio data of audio and video (AV) device
CN103593231A (zh) * 2012-08-14 2014-02-19 腾讯科技(深圳)有限公司 一种数据处理方法、装置及移动终端
CN105100927A (zh) * 2015-08-07 2015-11-25 广州酷狗计算机科技有限公司 弹幕显示方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101404489B1 (ko) * 2012-08-08 2014-06-10 한국과학기술정보연구원 멀티쓰레드를 이용한 동영상 실시간 렌더링 방법 및 시스템
CN104735543B (zh) * 2015-03-30 2018-09-28 北京奇艺世纪科技有限公司 一种弹幕显示方法及装置
CN105100869B (zh) * 2015-07-13 2018-09-04 腾讯科技(深圳)有限公司 弹幕显示方法及装置
CN105872679A (zh) * 2015-12-31 2016-08-17 乐视网信息技术(北京)股份有限公司 弹幕显示方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060098945A1 (en) * 2004-11-08 2006-05-11 Samsung Electronics Co., Ltd. Method for storing audio data of audio and video (AV) device
CN103593231A (zh) * 2012-08-14 2014-02-19 腾讯科技(深圳)有限公司 一种数据处理方法、装置及移动终端
CN105100927A (zh) * 2015-08-07 2015-11-25 广州酷狗计算机科技有限公司 弹幕显示方法及装置

Cited By (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017113856A1 (zh) * 2015-12-31 2017-07-06 乐视控股(北京)有限公司 弹幕显示方法和装置
CN106331345A (zh) * 2016-08-24 2017-01-11 腾讯科技(深圳)有限公司 一种交互消息展示方法、装置及系统
CN106331345B (zh) * 2016-08-24 2021-03-16 腾讯科技(深圳)有限公司 一种交互消息展示方法、装置及系统
US11088970B2 (en) 2016-08-24 2021-08-10 Tencent Technology (Shenzhen) Company Limited Interactive message display method, apparatus and system, and storage medium
CN106375827A (zh) * 2016-08-30 2017-02-01 广州华多网络科技有限公司 弹幕处理方法及装置
CN106375827B (zh) * 2016-08-30 2019-05-07 广州华多网络科技有限公司 弹幕处理方法及装置
CN106358068A (zh) * 2016-10-10 2017-01-25 郭海波 大数据解决网络直播绘画的系统及方法
CN106358068B (zh) * 2016-10-10 2023-12-19 郭海波 大数据解决网络直播绘画的系统及方法
CN106791937A (zh) * 2016-12-15 2017-05-31 广东威创视讯科技股份有限公司 视频图像的标注方法和系统
WO2018107777A1 (zh) * 2016-12-15 2018-06-21 威创集团股份有限公司 视频图像的标注方法和系统
CN108206959B (zh) * 2016-12-20 2021-05-28 武汉斗鱼网络科技有限公司 一种显示弹幕消息的方法和装置
CN108206959A (zh) * 2016-12-20 2018-06-26 武汉斗鱼网络科技有限公司 一种显示弹幕消息的方法和装置
CN106951334A (zh) * 2017-03-21 2017-07-14 武汉斗鱼网络科技有限公司 发送彩色弹幕的方法及系统
CN107087236A (zh) * 2017-03-22 2017-08-22 北京潘达互娱科技有限公司 一种直播信息展示方法及装置
CN107087236B (zh) * 2017-03-22 2020-02-07 北京潘达互娱科技有限公司 一种直播信息展示方法及装置
CN108156508A (zh) * 2017-12-28 2018-06-12 北京安云世纪科技有限公司 弹幕信息处理的方法、装置、移动终端、服务器及系统
CN108156508B (zh) * 2017-12-28 2020-10-20 北京安云世纪科技有限公司 弹幕信息处理的方法、装置、移动终端、服务器及系统
CN108235105A (zh) * 2018-01-22 2018-06-29 上海硬创投资管理有限公司 一种弹幕呈现方法、记录介质、电子设备、信息处理系统
CN108235105B (zh) * 2018-01-22 2020-11-13 上海硬创投资管理有限公司 一种弹幕呈现方法、记录介质、电子设备、信息处理系统
CN108322807A (zh) * 2018-02-24 2018-07-24 武汉斗鱼网络科技有限公司 一种弹幕展示方法及装置
CN108600852A (zh) * 2018-04-28 2018-09-28 北京酷我科技有限公司 一种弹幕效果的实现方法
CN108600852B (zh) * 2018-04-28 2020-12-15 北京酷我科技有限公司 一种弹幕效果的实现方法
CN108829336A (zh) * 2018-06-29 2018-11-16 深圳市理邦精密仪器股份有限公司 波形移动方法、装置及计算机可读存储介质
CN108829336B (zh) * 2018-06-29 2021-07-16 深圳市理邦精密仪器股份有限公司 波形移动方法、装置及计算机可读存储介质
CN109189537A (zh) * 2018-08-31 2019-01-11 掌阅科技股份有限公司 页面信息的动态显示方法、计算设备及计算机存储介质
CN110891190B (zh) * 2018-09-05 2022-02-18 武汉斗鱼网络科技有限公司 一种弹幕显示方法、装置及电子设备
CN110891190A (zh) * 2018-09-05 2020-03-17 武汉斗鱼网络科技有限公司 一种弹幕显示方法、装置及电子设备
CN109474845B (zh) * 2018-09-14 2021-11-16 咪咕音乐有限公司 弹幕控制方法、弹幕处理服务器以及计算机可读存储介质
CN109474845A (zh) * 2018-09-14 2019-03-15 咪咕音乐有限公司 弹幕控制方法、弹幕处理服务器以及计算机可读存储介质
CN109582409A (zh) * 2018-10-15 2019-04-05 广东宝莱特医用科技股份有限公司 一种基于双缓冲的显示叠加方法
CN109669752A (zh) * 2018-12-19 2019-04-23 北京达佳互联信息技术有限公司 一种界面绘制方法、装置及移动终端
CN109618225A (zh) * 2018-12-25 2019-04-12 百度在线网络技术(北京)有限公司 视频抽帧方法、装置、设备和介质
CN109788334A (zh) * 2019-01-31 2019-05-21 北京字节跳动网络技术有限公司 弹幕处理方法、装置、电子设备及计算机可读存储介质
WO2020156035A1 (zh) * 2019-01-31 2020-08-06 北京字节跳动网络技术有限公司 弹幕处理方法、装置、电子设备及计算机可读存储介质、以及图像处理方法、装置、电子设备及计算机可读存储介质
CN109978971A (zh) * 2019-03-29 2019-07-05 深圳市万普拉斯科技有限公司 Ui绘图方法、装置和移动终端
CN110012338A (zh) * 2019-04-10 2019-07-12 广州虎牙信息科技有限公司 一种显示弹幕数据的方法、装置、计算机设备和存储介质
CN112637691B (zh) * 2019-09-24 2022-03-01 广州虎牙科技有限公司 弹幕隔离方法、装置和系统
CN112637691A (zh) * 2019-09-24 2021-04-09 广州虎牙科技有限公司 弹幕隔离方法、装置和系统
CN110764766A (zh) * 2019-10-15 2020-02-07 成都四方伟业软件股份有限公司 一种光圈效果实现方法及装置
CN112752131A (zh) * 2019-10-30 2021-05-04 腾讯科技(深圳)有限公司 弹幕信息的显示方法和装置、存储介质及电子装置
CN110837589A (zh) * 2019-11-08 2020-02-25 北京字节跳动网络技术有限公司 一种信息展示方法及装置
CN110930496A (zh) * 2019-11-19 2020-03-27 北京达佳互联信息技术有限公司 视图绘制方法、装置、电子设备和存储介质
CN111083551A (zh) * 2019-12-17 2020-04-28 腾讯科技(深圳)有限公司 弹幕渲染方法、装置、计算机可读存储介质和计算机设备
CN111131910A (zh) * 2020-01-02 2020-05-08 广州虎牙科技有限公司 弹幕实现方法、装置、电子设备和可读存储介质
CN111405342B (zh) * 2020-03-17 2021-05-07 北京字节跳动网络技术有限公司 富文本消息显示方法、装置、系统、介质和电子设备
CN111405342A (zh) * 2020-03-17 2020-07-10 北京字节跳动网络技术有限公司 富文本消息显示方法、装置、系统、介质和电子设备
CN112565824A (zh) * 2020-12-03 2021-03-26 腾讯科技(深圳)有限公司 一种生成弹幕的方法、装置、终端及存储介质
CN112866787A (zh) * 2021-04-12 2021-05-28 上海哔哩哔哩科技有限公司 弹幕设置方法、装置及系统

Also Published As

Publication number Publication date
WO2017113856A1 (zh) 2017-07-06

Similar Documents

Publication Publication Date Title
CN105872679A (zh) 弹幕显示方法和装置
US8739070B2 (en) System, method and apparatus for providing an application carousel
TW202141300A (zh) 頁面處理方法、裝置、設備及儲存媒體
CN106201241A (zh) 终端屏幕的分屏显示方法、装置及终端
US11222171B2 (en) Enhanced pivot table creation and interaction
CN110166810A (zh) 视频渲染引擎切换方法、装置、设备及可读存储介质
US20230306694A1 (en) Ranking list information display method and apparatus, and electronic device and storage medium
CN110569096B (zh) 去代码化制作人机交互界面的系统、方法、介质及设备
JP2014504417A (ja) 没入型環境の管理
CN112445564B (zh) 界面显示方法及电子设备、计算机可读存储介质
CN105915993B (zh) 利用寄生工具包实现的视频播放模式设置方法及装置
US11185758B2 (en) Game console application with action cards
US20200159549A1 (en) Replaying interactions with a graphical user interface (gui) presented in a video stream of the gui
CN114679628B (zh) 一种弹幕添加方法、装置、电子设备和存储介质
CN111432264A (zh) 基于媒体信息流的内容展示方法、装置、设备及存储介质
WO2020186837A1 (zh) 文本动画控制方法和装置、存储介质和处理器
US20140259083A1 (en) System and method for use in enhancing the display of multimedia content
CN112445501A (zh) 数据烧录方法及设备、计算机可读存储介质
CN112417346A (zh) 渲染方法、装置、电子设备及存储介质
CN112581589A (zh) 一种视图列表布局方法、装置、设备及存储介质
CN111934985A (zh) 媒体内容的分享方法、装置、设备及计算机可读存储介质
CN115617441A (zh) 绑定模型和图元的方法、装置、存储介质及计算机设备
CN108255568B (zh) 一种终端界面显示方法及装置、终端、存储介质
CN107864409B (zh) 一种弹幕显示方法、装置以及计算机可读存储介质
CN111292392A (zh) 基于unity的图像显示方法、装置、设备及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160817

WD01 Invention patent application deemed withdrawn after publication