CN109348252B - 视频播放方法、视频传输方法、装置、设备及存储介质 - Google Patents
视频播放方法、视频传输方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN109348252B CN109348252B CN201811295569.XA CN201811295569A CN109348252B CN 109348252 B CN109348252 B CN 109348252B CN 201811295569 A CN201811295569 A CN 201811295569A CN 109348252 B CN109348252 B CN 109348252B
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- bullet screen
- image frame
- video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 230000005540 biological transmission Effects 0.000 title claims abstract description 43
- 238000003860 storage Methods 0.000 title claims abstract description 33
- 238000004422 calculation algorithm Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 16
- 239000000284 extract Substances 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 9
- 238000004364 calculation method Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 25
- 230000006835 compression Effects 0.000 description 14
- 238000007906 compression Methods 0.000 description 14
- 230000002093 peripheral effect Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000005538 encapsulation Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000004984 smart glass Substances 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26241—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation 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/4316—Generation 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 displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请是关于一种视频播放方法、视频传输方法、装置、设备及存储介质。该视频播放方法包括:接收服务器发送的视频数据;提取视频数据中的自定义帧,自定义帧包含有弹幕数据;根据图像弹幕位置关系确定与自定义帧相对应的目标图像帧;从自定义帧中获取弹幕数据;在播放目标图像帧时,在目标图像帧上层叠加显示弹幕数据的弹幕内容。本申请所示的方案在显示弹幕数据时,弹幕数据与对应的图像帧之间不需要通过时间戳进行对齐,而是通过图像帧和对应的弹幕在视频数据中的位置进行关联,从而避免因根据时间戳计算视频播放进度的准确性不高而导致弹幕数据在不同用户终端中的显示时机不统一的情况,提高视频播放过程中的弹幕显示效果。
Description
技术领域
本申请涉及互联网应用技术领域,特别涉及一种视频播放方法、视频传输方法、装置、设备及存储介质。
背景技术
随着移动互联网的不断发展,视频播放类的应用也越来越广泛,在视频播放的画面中插入弹幕也已经成为提高用户互动体验的重要手段。
在相关技术中,用户终端通过两个传输通道分别从服务器获取视频的视频数据和弹幕数据,其中视频数据中的每个图像帧以及每条弹幕数据具有各自的时间戳;在播放该视频时,用户终端根据视频数据的时间戳计算视频的当前播放进度,并根据弹幕数据的时间戳,将与当前播放进度相匹配的弹幕数据所对应的弹幕内容显示在播放界面中。
然而,相关技术中时间戳的使用并没有公开性的标准规范,因此视频的播放进度的准确性不高,导致弹幕数据在不同用户终端中的显示时机不统一,从而影响视频播放过程中的弹幕显示效果。
发明内容
本申请实施例提供了一种视频播放方法、视频传输方法、装置、设备及存储介质,可以用于提高视频播放过程中的弹幕显示效果,该技术方案如下:
一方面,提供了一种视频播放方法,所述方法包括:
服务器获取目标图像帧对应的弹幕数据,所述目标图像帧是视频数据中的图像帧;
所述服务器生成包含所述弹幕数据的自定义帧,所述自定义帧符合所述视频数据的视频编码标准;
所述服务器根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,所述图像弹幕位置关系用于指示图像帧与对应的弹幕在所述视频数据中的位置关系;
所述服务器将插入所述自定义帧之后的所述视频数据传输给用户终端;
所述用户终端提取所述自定义帧;
所述用户终端根据所述图像弹幕位置关系确定与所述自定义帧相对应的所述目标图像帧;
所述用户终端从所述自定义帧中获取所述弹幕数据;
所述用户终端在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
另一方面,提供了一种视频播放方法,所述方法由用户终端执行,所述方法包括:
接收服务器发送的视频数据;
提取所述视频数据中的自定义帧,所述自定义帧包含有弹幕数据;
根据图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,所述图像弹幕位置关系用于指示图像帧与对应的弹幕在所述视频数据中的位置关系;
从所述自定义帧中获取所述目标图像帧对应的弹幕数据;
在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
又一方面,提供了视频传输方法,所述方法由服务器执行,所述方法包括:
获取目标图像帧对应的弹幕数据,所述目标图像帧是视频数据中的任意图像帧;
生成包含所述弹幕数据的自定义帧,所述自定义帧符合所述视频数据的视频编码标准;
根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,所述图像弹幕位置关系用于指示图像帧与对应的弹幕在所述视频数据中的位置关系;
将插入所述自定义帧之后的所述视频数据传输给用户终端,以便所述用户终端根据所述图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,并在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
再一方面,提供了一种视频播放装置,所述装置设置在用户终端中,所述装置包括:
视频数据接收模块,用于接收服务器发送的视频数据;
帧提取模块,用于提取所述视频数据中的自定义帧,所述自定义帧包含有弹幕数据;
图像帧确定模块,用于根据图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,所述图像弹幕位置关系用于指示图像帧与对应的弹幕在所述视频数据中的位置关系;
弹幕获取模块,用于从所述自定义帧中获取所述弹幕数据;
弹幕显示模块,用于在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
再一方面,提供了一种视频传输装置,所述装置设置在服务器中,所述装置包括:
弹幕获取模块,用于获取目标图像帧对应的弹幕数据,所述目标图像帧是视频数据中的任意图像帧;
帧生成模块,用于生成包含所述弹幕数据的自定义帧,所述自定义帧符合所述视频数据的视频编码标准;
帧插入模块,用于根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,所述图像弹幕位置关系用于指示图像帧与对应的弹幕在所述视频数据中的位置关系;
数据传输模块,用于将插入所述自定义帧之后的所述视频数据传输给用户终端。
再一方面,提供了一种视频播放系统,所述系统包括用户终端和服务器;
所述用户终端包含如上所述的视频播放装置;
所述服务器包含如上所述的视频传输装置。
再一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述由用户终端执行的视频播放方法。
再一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述由服务器执行的视频传输方法。
又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述由用户终端执行的视频播放方法。
又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述由服务器执行的视频传输方法。
本申请提供的技术方案可以包括以下有益效果:
通过本申请所示的方案,在显示弹幕数据时,弹幕数据与对应的图像帧之间不需要通过时间戳进行对齐,而是通过图像帧和对应的弹幕在视频数据中的位置关系进行关联,从而避免因根据时间戳计算视频播放进度的准确性不高而导致弹幕数据在不同用户终端中的显示时机不统一的情况,提高视频播放过程中的弹幕显示效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种视频播放系统的结构示意图;
图2是图1所示实施例涉及的一种弹幕显示示意图;
图3是相关技术涉及的一种用户终端中的弹幕视频播放流程示意图;
图4是根据一示例性实施例示出的一种视频播放流程的示意图;
图5是图4所示实施例涉及的一种插入自定义帧后的视频数据构成示意图;
图6是根据一示例性实施例提供的一种视频传输及播放方法的方法流程图;
图7是图6所示实施例涉及的一种帧头部结构示意图;
图8是图6所示实施例涉及的帧类型对应关系图;
图9是图6所示实施例涉及的一种NAL帧组装示意图;
图10是图6所示实施例涉及的视频数据处理流程示意图;
图11是图6所示实施例涉及的视频播放流程示意图;
图12是根据一示例性实施例示出的视频播放装置的结构方框图;
图13是根据一示例性实施例示出的视频传输装置的结构方框图;
图14是根据一示例性实施例示出的一种计算机设备的结构框图;
图15是根据一示例性实施例示出的一种用户终端的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在对本申请所示的各个实施例进行说明之前,首先对本申请涉及到的几个概念进行介绍:
1)弹幕
在本申请各个实施例中,弹幕是指在视频播放画面上层叠加显示的评论,因大量评论从屏幕中飘过时的效果看上去像是飞行射击游戏中的弹幕而得名。
视频中的弹幕可以给观众一种“实时互动”的感觉,虽然不同弹幕的发送时间有所区别,但是其只会在视频中特定的一个时间点或者时间段出现,因此在相同时刻发送的弹幕通常也具有相同的主题,在参与评论时就会有与其他观众同时评论的感觉。因此,在线视频服务场景下,弹幕功能在传统的观影体验之外,为用户提供了额外的影片评论渠道,作为在线模式下的视频社交形式在年轻用户群(例如:动漫用户、二次元用户)中有着非常重要的地位。
弹幕通常以文字或者富文本为主要信息载体,即在视频播放画面上层叠加显示的评论为文本或者富文本格式的评论。
可选的,弹幕的信息载体还包括且不限于语音以及图像等等,即在视频播放画面上层叠加显示的评论为语音或者图像格式的评论。
2)弹幕数据
弹幕数据是指用于指示在视频播放画面上层叠加显示弹幕内容的数据。
在本申请各个实施例中,弹幕数据包括但不限于弹幕的内容数据、弹幕的格式数据以及弹幕在视频播放画面中的显示位置数据。
可选的,弹幕的内容数据包括弹幕的文本、富文本、音频或者图像等;弹幕的格式数据包括文本或富文本的字体、字号以及颜色,音频的音量大小以及图像的尺寸等;显示位置数据包括弹幕的文本、富文本、音频或者图像在视频播放画面中的像素坐标等。
图1是根据一示例性实施例示出的一种视频播放系统的结构示意图。该系统包括:服务器120以及若干个用户终端140。
服务器120是一台服务器,或者包括若干台服务器,或者是一个虚拟化平台,或者是一个云计算服务中心等,本申请不做限制。
用户终端140可以是具有视频播放功能的终端设备,比如,用户终端可以是手机、平板电脑、电子书阅读器、智能眼镜、智能手表、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
用户终端140与服务器120之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
在本申请实施例中,服务器120可以将视频数据发送给用户终端140,由用户终端140根据视频数据进行视频播放。
可选的,上述视频数据可以是视频文件数据,或者,上述视频数据可以是视频流数据。
可选的,上述视频数据可以是视频直播数据,或者,上述视频数据可以是非视频直播数据等,本申请不做限制。
可选的,当上述视频数据为视频直播数据时,上述视频播放系统还可以包含直播录制终端160。
直播录制终端160可以是手机、平板电脑、电子书阅读器、智能眼镜、智能手表、MP3/MP4播放器、膝上型便携计算机和台式计算机等等。
直播录制终端160对应有图像采集组件和音频采集组件。其中,该图像采集组件和音频采集组件可以是直播录制终端160的一部分,比如,该图像采集组件和音频采集组件可以是直播录制终端160内置的摄像头和内置的麦克风;或者,该图像采集组件和音频采集组件也可以作为直播录制终端160的外设设备与该用户终端160相连接,比如,该图像采集组件和音频采集组件可以分别是连接该直播录制终端160的摄像机和话筒;或者,该图像采集组件和音频采集组件也可以部分内置于直播录制终端160,部分作为直播录制终端160的外设设备,比如,该图像采集组件可以是直播录制终端160内置的摄像头,该音频采集组件可以是连接该直播录制终端160的耳机中的麦克风。本申请实施例对于图像采集组件和音频采集组件的实现形式不做限定。
在本申请实施例中,直播录制终端160可以将在本地录制的直播视频流上传至服务器120,并由服务器120对直播视频流进行转码等相关处理后推送给用户终端140。
在一种可能的实现方式中,上述直播录制终端160中可以安装有直播应用程序(Application,APP)客户端,服务器120可以是上述直播应用程序对应的直播服务器。
在直播时,直播录制终端运行直播应用程序的客户端,用户A(也可以称为主播)在直播应用程序界面中触发启动直播功能后,直播应用程序的客户端调用直播录制终端中的图像采集组件和音频采集组件来录制直播视频流(即上述视频数据),并将录制的直播视频流上传至直播服务器,直播服务器接收该直播视频流,并为该直播视频流建立直播频道,用户终端对应的用户可以通过用户终端中安装的直播应用程序客户端或者浏览器客户端访问直播服务器,并在访问页面中选择该直播频道后,直播服务器将该直播视频流推送给用户终端,由用户终端在直播应用程序界面或者浏览器界面中播放该直播视频流。
可选的,该系统还可以包括管理设备(图1未示出),该管理设备与服务器120之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
在本申请实施例中,服务器120向用户终端140发送视频数据时,可以同时向用户终端发送视频数据中各个图像帧对应的弹幕数据,用户终端140接收在播放视频数据中的各个图像帧时,在当前播放画面上层叠加显示对应的弹幕数据的内容。
比如,请参考图2,其示出了本申请实施例涉及的一种弹幕显示示意图。如图2所示,用户终端200的屏幕中当前正在播放一个图像帧的播放画面210,在该播放画面210上层叠加显示有该图像帧对应的弹幕内容220。可选的,在一段连续的图像帧对应的播放画面中,同一条弹幕内容在各个播放画面中的位置不同,或者,同一条弹幕内容在各个播放画面中的位置相同。
其中,一条弹幕由播放视频数据的某一个用户终端发送给服务器,由服务器将该条弹幕的弹幕数据发送给播放该视频数据的各个用户终端(包括发送该条弹幕的用户终端)。请参考图3,其示出了相关技术涉及的一种用户终端中的弹幕视频播放流程示意图。如图3所示,该弹幕视频传输及播放流程如下:
S301,获取视频文件。用户终端可以连接视频文件后台(比如服务器),并以流式传输视频数据。
S302,媒体文件格式解析。用户终端将通过网络传输得到的视频数据流解析并分离为视频压缩码流、音频压缩码流等。这里的解析可以包括按照网络传输协议解析得到视频数据,并按照目标封装格式将视频数据解析为视频压缩码流、音频压缩码流等。
S303,视频解码。用户终端将得到的视频压缩码流解码成原始图像数据,比如YUV、RGB等形式的原始数据(Raw Data)。
S304,图像渲染。用户终端将原始图像数据通过外设(比如显示屏幕)进行显示。
S305,音频解码。用户终端将得到的音频压缩码流解码成原始声音数据。
S306,声音渲染。用户终端将原始声音数据通过外设(比如扬声器或者耳机)进行播放。
S307,获取弹幕数据流。用户终端连接弹幕数据后台,并以流式获取弹幕数据。
S308,弹幕协议格式解析。用户终端将通过网络传输得到的弹幕数据流解析获得弹幕数据。在相关技术中,弹幕数据组织和传输的信息可以包括:文本字符串或者富文本型的数据(即弹幕内容),如少量的语言压缩码流数据,以及辅助弹幕显示的信息,如文本展示的字体、大小、在屏幕中的位置,以及该条弹幕出现的时间戳等。
S309,时间轴同步控制。终端匹配S303(或者S305)与S308输出的时间戳信息,以使得特定的弹幕数据与视频播放进度符合客观逻辑关系。
S310,弹幕展示。终端将弹幕所含文本或者富文本等信息,按照指定的字体、颜色、位置等辅助信息展示在播放屏幕上。
在上述图3所述的相关技术方案中,S309同步控制过程,依赖S303(或者S305)中对视频或者音频帧时间戳的计算输出,而时间戳信息往往并非视频编码器直接产生而是由业务方产生,进一步地,对时间戳的使用目前业界尚无公开性标准规范,其计算精度通常不高,当时间戳计算的错误或者不准确时,可能会导致弹幕和图像(或者声音)的对应关系出现错位。
此外,S307获取的弹幕数据需要独立的弹幕数据传输与获取通道,当该通道发生故障时,例如,弹幕数据服务器不可用时,会导致当前观看的视频无弹幕可用。并且获取弹幕数据需要网络连接,而很多视频服务商都提供了视频数据下载后离线观看的功能,当用户在没有网络连接的场景下观看视频时,由于无法连接弹幕服务器,也会导致无弹幕可用。
另外,相关技术中弹幕数据通常与用户账户简单绑定,而用户账户存在可多处登录以及易伪造等特点,通常无法准确的确定弹幕数据的实际发送者。
针对上述相关技术中的弹幕视频播放方法所存在的缺点和不足,请参考图4,其是根据一示例性实施例示出的一种视频播放流程的示意图。该方法可以由图1所示的实施例中的服务器和用户终端执行。如图4所示,该视频播放流程可以包括如下步骤:
步骤41,服务器获取目标图像帧对应的弹幕数据,该目标图像帧是视频数据中的图像帧。
可选的,用户终端在播放视频数据时,用户通过用户终端编辑弹幕,点击发送后,用户终端向服务器发送弹幕发布请求,该弹幕发布请求中包含弹幕的内容数据(包括文本、富文本、音频或者图像等)、格式数据、显示位置数据、显示方式数据(比如固定显示或者移动显示等)以及显示时间数据等信息。
服务器接收到该弹幕发布请求后,从弹幕发布请求中获取弹幕的显示时间信息,根据该显示时间信息确定弹幕对应的图像帧,比如,服务器获取弹幕的显示时间中的起始时间和结束时间,并将起始时间对应的图像帧和结束时间对应的图像帧之间的各个图像帧确定为该弹幕对应的图像帧。后续服务器向终端发送视频数据时,对于视频数据中目标图像帧,可以根据预先确定的各条弹幕对应的图像帧,获取该目标图像帧对应的弹幕数据。
步骤42,服务器生成包含该弹幕数据的自定义帧,该自定义帧符合该视频数据的视频编码标准。
在本步骤中,服务器将步骤41得到的弹幕数据封装为符合视频编码标准码流的帧结构,使其输出比特流能够与图像帧数据直接拼接后形成规范的视频码流以存储、传输以及解码回放。
步骤43,服务器根据该目标图像帧在该视频数据中的位置以及图像弹幕位置关系,将该自定义帧插入该视频数据。
其中,上述图像弹幕位置关系用于指示图像帧与对应的弹幕在视频数据中的位置关系。
在本申请实施例中,服务器根据目标图像帧在视频数据中的位置以及预先定义的图像弹幕位置关系,将携带该目标图像帧的弹幕数据的自定义帧插入视频数据中对应的位置,通过在视频数据中的位置对应关系来关联视频数据中的图像帧和对应的弹幕数据。
比如,请参考图5,其示出了本申请实施例涉及的一种插入自定义帧后的视频数据构成示意图,在视频数据中,包含图像帧51和图像帧52,以及图像帧51对应的自定义帧51a,以及图像帧52对应的自定义帧52a,其中,图像帧51和自定义帧51a在视频数据中的位置对应,而图像帧52和自定义帧52a在视频数据中的位置对应。
步骤44,服务器将插入该自定义帧之后的该视频数据传输给用户终端。
在本申请实施例中,由于自定义帧也满足视频编码标准,因此,插入自定义帧之后的视频数据可以按照该视频编码标准进行压缩编码,获得视频码流,并以流式传输给用户终端。
步骤45,用户终端提取该自定义帧,根据图像弹幕位置关系确定与该自定义帧相对应的目标图像帧。
用户终端接收到服务器发送的视频码流后,对视频码流进行解码获得视频数据,进一步的,对于视频数据中的自定义帧,用户终端根据自定义帧在视频数据中的位置,以及预先定义的图像弹幕位置关系,从视频数据中确定该自定义帧中包含的弹幕数据所对应的目标图像帧。
步骤46,用户终端从该自定义帧中获取该弹幕数据。
可选的,用户终端按照服务器将弹幕数据封装为自定义帧的封装方式,对获取到的自定义帧进行解封装,获得自定义帧中的弹幕数据。
步骤47,用户终端在播放该目标图像帧时,在该目标图像帧上层叠加显示该弹幕数据的弹幕内容。
在本申请实施例中,弹幕数据与对应的目标图像帧直接绑定,用户终端在播放目标图像帧的同时,在播放画面的上层叠加显示目标图像帧对应的弹幕数据的弹幕内容,其中,在显示弹幕数据时,弹幕数据与对应的图像帧之间不需要通过时间戳进行对齐,而是通过图像帧和弹幕数据所在的自定义帧在视频数据中的位置进行关联,从而避免因根据时间戳计算播放进度出错而导致弹幕数据在不同用户终端中的显示时机不统一的情况,提高视频播放过程中的弹幕显示效果。
另外,本申请实施例中,服务器将弹幕数据封装为满足视频编码格式的自定义帧,并将自定义帧插入视频数据进行传输,不需要额外为弹幕数据设置传输通道,提高弹幕数据传输的稳定性,同时满足视频数据的离线播放时正常显示弹幕的需求。
请参考图6,其是根据一示例性实施例提供的一种视频传输及播放方法的方法流程图。该视频传输及播放方法可以由图1所示的系统中的服务器和用户终端执行,如图6所示,该视频传输及播放方法可以包括如下步骤:
步骤601,服务器获取目标图像帧对应的弹幕数据,该目标图像帧是视频数据中的图像帧。
可选的,用户通过用户终端编辑并发布弹幕的具体方式包括但不仅限于以下方式中的至少一种:
用户通过用户终端中的虚拟键盘或者用户终端外接的实体键盘输入文字信息;用户通过用户终端中的声音采集组件(比如麦克风)输入语音信息;用户通过用户终端中的图像采集组件(比如内置或外接摄像头)采集图像信息;以及,用户通过读取操作选择用户终端中预先存储的文本信息、语音信息或者图像信息等。
其中,本申请实施例对于弹幕数据的弹幕内容的具体表现形式不做限定。
步骤602,服务器生成包含该弹幕数据的自定义帧,该自定义帧符合该视频数据的视频编码标准。
在本步骤中,服务器将得到的弹幕数据封装为符合视频编码标准码流的帧结构时,可以生成包含帧头部和帧主体的自定义帧,其中,帧头部包含弹幕帧指示标识,帧主体包含弹幕数据;其中,上述弹幕帧指示标识用于指示对应帧中包含弹幕;上述弹幕数据包括弹幕内容、弹幕内容的显示格式以及弹幕内容的显示位置。
在本申请实施例中,为了便于后续用户终端解析时,能够快速提取插入视频数据中的,包含弹幕数据的自定义帧,服务器在生成包含弹幕数据的自定义帧时,在自定义帧的帧头部中携带弹幕帧指示标识,用于指示当前帧是用于携带弹幕数据的帧。
比如,以业界应用较为广泛的H.264/高级视频编码(Advanced Video Coding,AVC)标准为例,其码流组织结构的基本单元为网络抽象层(Network Abstract Layer,NAL)帧,也称为NAL单元,在每一个NAL帧的头部有类型字段,以标记该帧的类型以供解码器正确使用。
比如,请参考图7,其示出了本申请实施例涉及的一种帧头部结构示意图。如图7所示,H.264标准中的NAL帧的帧头部的长度固定为1字节(Byte),即8比特(bit)。这8个bit的含义分别如下:
禁用比特位:禁用比特位是每一个NAL帧的帧头部的第一个bit,规定必须为0。
优先级指示位:每一个NAL帧的帧头部的第2和3位是优先级指示位,主要表示NAL帧的优先级。当该值为正时,表示当前NAL帧中包含了重要数据。
类型指示位:每一个NAL帧的帧头部的后5个比特是类型指示位,表示NAL帧的类型。请参考图8,其示出了本申请实施例涉及的帧类型对应关系图。如图8所示,H.264/AVC标准定义的NAL帧的类型包含32种,分别对应数值0~31,其中,数值0为未使用的类型数值,数值1表示对应的NAL帧是不分区的非即时解码刷新(Instantaneous Decoding Refresh,IDR)图像帧的分片,数值2至4分别表示对应的NAL帧的类型是片分区A、片分区B和片分区C,数值5表示对应的NAL帧是IDR图像帧的分片,数值6表示对应的NAL帧携带补充增强信息(Supplemental enhancement information,SEI),数值7表示对应的NAL帧携带序列参数集,数值8表示对应的NAL帧携带图像参数集,数值9表示对应的NAL帧携带分节符,数值10表示对应的NAL帧是序列结束帧,数值11表示对应的NAL帧是码流结束帧,数值12表示对应的NAL帧是填充帧,数值13至数值23是标准保留类型,数值24至数值31是标准未使用的类型。
在本申请实施例可以将图8中标准未使用的数值24~31中的某个类型值,如24,用于指示为该NAL帧为弹幕数据帧(即携带弹幕数据的帧)。
由于对弹幕数据的封装符合H.264/AVC定义的NAL数据帧结构,且使用了未占用的类型值作标记,因此这样产生的包含弹幕数据的自定义帧既完全兼容现有视频标准,同时也不会被错误混淆使用而造成音视频数据的解码错误。
步骤603,服务器获取该弹幕数据对应的用户特征信息。
在本申请实施例中,用户特征信息用于唯一标识发布弹幕数据的用户终端,其包括但不仅限于以下几种信息中的至少一种:
用户终端的国际移动设备识别码(International Mobile Equipment Identity,IMEI)/移动设备识别码(Mobile Equipment Identifier,MEID)、制造商标识、操作系统版本号、网协(Internet Protocol,IP)地址、介质访问控制层(Media Access Control,MAC)地址等。
步骤604,服务器根据该用户特征信息生成该弹幕数据的数字水印。
可选的,在根据该用户特征信息生成该弹幕数据的数字水印时,服务器通过第一水印生成算法对该用户特征信息进行处理,获得该数字水印。
即在一种可能的实现方式中,服务器可以只根据用户特征信息来生成数字水印。
可选的,在根据该用户特征信息生成该弹幕数据的数字水印时,服务器通过第二水印生成算法对该用户特征信息以及附加信息进行处理,获得该数字水印,该附加信息包括该弹幕数据以及该目标图像帧中的至少一种。
即在另一种可能的实现方式中,服务器在生成数字水印时,除了考虑用户特征信息之外,还综合考虑弹幕数据和/或目标图像帧,以提高数字水印的准确性。
其中,水印生成算法有多种,比如空域算法、变换域算法、压缩域算法等等,本申请实施例对于采用的数字水印算法不做限定。
由于图像压缩对于水印信号的传输而言也可视为一种信道噪声或者安全攻击,因此,水印生成算法的选择和实施倾向于抗压缩攻击的算法种类,可选的,本申请实施例可以采用基于扩频通信理论的水印生成算法生成弹幕数据的数字水印。
由于数字水印技术可以实现单向性且不可伪造的技术目标,因此,通过上述步骤,根据用户特征信息、弹幕数据以及目标图像帧的数据生成的数字水印,能够实现就地式的弹幕发布者身份标识。
其中,上述步骤603和步骤604可以在步骤602之前执行,也可以与步骤602同步执行,或者,也可以在步骤602之后执行,本申请实施例对于步骤603和步骤604与步骤602之间的执行顺序不做限定。
步骤605,服务器将该弹幕数据的数字水印对应该弹幕数据添加入该自定义帧。
在本申请实施例中,服务器将数字水印和弹幕数据对应添加入生成的自定义帧中。或者,也可以说,服务器生成包含上述弹幕数据以及弹幕数据对应的数字水印的自定义帧。
其中,上述弹幕数据和数字水印之间可以通过标识进行对应,比如,弹幕数据和数字水印通过弹幕数据的标识进行对应。
或者,上述弹幕数据和数字水印之间也可以通过位置关系进行对应,比如,一条弹幕数据对应的数字水印,在自定义帧中紧接在该弹幕数据之后。
步骤606,服务器根据该目标图像帧在该视频数据中的位置以及图像弹幕位置关系,将该自定义帧插入该视频数据。
在本申请实施例中,包含目标图像帧的弹幕数据的自定义帧,与目标图像帧,在视频数据中的位置满足预定的关系,即当解析到视频数据中的某一个自定义帧时,即可以获知该自定义帧对应的目标图像帧在视频数据中的位置。
可选的,在本申请实施例中,在将该自定义帧插入该视频数据时,服务器将该自定义帧插入该目标图像帧之后的第i个图像帧与该第i个图像帧的前一图像帧之间,i为大于或者等于1的整数;或者,在将该自定义帧插入该视频数据时,服务器将该自定义帧插入该目标图像帧之前的第j个图像帧与该第j个图像帧的后一图像帧之间,j为大于或者等于1的整数。
比如,以上述i的数值是1为例,第i个图像帧的前一图像帧就是目标图像帧本身,也就是说,目标图像帧对应的自定义帧插入在目标图像帧与目标图像帧的后一个图像帧之间。请参考图9,其示出了本申请实施例涉及的一种NAL帧组装示意图。如图9所示,NAL帧901、NAL帧903和NAL帧905为对应有弹幕数据的图像帧,NAL帧902是NAL帧901的下一图像帧,NAL帧904是NAL帧903的下一图像帧,NAL帧906是NAL帧905的下一图像帧,NAL帧901a是承载NAL帧901对应的弹幕数据的自定义帧,NAL帧903a是承载NAL帧903对应的弹幕数据的自定义帧,NAL帧905a是承载NAL帧905对应的弹幕数据的自定义帧,其中,NAL帧901a位于载NAL帧901和NAL帧902之间,NAL帧903a位于载NAL帧903和NAL帧904之间,NAL帧905a位于载NAL帧905和NAL帧906之间。
步骤607,服务器将插入该自定义帧之后的该视频数据传输给用户终端,用户终端接收插入自定义帧之后的视频数据。
请参考图10,其示出了本申请实施例涉及的视频数据处理流程示意图,如图10所示,服务器对视频数据进行弹幕数据添加和编码传输的过程可以如下:
S1001,弹幕数据获取。服务器可以采集用户编辑发布的弹幕内容,其形式包括但不仅限于文字信息、语音信息、以及图像信息等。
S1002,自定义帧生成。服务器将S1001得到的弹幕数据封装为符合业界公开视频编码标准码流结构,使其输出比特流能够与图像编码数据直接拼接后形成规范的视频码流以存储、传输和解码回放。
S1003,图像数据获取。服务器获取连续的图像数据,其形式可以为YUV、RGB等形式的原始数据,图像采集的分辨率、帧率等配置信息根据业务可灵活定义。
S1004,数字水印生成。服务器基于用户特征信息,可选还包括弹幕数据以及弹幕数据对应的图像帧数据来生成数字水印数据。
S1005,视频编码。服务器将原始图像信息进行信号压缩以节省存储空间,常见的视频/图像压缩算法/标准如:MPEG-2、H.264/AVC、高效率视频编码(High EfficiencyVideo Coding,HEVC)、VP9、信源编码标准(Audio Video coding Standard,AVS)2等。
通过该步骤,将步骤S1002的输出与图像编码数据直接组装,且直接拼接在弹幕发送时刻的图像帧(即目标图像帧)之后,这样弹幕与图像内容的关联直接由码流中的顺序决定,而不必再依赖图像时间戳和弹幕时间戳的计算匹配。
S1006,音频数据获取。服务器可以从麦克风等外设或者原始录音文件中获取连续的音频数据,其形式一般为PCM的原始数据,其采样位、采样率、通道数及布局配置等参数信息根据业务可灵活定义。
S1007,音频编码。服务器将S1006输出信息进行信号压缩以节省存储空间,常见的语音/音频压缩算法/标准如:G.72x、MP3、高级音频编码(Advanced Audio Coding,AAC)、自适应多速率窄带语音编码(Adaptive Multi Rate-Narrow Band Speech Codec,AMR-NB)/自适应多速率窄带语音编码(Adaptive Multi Rate-Wide Band Speech Codec,AMR-WB)等。
S1008,媒体文件格式合流。服务器将压缩后的音视频数据按照一定封装格式要求合流为媒体文件(如:MP4、FLV、MPEG TS等),并且进一步地按照流媒体应用协议进行组织管理,比如:按照HTTP直播流(HTTP Live Streaming,HLS)协议对生成好的MPEG TS媒体文件进行切片、并生成供后续使用的标签索引文件(.M3U8)。
步骤608,用户终端提取视频数据中包含有弹幕数据的自定义帧。
可选的,在提取自定义帧时,服务器将视频数据中帧头部包含弹幕帧指示标识的至少一帧提取为该自定义帧;该弹幕帧指示标识用于指示对应帧中包含弹幕。
由于视频数据中的自定义帧可能并不是都用于携带弹幕数据,因此,在本申请实施例中,用户终端在提取携带弹幕数据的自定义帧(即弹幕数据帧)时,可以解析各个帧的帧头部,并将帧头部携带弹幕帧指示标识的帧提取为携带弹幕数据的自定义帧。
步骤609,用户终端根据图像弹幕位置关系确定与自定义帧相对应的目标图像帧。
在本申请实施例中,由于视频数据中的目标图像帧以及携带该目标图像帧的弹幕数据的自定义帧在视频数据中位置对应,因此,在解码目标图像帧时,用户终端可以根据自定义帧的位置,从视频数据中确定对应的目标图像帧。
可选的,在确定与自定义帧相对应的目标图像帧时,用户终端将处于该自定义帧之前的第i个图像帧确定为该目标图像帧,i为大于或者等于1的整数;或者,在确定与自定义帧相对应的目标图像帧时,用户终端将处于该自定义帧之后的第j个图像帧确定为该目标图像帧,j为大于或者等于1的整数。
比如,以i的数值是1为例,当用户终端从视频数据中解析出一个包含弹幕数据的自定义帧时,即可以确定该自定义帧的前一个图像帧是与该自定义帧相对应的目标图像帧。
步骤610,用户终端从该自定义帧中获取该弹幕数据。
可选的,用户终端按照服务器将弹幕数据封装为自定义帧的封装方式,对获取到的自定义帧进行解封装,获得自定义帧中的弹幕数据。
步骤611,用户终端在播放该目标图像帧时,在该目标图像帧上层叠加显示该弹幕数据的弹幕内容。
在本申请实施例中,用户终端在播放视频的过程中,当播放到目标图像帧对应的视频画面时,直接将该目标图像帧对应的弹幕数据的弹幕内容叠加显示在视频画面的上层,不需要通过时间戳来将视频画面与弹幕数据进行对齐。
可选的,用户终端在播放视频数据时,对于自定义帧中获取的弹幕数据,还可以从该自定义帧中获取该弹幕数据对应的数字水印;并对该数字水印进行解码,获得该弹幕数据对应的用户特征信息,并根据用户特征信息确定该弹幕数据的发送终端,以便对该弹幕数据的发送终端进行溯源。
请参考图11,其示出了本申请实施例涉及的视频播放流程示意图,如图11所示,用户终端对视频数据进行弹幕数据提取和播放的过程可以如下:
S1101,视频文件获取。该步骤如图3中的S301所述,本申请实施例不再赘述。
S1102,媒体文件格式解析。该步骤与图3中的S301相比,其特殊之处在于,还需要按照NAL类型值来提取出包含弹幕数据的自定义帧。
S1103,视频解码。该实施过程是为图10中的S1005的逆向运算过程,将得到的视频压缩码流解码成原始图像数据,其可以为YUV、RGB等形式的原始数据。与相关技术中的解码方案所不同的是,在本申请实施例中,视频图像解码过程中还包含对弹幕数据的数字水印的提取。
S1104,图像渲染。该实施过程如图3中的S304所述,本申请实施例不再赘述。
S1105,音频解码。该实施过程如图3中的S305所述,本申请实施例不再赘述。
S1106,声音渲染。该实施过程如图3中的S306所述,本申请实施例不再赘述。
S1107,自定义帧解码。该实施过程是为图10中的S1002的逆向运算过程,本申请实施例不再赘述。
S1108,弹幕协议格式解析。该实施过程如图3中的S308所述,本申请实施例不再赘述。
S1109,弹幕展示。该实施过程如图3中的S310所述,需要指出的是,相比于相关技术中的方案,本申请实施例所示的方案中的弹幕展示不再需要匹配时间戳,而完全依赖S1102输出的数据帧顺序,比如,若包含弹幕数据的自定义帧对应的目标图像帧是该弹幕数据的前一图像帧,则当输出为弹幕数据时,无需额外的判断,直接按照解析顺序展示即可。即弹幕展示时的时间正确性因为不再依赖时间戳的计算而明显提高,且与视频图像对应的精度,可以精细到每一帧。
S1110,水印信息提取。该实施过程是为图10中的S1004的逆向运算过程,本申请实施例不再赘述。
S1111,源头信息比对。该步骤将S1110输出进行水印校验,其校验方法可以有以下2类:
1)直接将S1110的输出(一般为二进制的比特流),按照预先定义的编码规则,如UTF8,进行字符提取与恢复,提取其中可能包含的用户特征信息等。
2)将S1110的输出与嵌入的数字水印计算相关性系数,当高于某个值时则判定为有效,否则认为无效。
通过本申请上述方案,无需额外的弹幕数据通道,即解决了当弹幕服务器不可用或者离线播放等特定场景下,无法使用弹幕功能的问题。并且,弹幕与图像的关联无需依赖时间戳信息,从而规避了时间戳错误时的错位问题,且大大提高弹幕与图像对应的精度。此外,通过数字水印将弹幕发送者信息与弹幕数据直接绑定,无需依赖额外的账户关系记录等,可实现直接快速的回溯机制。
在本申请实施例中,弹幕数据与对应的目标图像帧直接绑定,用户终端在播放目标图像帧的同时,在播放画面的上层叠加显示目标图像帧对应的弹幕数据的弹幕内容,其中,在显示弹幕数据时,弹幕数据与对应的图像帧之间不需要通过时间戳进行对齐,而是通过图像帧和弹幕数据所在的自定义帧在视频数据中的位置进行关联,从而避免因根据时间戳计算播放进度出错而导致弹幕数据在不同用户终端中的显示时机不统一的情况,提高视频播放过程中的弹幕显示效果。
另外,本申请实施例中,服务器将弹幕数据封装为满足视频编码格式的自定义帧,并将自定义帧插入视频数据进行传输,不需要额外为弹幕数据设置传输通道,提高弹幕数据传输的稳定性,同时满足视频数据的离线播放时正常显示弹幕的需求。
以视频移动端APP产品为例,本申请所示方案的应用场景可适用于任意在线视频节目播放,且上述技术方案的实施相比于相关技术中的方案,无需额外的用户交互操作,完全以用户无感知地方式进行。
本申请各个实施方案覆盖服务器端和播放端,前者负责视频媒体文件的产生,其重点之处在于将弹幕数据嵌入到文件(即视频数据)中、且基于数字水印技术实现弹幕源头的认证。播放端除了实现音视频解码和播放外,还负责从媒体文件中直接获取并解码出弹幕数据以作展示,同时还可以校验水印信息以达到溯源效果。其具体效果可以体现为以下几点:
1)弹幕数据无需额外存储,而直接跟随视频媒体文件;且由于其数据与图像编码数据在语法结构上完全分离,故弹幕的增加、删除和编辑亦无需触发视频内容的二次重编码或者转码。
2)弹幕的传输无需额外的通道,而直接复用视频文件传输通道,故在文件下载后、离线观看的场景下仍然有弹幕可用。
3)在线观看场景下,因为弹幕与视频内容的传输为同一通道,所以不会出现一方故障而无法使用的情况。
4)弹幕的展示时间无需额外的时间戳计算和比对,规避了视频时间戳计算错误或者丢失时造成的弹幕与图像关联错误的情况。
5)将基于用户特征信息与弹幕数据生成的数字水印嵌入在视频媒体文件中,可实现直接高效的弹幕发布回溯寻源。
图12是根据一示例性实施例示出的一种视频播放装置的结构方框图。该视频播放装置可以通过硬件或者软硬结合的方式设置在如图1所示系统中的用户终端中,以执行图4或图6所示实施例提供的方法中由用户终端执行的全部或者部分步骤。该视频播放装置可以包括:
视频数据接收模块1201,用于接收服务器发送的视频数据;
帧提取模块1202,用于提取所述视频数据中的自定义帧,所述自定义帧包含有弹幕数据;
图像帧确定模块1203,用于根据图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,所述图像弹幕位置关系用于指示图像帧与对应的弹幕在所述视频数据中的位置关系;
弹幕获取模块1204,用于从所述自定义帧中获取所述目标图像帧对应的弹幕数据;
弹幕显示模块1205,用于在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
可选的,所述图像帧确定模块1203,具体用于,
将处于所述自定义帧之前的第i个图像帧确定为所述目标图像帧,i为大于或者等于1的整数;
或者,
将处于所述自定义帧之后的第j个图像帧确定为所述目标图像帧,j为大于或者等于1的整数。
可选的,所述帧提取模块1202,具体用于将所述视频数据中帧头部包含弹幕帧指示标识的至少一帧提取为所述自定义帧;所述弹幕帧指示标识用于指示对应帧中包含弹幕。
可选的,所述装置还包括:
水印获取模块,用于从所述自定义帧中获取所述弹幕数据对应的数字水印;
解码模块,用于对所述数字水印进行解码,获得所述弹幕数据对应的用户特征信息;
终端确定模块,用于根据所述用户特征信息确定所述弹幕数据的发送终端。
图13是根据一示例性实施例示出的一种视频传输装置的结构方框图。该视频传输装置可以通过硬件或者软硬结合的方式设置在如图1所示系统中的服务器中,以执行图4或图6所示实施例提供的方法中由服务器执行的全部或者部分步骤。该视频传输装置可以包括:
弹幕获取模块1301,用于获取目标图像帧对应的弹幕数据,所述目标图像帧是视频数据中的任意图像帧;
帧生成模块1302,用于生成包含所述弹幕数据的自定义帧,所述自定义帧符合所述视频数据的视频编码标准;
帧插入模块1303,用于根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,所述图像弹幕位置关系用于指示图像帧与对应的弹幕在所述视频数据中的位置关系;
数据传输模块1304,用于将插入所述自定义帧之后的所述视频数据传输给用户终端,以便所述用户终端根据所述图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,并在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
可选的,所述帧生成模块1302,具体用于生成包含帧头部和帧主体的所述自定义帧,所述帧头部包含弹幕帧指示标识,所述帧主体包含所述弹幕数据;
其中,所述弹幕帧指示标识用于指示对应帧中包含弹幕;所述弹幕数据包括弹幕内容、所述弹幕内容的显示格式以及所述弹幕内容的显示位置。
可选的,所述帧插入模块1303,具体用于,
将所述自定义帧插入所述目标图像帧之后的第i个图像帧与所述第i个图像帧的前一图像帧之间,i为大于或者等于1的整数;
或者,
将所述自定义帧插入所述目标图像帧之前的第j个图像帧与所述第j个图像帧的后一图像帧之间,j为大于或者等于1的整数。
可选的,所述装置还包括:
特征获取模块,用于在所述帧插入模块1303根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据之前,获取所述弹幕数据对应的用户特征信息;
水印生成模块,用于根据所述用户特征信息生成所述弹幕数据的数字水印;
水印添加模块,用于将所述弹幕数据的数字水印对应所述弹幕数据添加入所述自定义帧。
可选的,所述水印生成模块,具体用于,
通过第一水印生成算法对所述用户特征信息进行处理,获得所述数字水印;
或者,
通过第二水印生成算法对所述用户特征信息以及附加信息进行处理,获得所述数字水印,所述附加信息包括所述弹幕数据以及所述目标图像帧中的至少一种。
本申请实施例提供一种视频播放系统,该系统包括用户终端和服务器;
其中,该用户终端包含如上述图12所示的视频播放装置;
该服务器包含如上述图13所示的视频传输装置。
图14是本申请一个示例性实施例示出的计算机设备1400的结构框图。所述计算机设备1400包括中央处理单元(CPU)1401、包括随机存取存储器(RAM)1402和只读存储器(ROM)1403的系统存储器1404,以及连接系统存储器1404和中央处理单元1401的系统总线1405。所述计算机设备1400还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)1406,和用于存储操作系统1413、应用程序1414和其他程序模块1415的大容量存储设备1407。
所述基本输入/输出系统1406包括有用于显示信息的显示器1408和用于用户输入信息的诸如鼠标、键盘之类的输入设备1409。其中所述显示器1408和输入设备1409都通过连接到系统总线1405的输入输出控制器1410连接到中央处理单元1401。所述基本输入/输出系统1406还可以包括输入输出控制器1410以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1410还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1407通过连接到系统总线1405的大容量存储控制器(未示出)连接到中央处理单元1401。所述大容量存储设备1407及其相关联的计算机可读介质为计算机设备1400提供非易失性存储。也就是说,所述大容量存储设备1407可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1404和大容量存储设备1407可以统称为存储器。
计算机设备1400可以通过连接在所述系统总线1405上的网络接口单元1411连接到互联网或者其它网络设备。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,中央处理单元1401通过执行该一个或一个以上程序来实现图4或图6任一所示的方法中由服务器执行的全部或者部分步骤。
图15是根据一示例性实施例示出的用户终端1500的结构框图。通常,用户终端1500包括有:处理器1501和存储器1502。
处理器1501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1501也可以包括主处理器和协处理器。一些实施例中,处理器1501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1501所执行以实现本申请中各个方法实施例提供的方法中由用户终端执行的方法。
在一些实施例中,用户终端1500还可选包括有:外围设备接口1503和至少一个外围设备。处理器1501、存储器1502和外围设备接口1503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1503相连。具体地,外围设备包括:射频电路1504、触摸显示屏1505、图像采集组件1506、音频电路1507、定位组件1508和电源1509中的至少一种。
外围设备接口1503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1501和存储器1502。
射频电路1504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。
显示屏1505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1505是触摸显示屏时,显示屏1505还具有采集在显示屏1505的表面或表面上方的触摸信号的能力。显示屏1505可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
图像采集组件1506用于采集图像或视频。音频电路1507可以包括麦克风和扬声器。在一些实施例中,音频电路1507还可以包括耳机插孔。
定位组件1508用于定位用户终端1500的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。
电源1509用于为用户终端1500中的各个组件进行供电。电源1509可以是交流电、直流电、一次性电池或可充电电池。
在一些实施例中,用户终端1500还包括有一个或多个传感器1510。该一个或多个传感器1510包括但不限于:加速度传感器1511、陀螺仪传感器1512、压力传感器1513、指纹传感器1514、光学传感器1515以及接近传感器1516。
本领域技术人员可以理解,图15中示出的结构并不构成对用户终端1500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括计算机程序(指令)的存储器,上述程序(指令)可由计算机设备的处理器执行以完成本申请各个实施例所示的方法中,由服务器或者用户终端执行的方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (15)
1.一种视频播放方法,其特征在于,所述方法包括:
服务器获取目标图像帧对应的弹幕数据,所述目标图像帧是视频数据中的图像帧;
所述服务器生成包含所述弹幕数据的自定义帧,所述自定义帧符合所述视频数据的视频编码标准;
所述服务器根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,所述图像弹幕位置关系用于指示所述目标图像帧与对应的弹幕在所述视频数据中的位置关系;
所述服务器将插入所述自定义帧之后的所述视频数据传输给用户终端;
所述用户终端提取所述自定义帧;
所述用户终端根据所述图像弹幕位置关系确定与所述自定义帧相对应的所述目标图像帧;
所述用户终端从所述自定义帧中获取所述弹幕数据;
所述用户终端在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
2.一种视频播放方法,其特征在于,所述方法由用户终端执行,所述方法包括:
接收服务器发送的视频数据;
提取所述视频数据中的自定义帧,所述自定义帧包含有弹幕数据;
根据图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,所述图像弹幕位置关系用于指示所述目标图像帧与对应的弹幕在所述视频数据中的位置关系;
从所述自定义帧中获取所述弹幕数据;
在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
3.根据权利要求2所述的方法,其特征在于,所述根据图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,包括:
将处于所述自定义帧之前的第i个图像帧确定为所述目标图像帧,i为大于或者等于1的整数;
或者,
将处于所述自定义帧之后的第j个图像帧确定为所述目标图像帧,j为大于或者等于1的整数。
4.根据权利要求3所述的方法,其特征在于,所述提取所述视频数据中的自定义帧,包括:
将所述视频数据中帧头部包含弹幕帧指示标识的至少一帧提取为所述自定义帧;所述弹幕帧指示标识用于指示对应帧中包含弹幕。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
从所述自定义帧中获取所述弹幕数据对应的数字水印;
对所述数字水印进行解码,获得所述弹幕数据对应的用户特征信息;
根据所述用户特征信息确定所述弹幕数据的发送终端。
6.一种视频传输方法,其特征在于,所述方法由服务器执行,所述方法包括:
获取目标图像帧对应的弹幕数据,所述目标图像帧是视频数据中的图像帧;
生成包含所述弹幕数据的自定义帧,所述自定义帧符合所述视频数据的视频编码标准;
根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,所述图像弹幕位置关系用于指示所述目标图像帧与对应的弹幕在所述视频数据中的位置关系;
将插入所述自定义帧之后的所述视频数据传输给用户终端,以便所述用户终端根据所述图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,并在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
7.根据权利要求6所述的方法,其特征在于,所述生成包含所述弹幕数据的自定义帧,包括:
生成包含帧头部和帧主体的所述自定义帧,所述帧头部包含弹幕帧指示标识,所述帧主体包含所述弹幕数据;
其中,所述弹幕帧指示标识用于指示对应帧中包含弹幕;所述弹幕数据包括弹幕内容、所述弹幕内容的显示格式以及所述弹幕内容的显示位置。
8.根据权利要求6所述的方法,其特征在于,所述根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,包括:
将所述自定义帧插入所述目标图像帧之后的第i个图像帧与所述第i个图像帧的前一图像帧之间,i为大于或者等于1的整数;
或者,
将所述自定义帧插入所述目标图像帧之前的第j个图像帧与所述第j个图像帧的后一图像帧之间,j为大于或者等于1的整数。
9.根据权利要求6所述的方法,其特征在于,所述根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据之前,还包括:
获取所述弹幕数据对应的用户特征信息;
根据所述用户特征信息生成所述弹幕数据的数字水印;
将所述弹幕数据的数字水印对应所述弹幕数据添加入所述自定义帧。
10.根据权利要求9所述的方法,其特征在于,所述根据所述用户特征信息生成所述弹幕数据的数字水印,包括:
通过第一水印生成算法对所述用户特征信息进行处理,获得所述数字水印;
或者,
通过第二水印生成算法对所述用户特征信息以及附加信息进行处理,获得所述数字水印,所述附加信息包括所述弹幕数据以及所述目标图像帧中的至少一种。
11.一种视频播放装置,其特征在于,所述装置设置在用户终端中,所述装置包括:
视频数据接收模块,用于接收服务器发送的视频数据;
帧提取模块,用于提取所述视频数据中的自定义帧,所述自定义帧包含有弹幕数据;
图像帧确定模块,用于根据图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,所述图像弹幕位置关系用于指示所述目标图像帧与对应的弹幕在所述视频数据中的位置关系;
弹幕获取模块,用于从所述自定义帧中获取所述弹幕数据;
弹幕显示模块,用于在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
12.一种视频传输装置,其特征在于,所述装置设置在服务器中,所述装置包括:
弹幕获取模块,用于获取目标图像帧对应的弹幕数据,所述目标图像帧是视频数据中的图像帧;
帧生成模块,用于生成包含所述弹幕数据的自定义帧,所述自定义帧符合所述视频数据的视频编码标准;
帧插入模块,用于根据所述目标图像帧在所述视频数据中的位置以及图像弹幕位置关系,将所述自定义帧插入所述视频数据,所述图像弹幕位置关系用于指示所述目标图像帧与对应的弹幕在所述视频数据中的位置关系;
数据传输模块,用于将插入所述自定义帧之后的所述视频数据传输给用户终端,以便所述用户终端根据所述图像弹幕位置关系确定与所述自定义帧相对应的目标图像帧,并在播放所述目标图像帧时,在所述目标图像帧上层叠加显示所述弹幕数据的弹幕内容。
13.一种视频播放系统,其特征在于,所述系统包括用户终端和服务器;
所述用户终端包含如权利要求11所述的视频播放装置;
所述服务器包含如权利要求12所述的视频传输装置。
14.一种计算机设备,其特征在于,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求2至10任一所述的方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求2至10任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811295569.XA CN109348252B (zh) | 2018-11-01 | 2018-11-01 | 视频播放方法、视频传输方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811295569.XA CN109348252B (zh) | 2018-11-01 | 2018-11-01 | 视频播放方法、视频传输方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109348252A CN109348252A (zh) | 2019-02-15 |
CN109348252B true CN109348252B (zh) | 2020-01-10 |
Family
ID=65313258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811295569.XA Active CN109348252B (zh) | 2018-11-01 | 2018-11-01 | 视频播放方法、视频传输方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109348252B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110636337B (zh) * | 2019-08-20 | 2021-08-17 | 腾讯科技(深圳)有限公司 | 视频图像的截取方法、装置及系统 |
CN110536167A (zh) | 2019-09-20 | 2019-12-03 | 京东方科技集团股份有限公司 | 视频信号发送方法、视频信号接收方法、装置和显示设备 |
CN110841287B (zh) * | 2019-11-22 | 2023-09-26 | 腾讯科技(深圳)有限公司 | 视频处理方法、装置、计算机可读存储介质和计算机设备 |
CN112969093B (zh) * | 2019-12-13 | 2023-09-08 | 腾讯科技(北京)有限公司 | 互动业务处理方法、装置、设备及存储介质 |
CN112995759A (zh) * | 2019-12-13 | 2021-06-18 | 腾讯科技(北京)有限公司 | 互动业务处理方法、系统、装置、设备及存储介质 |
CN113271502B (zh) * | 2020-02-17 | 2023-04-28 | 上海哔哩哔哩科技有限公司 | 基于视频弹幕的数据显示方法、装置以及计算机设备 |
CN111428084A (zh) * | 2020-04-15 | 2020-07-17 | 海信集团有限公司 | 一种信息处理方法、管家服务器及云端服务器 |
CN111654720B (zh) * | 2020-07-17 | 2023-08-25 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、设备及可读存储介质 |
CN111901662A (zh) * | 2020-08-05 | 2020-11-06 | 腾讯科技(深圳)有限公司 | 视频的扩展信息处理方法、设备和存储介质 |
CN112040295A (zh) * | 2020-08-28 | 2020-12-04 | 苏州日煊数字科技有限公司 | 一种基于云计算的视频弹幕加载系统及其工作方法 |
CN114640882A (zh) * | 2020-12-15 | 2022-06-17 | 腾讯科技(深圳)有限公司 | 视频处理方法、装置、电子设备及计算机可读存储介质 |
CN112954433B (zh) * | 2021-02-01 | 2024-01-09 | 游密科技(深圳)有限公司 | 视频处理方法、装置、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101945263A (zh) * | 2007-05-08 | 2011-01-12 | 孟智平 | 一种在视频资源中使用信息集的方法 |
CN103533442A (zh) * | 2013-09-27 | 2014-01-22 | 北京奇虎科技有限公司 | 视频弹幕的加载方法及装置 |
CN105142031A (zh) * | 2015-08-17 | 2015-12-09 | 北京奇虎科技有限公司 | 在视频播放时以弹幕显示文字信息的方法及装置 |
CN106254922A (zh) * | 2016-08-08 | 2016-12-21 | 暴风集团股份有限公司 | 预加载播放弹幕的方法及系统 |
CN107027070A (zh) * | 2016-02-02 | 2017-08-08 | 中国电信股份有限公司 | 在视频中植入信息的方法、终端以及系统 |
CN107104947A (zh) * | 2017-03-20 | 2017-08-29 | 福建天泉教育科技有限公司 | 多屏互动方法 |
CN107360160A (zh) * | 2017-07-12 | 2017-11-17 | 广州华多网络科技有限公司 | 直播视频与动画融合方法、装置及终端设备 |
CN108401192A (zh) * | 2018-04-25 | 2018-08-14 | 腾讯科技(深圳)有限公司 | 视频流处理方法、装置、计算机设备及存储介质 |
CN108600773A (zh) * | 2018-04-25 | 2018-09-28 | 腾讯科技(深圳)有限公司 | 字幕数据推送方法、字幕展示方法、装置、设备及介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106488296B (zh) * | 2016-10-18 | 2019-06-11 | 广州酷狗计算机科技有限公司 | 一种显示视频弹幕的方法和装置 |
US10284806B2 (en) * | 2017-01-04 | 2019-05-07 | International Business Machines Corporation | Barrage message processing |
CN108616772B (zh) * | 2018-05-04 | 2020-10-30 | 维沃移动通信有限公司 | 一种弹幕显示方法、终端和服务器 |
-
2018
- 2018-11-01 CN CN201811295569.XA patent/CN109348252B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101945263A (zh) * | 2007-05-08 | 2011-01-12 | 孟智平 | 一种在视频资源中使用信息集的方法 |
CN103533442A (zh) * | 2013-09-27 | 2014-01-22 | 北京奇虎科技有限公司 | 视频弹幕的加载方法及装置 |
CN105142031A (zh) * | 2015-08-17 | 2015-12-09 | 北京奇虎科技有限公司 | 在视频播放时以弹幕显示文字信息的方法及装置 |
CN107027070A (zh) * | 2016-02-02 | 2017-08-08 | 中国电信股份有限公司 | 在视频中植入信息的方法、终端以及系统 |
CN106254922A (zh) * | 2016-08-08 | 2016-12-21 | 暴风集团股份有限公司 | 预加载播放弹幕的方法及系统 |
CN107104947A (zh) * | 2017-03-20 | 2017-08-29 | 福建天泉教育科技有限公司 | 多屏互动方法 |
CN107360160A (zh) * | 2017-07-12 | 2017-11-17 | 广州华多网络科技有限公司 | 直播视频与动画融合方法、装置及终端设备 |
CN108401192A (zh) * | 2018-04-25 | 2018-08-14 | 腾讯科技(深圳)有限公司 | 视频流处理方法、装置、计算机设备及存储介质 |
CN108600773A (zh) * | 2018-04-25 | 2018-09-28 | 腾讯科技(深圳)有限公司 | 字幕数据推送方法、字幕展示方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109348252A (zh) | 2019-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109348252B (zh) | 视频播放方法、视频传输方法、装置、设备及存储介质 | |
CN108401192B (zh) | 视频流处理方法、装置、计算机设备及存储介质 | |
CN108566558B (zh) | 视频流处理方法、装置、计算机设备及存储介质 | |
CN108600773B (zh) | 字幕数据推送方法、字幕展示方法、装置、设备及介质 | |
CN105612753B (zh) | 媒体流传输期间在适配集合间的切换方法和装置 | |
US20200285615A1 (en) | Auxiliary manifest file to provide timed metadata | |
CN103081433A (zh) | 用于经译码视频数据的网络串流传输的清单文件更新 | |
US10979784B1 (en) | Track format for carriage of event messages | |
US11218784B1 (en) | Method and system for inserting markers in a media presentation | |
EP4266691A2 (en) | Verifying the rendering of video content at client devices using trusted platform modules | |
WO2023202095A1 (zh) | 点云媒体的编解码方法、装置、电子设备和存储介质 | |
EP3888375A1 (en) | Method, device, and computer program for encapsulating media data into a media file | |
KR20150083355A (ko) | 증강 미디어 서비스 제공 방법, 장치 및 시스템 | |
CN112312187A (zh) | 对视频进行投屏播放的方法、装置、设备及存储介质 | |
CN114040255A (zh) | 直播字幕生成方法、系统、设备及存储介质 | |
CN106489270A (zh) | 信息处理装置和方法 | |
CN114697631B (zh) | 沉浸媒体的处理方法、装置、设备及存储介质 | |
JP2022019932A (ja) | 情報処理装置および情報処理方法 | |
US20190208281A1 (en) | User device pan and scan | |
CN113099282B (zh) | 一种数据处理方法、装置及设备 | |
CN101945264B (zh) | 一种在视频资源中使用信息集的方法 | |
EP4021001A1 (en) | Code stream processing method and device, first terminal, second terminal and storage medium | |
CN112151048B (zh) | 音视图数据生成以及处理的方法 | |
KR102391755B1 (ko) | 정보 처리 장치 및 정보 처리 방법 | |
US9685198B1 (en) | Synchronizing recordings based on an encoded audio signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |