CN110324654A - 主播端直播视频帧处理方法、装置、设备、系统及介质 - Google Patents

主播端直播视频帧处理方法、装置、设备、系统及介质 Download PDF

Info

Publication number
CN110324654A
CN110324654A CN201910711592.0A CN201910711592A CN110324654A CN 110324654 A CN110324654 A CN 110324654A CN 201910711592 A CN201910711592 A CN 201910711592A CN 110324654 A CN110324654 A CN 110324654A
Authority
CN
China
Prior art keywords
live video
frame
video frame
setting
direct broadcast
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
CN201910711592.0A
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.)
Guangzhou Huya Technology Co Ltd
Original Assignee
Guangzhou Huya Technology 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 Guangzhou Huya Technology Co Ltd filed Critical Guangzhou Huya Technology Co Ltd
Priority to CN201910711592.0A priority Critical patent/CN110324654A/zh
Publication of CN110324654A publication Critical patent/CN110324654A/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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content 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/26208Content 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/26241Content 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content 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/26291Content 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 for providing content or additional data updates, e.g. updating software modules, stored at the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例公开了一种主播端直播视频帧处理方法、装置、设备、系统及介质。该方法包括:获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。上述技术方案保证了主播端向直播服务器推流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。

Description

主播端直播视频帧处理方法、装置、设备、系统及介质
技术领域
本发明实施例涉及信息处理技术领域,尤其涉及一种主播端直播视频帧处理方法、装置、设备、系统及介质。
背景技术
随着信息技术的不断发展,多媒体直播以其形式新颖、内容丰富受到人们的关注。目前,直播系统采用的直播方式如下:主播端单方面推流到直播平台,然后通过直播平台的中转系统、CDN(Content Delivery Network,内容分发)服务器的分发,最终在观众端拉流并播放流媒体内容。
当主播端的设备系统为iOS(苹果公司开发的移动操作系统)时,主播端采集视频的帧率不是固定的,会随着视频采集画面的变化快慢来进行调整,画面变化快则帧率高,画面变化慢则帧率低。当画面的变化缓慢甚至无变化时,iOS主播端视频帧采集帧率就会很低,甚至为零,进而iOS主播端向直播平台推送的视频帧就会很少,甚至无视频帧推送,由此则会导致观众端出现视频播放卡顿的问题出现,甚至是观众端黑屏无画面播放的问题出现。
发明内容
本发明实施例提供一种主播端直播视频帧处理方法、装置、设备、系统及介质,以保证主播端向直播平台推流时的帧率稳定性,避免观众端拉流后出现视频播放卡顿、黑屏的问题。
第一方面,本发明实施例提供了一种主播端直播视频帧处理方法,该方法包括:
获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;
实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;
根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。
第二方面,本发明实施例还提供了一种主播端直播视频帧处理装置,该装置包括:
直播视频帧获取模块,用于获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;
最新直播视频帧存储模块,用于实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;
稳定帧率推送模块,用于根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。
第三方面,本发明实施例还提供了一种直播系统,该系统包括:直播服务器、执行如任意实施例所述的主播端直播视频帧处理方法的主播端,以及与所述主播端对应的至少一个观众端;其中,
所述主播端,用于向直播服务器推送设定的固定帧率或者设定的帧率范围的直播视频流;
所述直播服务器,用于在接收到与所述主播端对应的至少一个观众端发送的直播请求时,将与所述主播端对应的设定的固定帧率或者设定的帧率范围的直播视频流下发至对应的所述观众端;
所述观众端,用于接收所述直播服务器下发的与所述主播端对应的设定的固定帧率或者设定的帧率范围的直播视频流并播放。
第四方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现任意实施例所述的主播端直播视频帧处理方法。
第五方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现任意实施例所述的主播端直播视频帧处理方法。
本发明实施例中,主播端采集直播视频帧的帧率是可变的,在将直播视频帧向直播服务器推送之前,会将直播视频帧稳定在一个固定帧率或者是设定的帧率范围内,由此使直播服务器向与主播端对应的观众端下发的直播视频流也是固定帧率的或者是设定的帧率范围内的。由此,上述技术方案保证了主播端向直播服务器推流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。
附图说明
图1是本发明实施例一提供的一种主播端直播视频帧处理方法的流程图;
图2是本发明实施例二提供的一种主播端直播视频帧处理方法的流程图;
图3是本发明实施例二提供的一种直播采集推流处理逻辑示意图;
图4是本发明实施例三提供的一种主播端直播视频帧处理方法的流程图;
图5是本发明实施例三提供的一种直播采集推流处理逻辑示意图;
图6是本发明实施例四提供的一种主播端直播视频帧处理方法的流程图;
图7是本发明实施例五提供的一种直播系统的结构示意图;
图8是本发明实施例六提供的一种主播端直播视频帧处理装置的结构示意图;
图9是本发明实施例七提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1是本发明实施例一提供的一种主播端直播视频帧处理方法的流程图,本实施例可适用于直播过程中主播端以不稳定的帧率采集直播视频帧的情况,该方法可以由本发明任意实施例提供的主播端直播视频帧处理装置来执行,该装置可由硬件和/或软件组成,并一般可集成在计算机设备的处理器中,例如是主播端设备的处理器中。
如图1所示,本实施例提供的方法包括以下步骤:
S110、获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧。
直播视频帧,是由主播端设备在登录网络直播平台之后,实时采集的视频帧,多个视频帧连续起来即可构成直播视频流。其中,直播视频流的内容多种多样,例如是唱歌、游戏等等。
帧率,指的是以帧称为单位的位图图像连续出现在显示器上的频率,本实施例中具体指的是每秒钟采集直播视频帧的数量,或者是每秒钟向直播服务器推送的直播视频帧的数量。当每秒钟采集直播视频帧的数量不稳定时,即为S110中提到的以可变帧率来实时采集直播视频帧。
在不对实施采集直播视频帧的帧率进行处理的情况下,直播视频帧的采集帧率即为主播端向直播服务器推送直播视频帧的帧率,由此,可变采集帧率具体反应的就是主播端每秒钟向直播服务器推送的直播视频帧帧数的变化情况。
典型的,主播端的设备系统为iOS系统时,直播视频帧的采集帧率都是可变的,具体根据画面变化来调整采集帧率,视频画面变化快时采集帧率大,视频画面变化慢时采集帧率小。
具体的,以可变帧率实时采集得到的至少一个直播视频帧,可以是通过iOS系统采集的与iOS主播端桌面对应的直播视频帧,例如是iOS主播端桌面上实时展示的直播游戏画面等,具体可以通过iOS系统的AirPlay服务或者原生ReplayKit技术来采集直播视频帧;还可以是通过iOS系统采集的与iOS主播端摄像头对应的直播视频帧,例如是iOS主播端摄像头实时采集的直播唱歌画面等。
S120、实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储。
每当采集到一个新的直播视频帧后,则使用这个新的直播视频帧去更新上一个直播视频帧作为目标直播视频帧去存储,例如存储在缓存中。其中,上一个直播视频帧可以视其被推送情况确定是否需要被释放,如果上一个直播视频帧已被推送至直播服务器,则可以将上一个直播视频帧释放,如果上一直播视频帧还未被推送至直播服务器,则不将上一个直播视频帧释放,待成功推送至直播服务器后再释放。
需要注意的是,目标直播视频帧始终是最新采集得到的那一个直播视频帧。
S130、根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使直播服务器将所述直播视频流下发给对应的观众端进行播放。
本实施例中,在将以可变帧率实时采集得到的各个直播视频帧向直播服务器推送之前,会对直播视频帧进行稳定帧率处理,例如是将推送直播视频帧的帧率稳定在设定的固定帧率(例如是每秒30帧),或者是稳定在设定的帧率范围内(例如是每秒28-30帧)。
进而,在直播服务器接收到主播端推送的直播视频流之后,向对主播端对应的各个观众端下发的直播视频流也是所述设定固定帧率的或者设定的帧率范围内的。由此,各个观众端通过直播服务的中转接收到主播端推送的直播视频流之后,播放给观众观看的直播视频流是固定帧率的,或者是设定帧率范围内的,不会出现播放卡顿甚至是无画面播放的情况。
本发明实施例中,主播端采集直播视频帧的帧率是可变的,在将直播视频帧向直播服务器推送之前,会将直播视频帧稳定在一个固定帧率或者是设定的帧率范围内,由此使直播服务器向与主播端对应的观众端下发的直播视频流也是固定帧率的或者是设定的帧率范围内的。由此,上述技术方案保证了主播端向直播服务器推流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。
实施例二
图2是本发明实施例二提供的一种主播端直播视频帧处理方法的流程图,本实施例以上述实施例为基础进行优化。其中,可以将根据目标直播视频帧,向直播服务器推送设定的固定帧率的直播视频流,具体为:
按照固定帧率,确定至少一个定时推送时间点;在到达每个定时推送时间点时,将目标直播视频帧向直播服务器推送;其中,固定帧率大于等于可变帧率中的最大视频采集帧率。
如图2所示,本实施例提供的方法包括以下步骤:
S210、获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧。
可变帧率中会预先设定一个最大视频采集帧率,在本实施例中为了避免出现以最大视频采集帧率采集到的直播视频帧无法按照设定的固定帧率被推送至直播服务器的问题,将设定的固定帧率设置为大于等于可变帧率中的最大视频采集帧率。
S220、实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储。
每当采集到一个新的直播视频帧之后,将其进行缓存,缓存的这个直播视频帧即为目标直播视频帧。由于设定的固定帧率大于等于可变帧率中的最大视频采集帧率,因此,缓存中只存在目标直播视频帧这一帧。
当采集到的新的直播视频帧时,缓存中的目标直播视频帧更新;当没有采集到新的直播视频帧时,缓存中的目标直播视频帧不变。
S230、在到达每个定时推送时间点时,将目标直播视频帧向直播服务器推送。
其中,定时推送时间点是根据固定帧率预先确定的。例如,设定的固定帧率为每秒40帧,则各个定时推送时间点的时间间隔为0.25秒。
具体的,在判断是否达到每个定时推送时间时,可以通过一个高精度定时器来实现,将高精度定时器的定时周期设置为T秒,T=1/F,F为设定的固定帧率,高精度定时器计时到T秒后复位重新计时。每当高精度定时器计时到T秒时,则到达定时推送时间点,将缓存的目标直播视频帧向直播服务器推送。
在视频采集帧率较小的情况下,如果到达下一个定时推送时间时,目标直播视频帧没有更新,则依旧将这个目标直播视频帧向直播服务器推送。
一般情况(系统采集无故障时)下,视频画面变化缓慢时,视频采集帧率就会比较低,此时,为了保证向直播服务器推送的直播视频流的帧率稳定性,会重复使用目标直播视频帧以固定帧率向直播服务器推送。由于此时主播端视频画面变化本身就是比较缓慢的,因此,观众端用户并不会感知到此时的直播视频帧是重复的,也即不会感知到此时的直播视频画面是卡顿的。
在视频画面变化比较快的情况下,如果视频采集帧率比较低,为了保证向直播服务器推送的直播视频流的帧率稳定性,重复使用目标直播视频帧以固定帧率向直播服务器推送,必然会引起观众端视频画面的卡顿。但是,“视频画面变化比较快,视频采集帧率比较低”的情况一般不会出现,如果出现了这种情况,而预先设置的可变帧率中最大视频采集帧率的值又不低,则极有可能是系统采集出现了故障。
图3为本发明实施例二提供的一种直播采集推流处理逻辑示意图。如图3所示,将直播流程划分为5个模块,分别为:直播初始化模块、视频帧采集模块、编码推流模块、拉流播放模块以及帧率稳定模块;其中,
直播初始化模块,用于执行初始化直播参数等操作;视频帧采集模块,用于使用例如AirPlay或者ReplayKit之类的方式采集直播视频数据;编码推流模块,用于对直播视频帧进行编码后向直播服务器推流;拉流播放模块,用于在直播服务器中拉流后进行播放;帧率稳定模块,用于对推流的视频帧率进行稳定处理。
在本实施例中,视频帧采集模块每当采集到新的直播视频帧之后将其写入缓存中,对缓存中已有的直播视频帧进行更新(如果采集到的新的直播视频帧为第一个直播视频帧,则直接写入缓存即可),帧率稳定模块以设定的固定帧率在缓存中取出直播视频帧后传递给编码推流模块进行处理。
此流程下,视频帧采集模块与编码推流模块无直接数据传递关系,因此,视频帧采集模块的异常停止不会影响到编码推流模块。当视频帧采集模块在某段时间内无数据采集或者采集帧率很低时,帧率稳定模块依旧会以设定的固定帧率推送缓存的直播视频帧,以确保编码推流模块和拉流播放模块都能正常工作。
本实施例未尽详细解释之处请参见前述实施例,在此不再赘述。
在上述技术方案中,预先设定一个大于等于可变帧率中的最大视频采集帧率的固定帧率,将以可变帧率采集到的直播视频帧均以固定帧率向直播服务器推送,保证了主播端向直播服务器推流时的帧率稳定性,以及观众端从直播服务器拉流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。一般情况下,为保证视频画面的流畅性,设定的固定帧率通常比较高,由此,达到了提高并且稳定推流端上行帧率,降低拉流端下行卡顿占比率的效果。
实施例三
图4是本发明实施例三提供的一种主播端直播视频帧处理方法的流程图,本实施例以上述实施例为基础进行优化。其中,所述设定的帧率范围中设定有最小帧率;对应的,将根据目标直播视频帧,向直播服务器推送设定的帧率范围的直播视频流,具体为:
每当获取到实时采集的一个直播视频帧时,将直播视频帧推送至所述直播服务器,并对计时器进行重新计时;
如果所述计时器计时至设定时长时仍未获取到新的所述直播视频帧,则获取所述目标直播视频帧,并将所述目标直播视频帧推送至所述直播服务器,并对所述计时器进行重新计时;
其中,所述设定时长与设定的帧率范围中最小帧率的帧周期相匹配。
如图4所示,本实施例提供的方法包括以下步骤:
S310、获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧。
S320、实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储。
S330、每当获取到实时采集的一个直播视频帧时,将直播视频帧推送至直播服务器,并对计时器进行重新计时。
主播端以可变帧率实时采集直播视频帧,每当采集到一个直播视频帧后,则将这个直播视频帧作为目标直播视频帧进行更新存储(目标直播视频帧始终是最新获取的一个直播视频帧),同时将这个直播视频帧向直播服务器推送。
在将一个直播视频帧向直播服务器推送的同时,还需对高精度计时器进行重新计时。本实施例中,计时器为高精度计时器,其计时周期与设定的帧率范围中的最小帧率的帧周期匹配。例如,设定的帧率范围为每秒40-42帧,则最小帧率为每秒40帧,最小帧率的帧周期为0.25秒,因此,高精度计时器的计时周期为0.25秒。
S340、如果计时器计时至设定时长时仍未获取到新的直播视频帧,则获取目标直播视频帧,并将所述目标直播视频帧推送至直播服务器,并对计时器进行重新计时;其中,设定时长为设定的帧率范围中的最小帧率的帧周期。
如果高精度计时器计时至设定时长时仍未获取到新的直播视频帧,也即此时主播端的视频采集帧率小于设定的帧率范围中的最小帧率,此时需要将缓存的目标直播视频帧向直播服务器推送,并同时对高精度计时器进行重新计时。
在每次向直播服务器推送一帧直播视频帧之后,都需要对高精度计时器进行重新计时,以此可以根据高精度计时器的计时保证下一个直播视频帧的推送帧率不小于设定的帧率范围中的最小帧率。
将高精度计时器的计时周期设置为与设定的帧率范围中的最小帧率的帧周期匹配的好处在于:在主播端视频帧采集帧率小于等于设定的帧率范围中的最小帧率时,会以设定的帧率范围中的最小帧率向直播服务器推送直播视频帧;在主播端视频帧采集帧率大于设定的帧率范围中的最小帧率时,则以主播端视频帧采集帧率向直播服务器推送直播视频帧,以此实现了以设定的帧率范围向向直播服务器推送直播视频帧。
图5为本发明实施例三提供的一种直播采集推流处理逻辑示意图。如图5所示,将直播流程划分为5个模块,分别为:直播初始化模块、视频帧采集模块、编码推流模块、拉流播放模块以及帧率稳定模块。其中,
直播初始化模块,用于执行初始化直播参数等操作;视频帧采集模块,用于使用例如AirPlay或者ReplayKit之类的方式采集直播视频数据;编码推流模块,用于对直播视频帧进行编码后向直播服务器推流;拉流播放模块,用于在直播服务器中拉流后进行播放;帧率稳定模块,用于对推流的视频帧率进行稳定处理。
在本实施例中,视频帧采集模块每当采集到新的直播视频帧之后,将其传递至编码推流模块进行处理,同时,将这个新的直播视频帧写入缓存中,对缓存中已有的直播视频帧进行更新(如果采集到的新的直播视频帧为第一个直播视频帧,则直接写入缓存即可)。帧率稳定模块,在编码推流模块每次向直播服务器推送直播视频帧后开始计时,如果计时至设定时长(与设定的帧率范围中的最小帧率匹配的帧周期)时仍未获取到新的直播视频帧,则在缓存中取出直播视频帧并传递给编码推流模块进行处理。
此流程下,在视频帧采集模块采集帧率小于等于设定的帧率范围中的最小帧率时,会以设定的帧率范围中的最小帧率向编码推流模块传递直播视频帧;在视频帧采集模块采集帧率大于设定的帧率范围中的最小帧率时,则以采集帧率向编码推流模块传递直播视频帧。由此,可以保证向编码推流模块传递直播视频帧的帧率最小为设定的帧率范围中的最小帧率,即使是在视频帧采集模块无数据采集或者采集帧率很低的情况下,也确保了视频帧采集模块的异常停止不会影响到编码推流模块和拉流播放模块的正常工作。
本实施例未尽详细解释之处请参见前述实施例,在此不再赘述。
在上述技术方案中,预先设定一个帧率范围,该帧率范围中只设置一个最小帧率,将以可变帧率采集到的直播视频帧以该帧率范围向直播服务器推送,保证了主播端向直播服务器推流时的帧率稳定性,以及观众端从直播服务器拉流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。
实施例四
图6是本发明实施例四提供的一种主播端直播视频帧处理方法的流程图,本实施例以上述实施例为基础进行优化,其中,本实施例与实施例二的区别在于,实施例二中将预设的固定帧率限定为大于等于可变帧率中的最大视频采集帧率,而本实施例中对预设的固定帧率不作具体限定。
具体的,在本实施例中,将实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储,具体为:实时将最新采集得到的一个直播视频帧作为目标直播视频帧存储于设定缓存队列中;对应的,将根据目标直播视频帧,向直播服务器推送设定的固定帧率的直播视频流,具体为:根据固定帧率,确定至少一个定时推送时间点;在到达每个定时推送时间点时,按入队顺序将缓存队列中缓存的一个直播视频帧推送至直播服务器,并将所述直播视频帧在缓存队列中释放;如果在到达每个定时推送时间点时,缓存队列中只存在目标直播视频帧,则将目标直播视频帧推送至直播服务器。
如图6所示,本实施例提供的方法包括以下步骤:
S410、获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧。
S420、实时将最新采集得到的一个直播视频帧作为目标直播视频帧存储于设定缓存队列中。
每当采集到一个新的直播视频帧之后,将其缓存至设定缓存队列中,并这个最新采集到的直播视频帧作为目标直播视频帧。
假如在一段时间内主播端视频采集帧率大于设定的固定帧率,则设定缓存队列中不仅包括目标直播视频帧,还包括未向直播服务器推送的其他直播视频帧。假如在一段时间内主播端视频采集帧率小于设定的固定帧率,则设定缓存队列中仅包括目标直播视频帧。
值得注意的是,无论主播端视频采集帧率与设定的固定帧率的大小关系如何,目标直播视频帧均是最新采集的一个直播视频帧。
S430、在到达每个定时推送时间点时,判断缓存队列中是否只存在目标直播视频帧,若否,则执行S440,若是,则执行S450。
其中,定时推送时间点是根据固定帧率预先确定的。例如,设定的固定帧率为每秒40帧,则各个定时推送时间点的时间间隔为0.25秒。
具体的,在判断是否达到每个定时推送时间时,可以通过一个高精度定时器来实现,将高精度定时器的定时周期设置为T秒,T=1/F,F为设定的固定帧率,高精度定时器计时到T秒后复位重新计算。
每当高精度定时器计时到T秒时,则到达定时推送时间点,首选对缓存队列中直播视频帧数量进行判断,判断是否仅存在目标直播视频帧。
S440、按入队顺序将缓存队列中缓存的一个直播视频帧推送至直播服务器,并将所述直播视频帧在缓存队列中释放。
如果缓存队列中不是仅包括目标直播视频帧,则按照按入队顺序将缓存队列中最先缓存的一个直播视频帧推送至直播服务器,并在推送后将这个直播视频帧在缓存队列中释放。
S450、将目标直播视频帧推送至直播服务器,并在缓存队列中添加一个新的直播视频帧后将所述目标直播视频帧在缓存队列中释放。
如果缓存队列中仅包括目标直播视频帧,则将目标直播视频帧推送至直播服务器。
在把这个目标直播视频帧推送后,暂时不将这个目标直播视频帧在缓存队列中释放,直至缓存队列中添加了一个新的直播视频帧作为更新后的目标直播视频帧。
例如,如果缓存队列中仅包括目标直播视频帧(具体为直播视频帧A),则将直播视频帧A推送至直播服务器,但暂时不会将直播视频帧A在缓存队列中释放,当缓存队列中添加了一个新的直播视频帧(具体为直播视频帧B)作为更新后的目标直播视频帧时,再将直播视频帧A在缓存队列中释放。
在视频采集帧率较小的情况下,如果到达下一个定时推送时间时,目标直播视频帧没有更新,则依旧将这个目标直播视频帧向直播服务器推送。
图3所示的直播采集推流处理逻辑示意图也适用于本实施例提供的技术方案。如图3所示,视频帧采集模块每当采集到新的直播视频帧之后将其写入缓存队列中,帧率稳定模块以设定的固定帧率在缓存队列中取出一个直播视频帧并传递给编码推流模块进行处理,如果取出的一个直播视频帧不是缓存队列中仅有的一个直播视频帧(也即目标直播视频帧),则在缓存队列中将这个直播视频帧释放,如果取出的一个直播视频帧是缓存队列中仅有的一个直播视频帧(也即目标直播视频帧),则在缓存队列中暂时不将这个直播视频帧释放,直至缓存队列中添加了一个新的直播视频帧作为更新后的目标直播视频帧。
此流程下,视频帧采集模块与编码推流模块无直接数据传递关系,因此,视频帧采集模块的异常停止不会影响到编码推流模块。当视频帧采集模块在某段时间内无数据采集或者采集帧率很低时,帧率稳定模块依旧会以设定的固定帧率推送缓存的直播视频帧,以确保编码推流模块和拉流播放模块都能正常工作。
本实施例未尽详细解释之处请参见前述实施例,在此不再赘述。
在上述技术方案中,预先设定一个固定帧率(固定帧率与可变帧率中的最大视频采集帧率的大小关系无需明确限定),将以可变帧率采集到的直播视频帧均以固定帧率向直播服务器推送,保证了主播端向直播服务器推流时的帧率稳定性,以及观众端从直播服务器拉流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。一般情况下,为保证视频画面的流畅性,设定的固定帧率通常比较高,由此,达到了提高并且稳定推流端上行帧率,降低拉流端下行卡顿占比率的效果。
实施例五
图7是本发明实施例五提供的一种直播系统的结构示意图,本实施例可适用于直播过程中主播端以不稳定的帧率采集直播视频帧的情况。如图7所示,该系统包括:直播服务器510、执行如本发明任意实施例所述的主播端直播视频帧处理方法的主播端520,以及与主播端520对应的至少一个观众端530(图7中以一个观众端为例示出)。其中,
主播端520,用于向直播服务器510推送设定的固定帧率或者设定的帧率范围的直播视频流;
直播服务器510,用于在接收到与主播端520对应的至少一个观众端530发送的直播请求时,将与主播端520对应的设定的固定帧率或者设定的帧率范围的直播视频流下发至对应的观众端530;
观众端530,用于接收直播服务器510下发的与主播端520对应的设定的固定帧率或者设定的帧率范围的直播视频流并播放。
本发明实施中,主播端采集直播视频帧的帧率是可变的,在将直播视频帧向直播服务器推送之前,会将直播视频帧稳定在一个固定帧率或者是设定的帧率范围内,由此使直播服务器向与主播端对应的观众端下发的直播视频流也是固定帧率的或者是设定的帧率范围内的。由此,上述技术方案保证了主播端向直播服务器推流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。
具体的,主播端520可以执行下述操作:
获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;
实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;
根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。
作为一种具体的实施方式,主播端520在执行根据所述目标直播视频帧,向直播服务器推送设定的固定帧率的直播视频流时,可以具体执行下述操作:
按照固定帧率,确定至少一个定时推送时间点;在到达每个所述定时推送时间点时,将目标直播视频帧向所述直播服务器推送;其中,所述固定帧率大于等于所述可变帧率中的最大视频采集帧率。
作为另一种具体的实施方式,主播端520在执行根据所述目标直播视频帧,向直播服务器推送设定的帧率范围的直播视频流时,可以具体执行下述操作:
每当获取到实时采集的一个直播视频帧时,将所述直播视频帧推送至所述直播服务器,并对计时器进行重新计时;
如果所述计时器计时至设定时长时仍未获取到新的所述直播视频帧,则获取所述目标直播视频帧,并将所述目标直播视频帧推送至所述直播服务器,并对所述计时器进行重新计时;
其中,所述设定的帧率范围中设定有最小帧率;所述设定时长与设定的帧率范围中最小帧率的帧周期相匹配。
作为又一种具体的实施方式,主播端520执行实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储时,可以具体执行下述操作:
实时将最新采集得到的一个直播视频帧作为目标直播视频帧存储于设定缓存队列中;
对应的,主播端520执行根据所述目标直播视频帧,向直播服务器推送设定的固定帧率的直播视频流时,可以具体执行下述操作:
根据所述固定帧率,确定至少一个定时推送时间点;
在到达每个所述定时推送时间点时,按入队顺序将所述缓存队列中缓存的一个直播视频帧推送至所述直播服务器,并将所述直播视频帧在所述缓存队列中释放;
如果在到达每个所述定时推送时间点时,所述缓存队列中只存在所述目标直播视频帧,则将所述目标直播视频帧推送至所述直播服务器,并在缓存队列中添加一个新的直播视频帧后将所述目标直播视频帧在缓存队列中释放。
典型的,主播端520的设备系统为iOS系统。
具体的,主播端520以可变帧率实时采集得到的至少一个直播视频帧,可以是通过iOS系统采集的与iOS主播端桌面对应的直播视频帧,还可以是通过iOS系统采集的与iOS主播端摄像头对应的直播视频帧。
本实施例未尽详细解释之处请参见前述实施例,在此不再赘述。
实施例六
图8是本发明实施例六提供的一种主播端直播视频帧处理装置的结构示意图,本实施例可适用于直播过程中主播端以不稳定的帧率采集直播视频帧的情况,该装置可以采用软件和/或硬件的方式实现,并一般可集成在计算机设备的处理器中,例如是主播端设备的处理器中。如图8所示,该装置包括:直播视频帧获取模块610、最新直播视频帧存储模块620和稳定帧率推送模块630。其中,
直播视频帧获取模块610,用于获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;
最新直播视频帧存储模块620,用于实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;
稳定帧率推送模块630,用于根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。
本发明实施例中,主播端采集直播视频帧的帧率是可变的,在将直播视频帧向直播服务器推送之前,会将直播视频帧稳定在一个固定帧率或者是设定的帧率范围内,由此使直播服务器向与主播端对应的观众端下发的直播视频流也是固定帧率的或者是设定的帧率范围内的。由此,上述技术方案保证了主播端向直播服务器推流时的帧率稳定性,避免了观众端拉流后出现视频播放卡顿甚至黑屏的问题。
作为一种具体的实施方式,稳定帧率推送模块630,具体用于按照所述固定帧率,确定至少一个定时推送时间点;
在到达每个所述定时推送时间点时,将目标直播视频帧向所述直播服务器推送;其中,所述固定帧率大于等于所述可变帧率中的最大视频采集帧率。
作为另一种具体的实施方式,稳定帧率推送模块630,具体用于每当获取到实时采集的一个直播视频帧时,将所述直播视频帧推送至所述直播服务器,并对计时器进行重新计时;如果所述计时器计时至设定时长时仍未获取到新的所述直播视频帧,则获取所述目标直播视频帧,并将所述目标直播视频帧推送至所述直播服务器,并对所述计时器进行重新计时;其中,所述设定的帧率范围中设定有最小帧率;所述设定时长与设定的帧率范围中最小帧率的帧周期相匹配。
作为又一种具体的实施方式,最新直播视频帧存储模块620,具体用于实时将最新采集得到的一个直播视频帧作为目标直播视频帧存储于设定缓存队列中;对应的,稳定帧率推送模块630,具体用于根据所述固定帧率,确定至少一个定时推送时间点;在到达每个所述定时推送时间点时,按入队顺序将所述缓存队列中缓存的一个直播视频帧推送至所述直播服务器,并将所述直播视频帧在所述缓存队列中释放;如果在到达每个所述定时推送时间点时,所述缓存队列中只存在所述目标直播视频帧,则将所述目标直播视频帧推送至所述直播服务器,并在缓存队列中添加一个新的直播视频帧后将所述目标直播视频帧在缓存队列中释放。
典型的,所述主播端的设备系统为iOS系统。
具体的,所述以可变帧率实时采集得到的至少一个直播视频帧,至少包括:
通过iOS系统采集的与iOS主播端桌面对应的直播视频帧,或者,通过iOS系统采集的与iOS主播端摄像头对应的直播视频帧。
本发明实施例所提供的主播端直播视频帧处理装置可执行本发明任意实施例所提供的主播端直播视频帧处理方法,具备执行主播端直播视频帧处理方法相应的功能模块和有益效果。
实施例七
图9是本发明实施例七提供的一种计算机设备的结构示意图,如图9所示,该计算机设备包括处理器70、存储器71、输入装置72和输出装置73;计算机设备中处理器70的数量可以是一个或多个,图9中以一个处理器70为例;计算机设备中的处理器70、存储器71、输入装置72和输出装置73可以通过总线或其他方式连接,图9中以通过总线连接为例。
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的主播端直播视频帧处理方法对应的程序指令/模块(例如,主播端直播视频帧处理装置中的直播视频帧获取模块610、最新直播视频帧存储模块620和稳定帧率推送模块630)。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的主播端直播视频帧处理方法。
存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置72可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置73可包括显示屏等显示设备。
实施例八
本发明实施例八还提供一种存储有计算机程序的计算机可读存储介质,计算机程序在由计算机处理器执行时用于执行一种主播端直播视频帧处理方法,该方法包括:
获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;
实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;
根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。
当然,本发明实施例所提供的存储有计算机程序的计算机可读存储介质,其计算机程序不限于如上的方法操作,还可以执行本发明任意实施例所提供的主播端直播视频帧处理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
值得注意的是,上述主播端直播视频帧处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种主播端直播视频帧处理方法,其特征在于,包括:
获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;
实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;
根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。
2.根据权利要求1所述的方法,其特征在于,根据所述目标直播视频帧,向直播服务器推送设定的固定帧率的直播视频流,包括:
按照所述固定帧率,确定至少一个定时推送时间点;
在到达每个所述定时推送时间点时,将目标直播视频帧向所述直播服务器推送;其中,所述固定帧率大于等于所述可变帧率中的最大视频采集帧率。
3.根据权利要求1所述的方法,其特征在于,所述设定的帧率范围中设定有最小帧率;
根据所述目标直播视频帧,向直播服务器推送设定的帧率范围的直播视频流,包括:
每当获取到实时采集的一个直播视频帧时,将所述直播视频帧推送至所述直播服务器,并对计时器进行重新计时;
如果所述计时器计时至设定时长时仍未获取到新的所述直播视频帧,则获取所述目标直播视频帧,并将所述目标直播视频帧推送至所述直播服务器,并对所述计时器进行重新计时;
其中,所述设定时长与设定的帧率范围中最小帧率的帧周期相匹配。
4.根据权利要求1所述的方法,其特征在于,实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储,包括:
实时将最新采集得到的一个直播视频帧作为目标直播视频帧存储于设定缓存队列中;
根据所述目标直播视频帧,向直播服务器推送设定的固定帧率的直播视频流,包括:
根据所述固定帧率,确定至少一个定时推送时间点;
在到达每个所述定时推送时间点时,按入队顺序将所述缓存队列中缓存的一个直播视频帧推送至所述直播服务器,并将所述直播视频帧在所述缓存队列中释放;
如果在到达每个所述定时推送时间点时,所述缓存队列中只存在所述目标直播视频帧,则将所述目标直播视频帧推送至所述直播服务器,并在缓存队列中添加一个新的直播视频帧后将所述目标直播视频帧在缓存队列中释放。
5.根据权利要求1所述的方法,其特征在于,所述主播端的设备系统为iOS系统。
6.根据权利要求5所述的方法,其特征在于,所述以可变帧率实时采集得到的至少一个直播视频帧,至少包括:
通过iOS系统采集的与iOS主播端桌面对应的直播视频帧,或者,通过iOS系统采集的与iOS主播端摄像头对应的直播视频帧。
7.一种主播端直播视频帧处理装置,其特征在于,包括:
直播视频帧获取模块,用于获取直播过程中,以可变帧率实时采集得到的至少一个直播视频帧;
最新直播视频帧存储模块,用于实时将最新采集得到的一个直播视频帧作为目标直播视频帧进行更新存储;
稳定帧率推送模块,用于根据所述目标直播视频帧,向直播服务器推送设定的固定帧率,或者设定的帧率范围的直播视频流,以使所述直播服务器将所述直播视频流下发给对应的观众端进行播放。
8.一种直播系统,其特征在于,包括:直播服务器、执行如权利要求1-6任一项所述的方法的主播端,以及与所述主播端对应的至少一个观众端;其中,
所述主播端,用于向直播服务器推送设定的固定帧率或者设定的帧率范围的直播视频流;
所述直播服务器,用于在接收到与所述主播端对应的至少一个观众端发送的直播请求时,将与所述主播端对应的设定的固定帧率或者设定的帧率范围的直播视频流下发至对应的所述观众端;
所述观众端,用于接收所述直播服务器下发的与所述主播端对应的设定的固定帧率或者设定的帧率范围的直播视频流并播放。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN201910711592.0A 2019-08-02 2019-08-02 主播端直播视频帧处理方法、装置、设备、系统及介质 Pending CN110324654A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910711592.0A CN110324654A (zh) 2019-08-02 2019-08-02 主播端直播视频帧处理方法、装置、设备、系统及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910711592.0A CN110324654A (zh) 2019-08-02 2019-08-02 主播端直播视频帧处理方法、装置、设备、系统及介质

Publications (1)

Publication Number Publication Date
CN110324654A true CN110324654A (zh) 2019-10-11

Family

ID=68123409

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910711592.0A Pending CN110324654A (zh) 2019-08-02 2019-08-02 主播端直播视频帧处理方法、装置、设备、系统及介质

Country Status (1)

Country Link
CN (1) CN110324654A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110798700A (zh) * 2019-11-07 2020-02-14 网易(杭州)网络有限公司 视频处理方法、视频处理装置、存储介质与电子设备
CN111010588A (zh) * 2019-12-25 2020-04-14 广州酷狗计算机科技有限公司 直播处理方法、装置、存储介质及设备
CN111432248A (zh) * 2020-03-30 2020-07-17 北京百度网讯科技有限公司 直播视频流的质量监控方法和装置
CN112423072A (zh) * 2020-09-02 2021-02-26 上海幻电信息科技有限公司 直播场景下的视频推送方法及系统
WO2021104249A1 (zh) * 2019-11-29 2021-06-03 阿里巴巴集团控股有限公司 一种数据处理方法和装置,计算机存储介质和电子设备
CN113055733A (zh) * 2021-03-15 2021-06-29 深圳乐播科技有限公司 稳定帧率视频数据的生成方法、装置、设备及存储介质
CN113115111A (zh) * 2021-03-16 2021-07-13 广州朗国电子科技有限公司 一种录屏直播的视频帧率控制方法、系统及存储介质
CN115514985A (zh) * 2022-09-20 2022-12-23 广东省宏视智能科技有限公司 一种视频处理方法、装置、电子设备及存储介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130247125A1 (en) * 2002-12-10 2013-09-19 Ol2, Inc. System for Recursive Recombination of Streaming Interactive Video
CN103533386A (zh) * 2013-10-21 2014-01-22 腾讯科技(深圳)有限公司 一种直播控制方法,及主播设备
CN105578207A (zh) * 2015-12-18 2016-05-11 无锡天脉聚源传媒科技有限公司 一种视频帧率转换方法及装置
CN105847957A (zh) * 2016-05-27 2016-08-10 天脉聚源(北京)传媒科技有限公司 一种基于移动终端的现场直播方法及装置
CN105959717A (zh) * 2016-05-27 2016-09-21 天脉聚源(北京)传媒科技有限公司 一种基于移动终端的现场直播方法及装置
CN106303569A (zh) * 2016-08-18 2017-01-04 北京奇虎科技有限公司 一种直播视频流的传输方法、主播端设备
CN106487808A (zh) * 2016-11-21 2017-03-08 武汉斗鱼网络科技有限公司 一种直播视频动态上传方法及系统
WO2017099856A1 (en) * 2015-12-06 2017-06-15 Sliver VR Technologies, Inc. Methods and systems for game video recording and virtual reality replay
CN206452488U (zh) * 2016-10-19 2017-08-29 北京新唐思创教育科技有限公司 在线直播系统
CN107592548A (zh) * 2017-09-29 2018-01-16 哈尔滨市舍科技有限公司 一种实时全景直播拍照的图像采集装置及图像传输方法
CN108810585A (zh) * 2018-06-08 2018-11-13 四川乐望崇智科技有限公司 基于iOS系统手机的投屏方法
CN108989832A (zh) * 2017-05-31 2018-12-11 腾讯科技(深圳)有限公司 一种图像数据处理方法及其设备、存储介质、终端
CN109168013A (zh) * 2018-09-19 2019-01-08 广州华多网络科技有限公司 一种抽帧的方法、装置、设备及计算机可读存储介质

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130247125A1 (en) * 2002-12-10 2013-09-19 Ol2, Inc. System for Recursive Recombination of Streaming Interactive Video
CN103533386A (zh) * 2013-10-21 2014-01-22 腾讯科技(深圳)有限公司 一种直播控制方法,及主播设备
WO2017099856A1 (en) * 2015-12-06 2017-06-15 Sliver VR Technologies, Inc. Methods and systems for game video recording and virtual reality replay
CN105578207A (zh) * 2015-12-18 2016-05-11 无锡天脉聚源传媒科技有限公司 一种视频帧率转换方法及装置
CN105847957A (zh) * 2016-05-27 2016-08-10 天脉聚源(北京)传媒科技有限公司 一种基于移动终端的现场直播方法及装置
CN105959717A (zh) * 2016-05-27 2016-09-21 天脉聚源(北京)传媒科技有限公司 一种基于移动终端的现场直播方法及装置
CN106303569A (zh) * 2016-08-18 2017-01-04 北京奇虎科技有限公司 一种直播视频流的传输方法、主播端设备
CN206452488U (zh) * 2016-10-19 2017-08-29 北京新唐思创教育科技有限公司 在线直播系统
CN106487808A (zh) * 2016-11-21 2017-03-08 武汉斗鱼网络科技有限公司 一种直播视频动态上传方法及系统
CN108989832A (zh) * 2017-05-31 2018-12-11 腾讯科技(深圳)有限公司 一种图像数据处理方法及其设备、存储介质、终端
CN107592548A (zh) * 2017-09-29 2018-01-16 哈尔滨市舍科技有限公司 一种实时全景直播拍照的图像采集装置及图像传输方法
CN108810585A (zh) * 2018-06-08 2018-11-13 四川乐望崇智科技有限公司 基于iOS系统手机的投屏方法
CN109168013A (zh) * 2018-09-19 2019-01-08 广州华多网络科技有限公司 一种抽帧的方法、装置、设备及计算机可读存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110798700A (zh) * 2019-11-07 2020-02-14 网易(杭州)网络有限公司 视频处理方法、视频处理装置、存储介质与电子设备
CN110798700B (zh) * 2019-11-07 2022-03-04 网易(杭州)网络有限公司 视频处理方法、视频处理装置、存储介质与电子设备
WO2021104249A1 (zh) * 2019-11-29 2021-06-03 阿里巴巴集团控股有限公司 一种数据处理方法和装置,计算机存储介质和电子设备
CN111010588A (zh) * 2019-12-25 2020-04-14 广州酷狗计算机科技有限公司 直播处理方法、装置、存储介质及设备
CN111010588B (zh) * 2019-12-25 2022-05-17 成都酷狗创业孵化器管理有限公司 直播处理方法、装置、存储介质及设备
CN111432248A (zh) * 2020-03-30 2020-07-17 北京百度网讯科技有限公司 直播视频流的质量监控方法和装置
CN112423072A (zh) * 2020-09-02 2021-02-26 上海幻电信息科技有限公司 直播场景下的视频推送方法及系统
CN113055733A (zh) * 2021-03-15 2021-06-29 深圳乐播科技有限公司 稳定帧率视频数据的生成方法、装置、设备及存储介质
CN113115111A (zh) * 2021-03-16 2021-07-13 广州朗国电子科技有限公司 一种录屏直播的视频帧率控制方法、系统及存储介质
CN115514985A (zh) * 2022-09-20 2022-12-23 广东省宏视智能科技有限公司 一种视频处理方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN110324654A (zh) 主播端直播视频帧处理方法、装置、设备、系统及介质
US10687123B2 (en) Transmission apapratus, transmission method, reception apparatus, reception method, program, and broadcasting system
CN108737405A (zh) 一种对直播视频流进行导流的方法、ccl服务器和系统
EP3334175A1 (en) Streaming media and caption instant synchronization displaying and matching processing method, device and system
US20130097642A1 (en) Aggregation of multiple media streams to a user
CN110876080B (zh) 视频投屏方法、装置、计算机设备及存储介质
US11825034B2 (en) Bullet screen delivery method for live broadcast playback and live video bullet screen playback method
CN109565620A (zh) 低延迟http实时流传输
CN109089130A (zh) 一种调整直播视频的时间戳的方法和装置
CN102665131A (zh) 一种网络视频服务系统接收端的视频缓冲方法
WO2020134791A1 (zh) 流媒体数据的混流方法、装置及存储介质、计算机设备
CN103200461A (zh) 一种多台播放终端同步播放系统及播放方法
CN101557512B (zh) 视频终端接收视频数据延时的处理方法
CN102845072A (zh) 改进的媒体内容回放质量
CN111447455A (zh) 直播视频流回放处理方法、装置及计算设备
CN108769816B (zh) 一种视频播放方法、装置及存储介质
CN111726641A (zh) 直播视频的播放处理方法、装置及服务器
CN106604064A (zh) 一种快速开播方法及装置
CN109089131A (zh) 一种基于ios系统的录屏直播方法、装置、设备及存储介质
CN104683866A (zh) 一种接收视频流的播放处理方法
CN106658030A (zh) 一种包含单路音频多路视频的复合视频的播放方法及设备
CN108174267A (zh) 直播中互动信息的发送装置、方法及计算机可读存储介质
US9313273B2 (en) Pull-configured distribution of imagery
CN102223539A (zh) 图像编码丢帧花屏的处理方法
US11451879B2 (en) Controlling playout of advertisement content during video-on-demand video streaming on an end-user terminal

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20191011

RJ01 Rejection of invention patent application after publication