CN110677687B - 一种支持延时的直播转码方法及系统 - Google Patents

一种支持延时的直播转码方法及系统 Download PDF

Info

Publication number
CN110677687B
CN110677687B CN201911000163.9A CN201911000163A CN110677687B CN 110677687 B CN110677687 B CN 110677687B CN 201911000163 A CN201911000163 A CN 201911000163A CN 110677687 B CN110677687 B CN 110677687B
Authority
CN
China
Prior art keywords
stream
live
transcoding
switching
live 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.)
Active
Application number
CN201911000163.9A
Other languages
English (en)
Other versions
CN110677687A (zh
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.)
SHANGHAI WONDERTEK SOFTWARE CO Ltd
Original Assignee
SHANGHAI WONDERTEK SOFTWARE 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 SHANGHAI WONDERTEK SOFTWARE CO Ltd filed Critical SHANGHAI WONDERTEK SOFTWARE CO Ltd
Priority to CN201911000163.9A priority Critical patent/CN110677687B/zh
Publication of CN110677687A publication Critical patent/CN110677687A/zh
Application granted granted Critical
Publication of CN110677687B publication Critical patent/CN110677687B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing 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
    • H04N21/234309Processing 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 by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Studio Circuits (AREA)

Abstract

本发明公开了一种支持延时的直播转码方法及系统,该方法包括以下步骤:S1:建立直播转码任务,并设定所述直播转码任务的第一延时时间、主直播源、垫片;S2:启动所述直播转码任务,将所述垫片设为所述直播转码任务的输入流,对所述垫片进行转码输出;S3:当所述主直播源输出主直播数据时,开始对所述主直播数据进行缓存,得到主直播流;S4:从所述主直播数据的输出时刻开始计时,经过所述第一延时时间,则将所述输入流切换为所述主直播流,对所述主直播流进行转码输出。同时,本发明还可以在直播转码过程中进行延时,且具有转码输入流自动切流和手动切流的功能,本发明具有推流端延时、直播推流门槛低、适用范围广、成本低的技术特点。

Description

一种支持延时的直播转码方法及系统
技术领域
本发明属于音视频直播技术领域,尤其涉及一种支持延时的直播转码方法及系统。
背景技术
随着电视直播和现场直播等直播形式需求量的激增,流媒体在直播转码方面的应用得到迅速发展。随着流媒体技术的发展,直播节目的实时性、画面清晰度等技术方面的性能有了很大的改善。但在直播过程中存在的人为方面的因素很难通过技术的改进来避免其发生,因此直播的延时技术逐渐得到重视。通过延时直播方法能够为技术人员提供足够的时间解决直播过程中不符合法律规定或道德规范的内容,防止直播内容给社会造成不良的影响。
目前延时直播的方法主要是采用延时设备,在播出通道中控制直播,延时设备作为外接硬件设备,价格昂贵,一般适用于音视频专业直播。在全民皆可直播的时代,随着视频直播技术的发展和多终端、多平台观看需求,在线转码系统已经成为了直播中不可或缺的组件,随着直播的愈发火热,在目前的很多现场直播场景中,如手机直播,在线转码系统并不具备推流端延时功能,且延时设备也不适合与手机等直播工具进行适配。
发明内容
本发明的技术目的是提供一种支持延时的直播转码方法及系统,具有推流端延时、直播推流门槛低、适用范围广、成本低的技术特点。
为解决上述问题,本发明的技术方案为:
一种支持延时的直播转码方法,包括以下步骤:
S1:建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片;
S2:启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出;
S3:当主直播源输出主直播数据时,开始对主直播数据进行缓存,得到主直播流;
S4:从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。
进一步优选的,步骤S4具体还包括以下步骤:在主直播流的转码输出过程中,若接收到延时请求,则根据延时请求设定直播转码任务的第二延时时间;根据延时请求将输入流暂时切换为垫片,对垫片进行转码输出,经过第二延时时间再将输入流切换为主直播流,继续对主直播流进行转码输出。
进一步优选的,步骤S1还包括:设定直播转码任务的备用直播源;步骤S3还包括:当备用直播源输出备用直播数据时,开始对备用直播数据进行缓存,得到备源流。
进一步优选的,步骤S1还包括:设定直播转码任务的自动切流优先级;步骤S4具体还包括以下步骤:在转码输出过程中,根据直播转码任务的信号连接状况和自动切流优先级,对输入流进行自动切换:在主直播流、备源流、垫片中,若有信号连接中断或有信号中断恢复,则将输入流切换为连接正常的信号中自动切流优先级最高的一信号。
进一步优选的,步骤S4具体还包括以下步骤:在转码输出过程中,若接收到手动切流请求,则根据手动切流请求对输入流进行切换:若手动切流请求为主直播切流请求,则将输入流切换为主直播流,并将主直播流设定为自动切流优先级的最高优先级;若手动切流请求为备用直播切流请求,则将输入流切换为备源流,并将备源流设定为自动切流优先级的最高优先级;若手动切流请求为垫片切流请求,则将输入流切换为垫片,并将垫片设定为自动切流优先级的最高优先级。
本发明还提供一种直播转码动态延时系统,包括:配置模块,用于建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片;转码延时模块,用于启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出;数据存储模块,用于当主直播源输出主直播数据时,开始对主直播数据进行缓存,得到主直播流;转码延时模块还用于从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。
进一步优选的,还包括动态更新延时模块,用于在主直播流的转码输出过程中,接收延时请求,并根据延时请求设定直播转码任务的第二延时时间;转码延时模块还用于根据延时请求将输入流暂时切换为垫片,对垫片进行转码输出,经过第二延时时间再将输入流切换为主直播流,继续对主直播流进行转码输出。
进一步优选的,配置模块还用于设定直播转码任务的备用直播源;数据存储模块还用于当备用直播源输出备用直播数据时,开始对备用直播数据进行缓存,得到备源流。
进一步优选的,还包括自动切流模块;配置模块还用于设定直播转码任务的自动切流优先级;自动切流模块用于在转码输出过程中,根据直播转码任务的信号连接状况和自动切流优先级,对输入流进行自动切换:在主直播流、备源流、垫片中,若有信号连接中断或有信号中断恢复,则将输入流切换为连接正常的信号中自动切流优先级最高的一信号。
进一步优选的,还包括手动切流模块,用于在转码输出过程中,接收手动切流请求,并根据手动切流请求对直输入流进行切换:若手动切流请求为主直播切流请求,则将输入流切换为主直播流,并将主直播流设定为自动切流优先级的最高优先级;若手动切流请求为备用直播切流请求,则将输入流切换为备源流,并将备源流设定为自动切流优先级的最高优先级;若手动切流请求为垫片切流请求,则将输入流切换为垫片,并将垫片设定为自动切流优先级的最高优先级。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如前的支持延时的直播转码方法。
本发明还提供了一种计算机设备,包括存储器和处理器以及存储在存储器上并可被处理器调用的计算机程序,处理器执行计算机程序时,实现如前的支持延时的直播转码方法。
本发明与现有技术相比具有以下的优点和积极效果:
1)本发明在不引入外部组件的情况下,通过对主直播源进行缓存得到主直播流,再根据第一延时时间对主直播流进行延时输出,延时输出前通过视频或图片等垫片维持转码的正常工作,实现了延时直播的功能,简化了延时直播的流程,节约了实现延时直播的成本,达到了推流端延时、直播推流门槛低、适用范围广、成本低的技术效果;
2)本发明可在任务启动时设定第一延时时间也可在运行中设定第二延时时间,并配合垫片灵活实现直播的动态延时,可根据需求随时进行直播延时,提高了直播的延时灵活性、实用性、及时性;
3)本发明实现主直播流、备源流、垫片自动和手动切换功能,自动切换功能可在任意信号中断或者中断恢复时,根据自动切流优先级将输入流切换为信号连接正常中优先级最高的信号,防止直播时出现完全中断的情况,而手动切换功能可重新确定输入流的自动切流优先级高低,同时也可以直播存在不符合法律规定或道德规范的内容的时候进行手动切换,达到了直播安全稳定的技术效果。
附图说明
图1为本发明的一种支持延时的直播转码方法的流程图;
图2为本发明的一种支持延时的直播转码系统的框架示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
以下结合附图和具体实施例对本发明提出的一种支持延时的直播转码方法及系统作进一步详细说明。
实施例1
参看图1,本申请提供了一种支持延时的直播转码方法,包括以下步骤:
S1:建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片;
S2:启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出;
S3:当主直播源输出主直播数据时,开始对主直播数据进行缓存,得到主直播流;
S4:从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。
下面对本发明的方法进行更具体的描述,但不应以此为限。
步骤S1:处理器或计算单元建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片。具体地,第一延时时间是初始设定的直播延时时间,即现场直播的实际开始时间与直播节目的播放时间之间的时间间隔,主直播源为直播流地址,根据直播流地址可拉取到音视频的拍摄设备采集的音视频数据,拍摄设备如摄像机、手机等等,垫片为已经录制好的音视频内容,如广告视频、图片、歌曲等等。
步骤S2:处理器或计算单元启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出。具体地,启动直播转码任务后,转码必须有输出,故在主直播源的主直播数据到来前,首先采用已经存在的垫片进行转码输出。
步骤S3:当主直播源输出主直播数据时,处理器或计算单元开始对主直播数据进行缓存,得到主直播流。具体地,拍摄设备采集直播内容生成主直播数据,主直播源输出主直播数据,即为现场直播的实际开始的时候,处理器或计算单元从此刻开始将主直播数据缓存至存储单元,存储单元内的主直播数据,这里称为主直播流。
步骤S4:处理器或计算单元从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。具体地,第一延时时间为相对时间,即延时播出的时间间隔,处理器或计算单元从现场直播的实际开始时间计算,经过第一延时时间后,开始从缓存中将主直播流替换垫片作为转码的输入流,以进行主直播流的转码输出,即输出直播内容,如此,在客户端即可接收到直播内容,该接收到的直播内容与实际直播的时间相差第一延时时间,从而实现了直播的延时。
本实施例在不引入外部组件的情况下,通过对主直播源进行缓存得到主直播流,再根据第一延时时间对主直播流进行延时输出,延时输出前通过视频或图片等垫片维持转码的正常工作,实现了延时直播的功能,简化了延时直播的流程,节约了实现延时直播的成本,达到了推流端延时、直播推流门槛低、适用范围广、成本低的技术效果。
较优地,步骤S4具体还包括以下步骤:在主直播流的转码输出过程中,处理器或计算单元若接收到延时请求,则根据延时请求设定直播转码任务的第二延时时间;根据延时请求将输入流暂时切换为垫片,对垫片进行转码输出,经过第二延时时间再将输入流切换为主直播流,继续对主直播流进行转码输出。
具体地,本实施例不仅可以在直播开始之前进行直播延时,也可以在直播过程中进行直播延时,当用户发送延时请求,处理器或计算单元接收到延时请求,根据延时请求中的第二延时时间进行设定,首先将当前转码的输入流切换成垫片,以维持转码进程的持续,其次切换成垫片的那刻起计时,经过第二延时时间之后,将输入流再切换回主直播流,继续对主直播流进行转码输出,如此,在转码直播过程中可进行直播延迟,若转码直播过程中用户还想进行直播延时,可重复上述步骤即可再次对直播进行延迟。
本实施例可在任务启动时设定第一延时时间也可在运行中设定第二延时时间,并配合垫片灵活实现直播的动态延时,可根据需求随时进行直播延时,提高了直播的延时灵活性、实用性、及时性。
较优地,步骤S1还包括:处理器或计算单元设定直播转码任务的备用直播源、自动切流优先级,备用直播源可以是现场直播的不同方位的拍摄设备所采集的数据,或者不同直播现场的拍摄设备所采集的数据,自动切流优先级为转码的输入流切换的优先顺序,自动切流优先级用于转码的输入流的自动切换,如主直播流>备源流>垫片,即转码的输入流优先切换为主直播源,其次备源流,最后为垫片。步骤S3还包括:当备用直播源输出备用直播数据时,处理器或计算单元开始对备用直播数据进行缓存,得到备源流,如此,基于主直播流的延时方法,备源流同样地,在直播转码前或直播转码过程中,进行备源流的直播转码延时。
具体地,步骤S4具体还包括以下步骤:在转码输出过程中,处理器或计算单元可根据直播转码任务的信号连接状况和自动切流优先级,对输入流进行自动切换,在主直播流、备源流、垫片中,若有信号连接中断或有信号中断恢复,则将输入流切换为连接正常的信号中自动切流优先级最高的一信号。例如,自动切流优先级为主直播流>备源流>垫片时,当主直播流结束或者中断时,能够自动切换为备源流,该备源流同时也可具有延时效果,当备源流结束或者备源流中断时,能够自动切换为垫片,如此便能够应对信号连接的突发状况有一自我切流的过程,如在信号不稳定时,不会因为信号中断而直播节目中断,确保了直播节目的稳定性。
相对于自动切流,本实施例还可以手动切流及自动切流优先级调整,具体地,步骤S4具体还包括以下步骤:在转码输出过程中,处理器或计算单元若接收到手动切流请求,则根据手动切流请求对输入流进行切换:若手动切流请求为主直播切流请求,则将输入流切换为主直播流,并将主直播流设定为自动切流优先级的最高优先级;若手动切流请求为备用直播切流请求,则将输入流切换为备源流,并将备源流设定为自动切流优先级的最高优先级;若手动切流请求为垫片切流请求,则将输入流切换为垫片,并将垫片设定为自动切流优先级的最高优先级。例如,原自动切流优先级为主直播流>备源流>垫片,当用户发送备用直播切流请求,处理器或计算单元会将输入流切换为备源流,并将备源流设定为自动切流优先级的最高优先级,即自动切流优先级为备源流>主直播流>垫片。如此,当现场直播过程中存在不符合法律规定或道德规范的内容的时候,可以选择手动切换到备源流,也可以选择切换到垫片,避免了直播事故的发生。
本实施例实现主直播流、备源流、垫片自动和手动切换功能,自动切换功能可在任意信号中断或者中断恢复时,根据自动切流优先级将输入流切换为信号连接正常中优先级最高的信号,防止直播时出现完全中断的情况,而手动切换功能可重新确定输入流的自动切流优先级高低,同时也可以直播存在不符合法律规定或道德规范的内容的时候进行手动切换,达到了直播安全稳定的技术效果。
实施例2
参看图2,本申请提供了一种基于实施例1的直播转码动态延时系统,包括:配置模块,用于建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片;转码延时模块,用于启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出;数据存储模块,用于当主直播源输出主直播数据时,开始对主直播数据进行缓存,得到主直播流;转码延时模块还用于从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。
参看图2,下面对本发明的系统进行更具体的描述,但不应以此为限。
配置模块建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片。具体地,第一延时时间是初始设定的直播延时时间,即现场直播的实际开始时间与直播节目的播放时间之间的时间间隔,主直播源为直播流地址,根据直播流地址可拉取到音视频的拍摄设备采集的音视频数据,拍摄设备如摄像机、手机等等,垫片为已经录制好的音视频内容,如广告视频、图片、歌曲等等。
转码延时模块启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出。具体地,启动直播转码任务后,转码必须有输出,故在主直播源的主直播数据到来前,首先采用已经存在的垫片进行转码输出。
当主直播源输出主直播数据时,数据存储模块开始对主直播数据进行缓存,得到主直播流。具体地,拍摄设备采集直播内容生成主直播数据,主直播源输出主直播数据,即为现场直播的实际开始的时候,数据存储模块从此刻开始将主直播数据缓存至存储单元,存储单元内的主直播数据,这里称为主直播流。
转码延时模块从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。具体地,第一延时时间为相对时间,即延时播出的时间间隔,转码延时模块从现场直播的实际开始时间计算,经过第一延时时间后,开始从缓存中将主直播流替换垫片作为转码的输入流,以进行主直播流的转码输出,即输出直播内容,如此,在客户端即可接收到直播内容,该接收到的直播内容与实际直播的时间相差第一延时时间,从而实现了直播的延时。
本实施例在不引入外部组件的情况下,通过对主直播源进行缓存得到主直播流,再根据第一延时时间对主直播流进行延时输出,延时输出前通过视频或图片等垫片维持转码的正常工作,实现了延时直播的功能,简化了延时直播的流程,节约了实现延时直播的成本,达到了推流端延时、直播推流门槛低、适用范围广、成本低的技术效果。
较优地,本实施例还包括动态更新延时模块,在主直播流的转码输出过程中,动态更新延时模块若接收到延时请求,则根据延时请求设定直播转码任务的第二延时时间;然后转码延时模块根据延时请求将输入流暂时切换为垫片,对垫片进行转码输出,经过第二延时时间再将输入流切换为主直播流,继续对主直播流进行转码输出。
具体地,本实施例不仅可以在直播开始之前进行直播延时,也可以在直播过程中进行直播延时,当用户发送延时请求,动态更新延时模块接收到延时请求,根据延时请求中的第二延时时间进行设定,然后,转码延时模块首先将当前转码的输入流切换成垫片,以维持转码进程的持续,其次切换成垫片的那刻起计时,经过第二延时时间之后,将输入流再切换回主直播流,继续对主直播流进行转码输出,如此,在转码直播过程中可进行直播延迟,若转码直播过程中用户还想进行直播延时,可重复上述操作即可再次对直播进行延迟。
本实施例可在任务启动时设定第一延时时间也可在运行中设定第二延时时间,并配合垫片灵活实现直播的动态延时,可根据需求随时进行直播延时,提高了直播的延时灵活性、实用性、及时性。
较优地,配置模块还可设定直播转码任务的备用直播源、自动切流优先级,备用直播源可以是现场直播的不同方位的拍摄设备所采集的数据,或者不同直播现场的拍摄设备所采集的数据,自动切流优先级为转码的输入流切换的优先顺序,自动切流优先级用于转码的输入流的自动切换,如主直播流>备源流>垫片,即转码的输入流优先切换为主直播源,其次备源流,最后为垫片。较优地,当备用直播源输出备用直播数据时,数据存储模块开始对备用直播数据进行缓存,得到备源流,如此,基于主直播流的延时方法,备源流同样地,在直播转码前或直播转码过程中,进行备源流的直播转码延时。
具体地,本实施例还包括自动切流模块,在转码输出过程中,自动切流模块可根据直播转码任务的信号连接状况和自动切流优先级,对输入流进行自动切换,在主直播流、备源流、垫片中,若有信号连接中断或有信号中断恢复,则将输入流切换为连接正常的信号中自动切流优先级最高的一信号。例如,自动切流优先级为主直播流>备源流>垫片时,当主直播流结束或者中断时,能够自动切换为备源流,该备源流同时也可具有延时效果,当备源流结束或者备源流中断时,能够自动切换为垫片,如此便能够应对信号连接的突发状况有一自我切流的过程,如在信号不稳定时,不会因为信号中断而直播节目中断,确保了直播节目的稳定性。
相对于自动切流模块,本实施例还包括手动切流模块,具体地,在转码输出过程中,手动切流模块若接收到手动切流请求,则根据手动切流请求对输入流进行切换:若手动切流请求为主直播切流请求,则将输入流切换为主直播流,并将主直播流设定为自动切流优先级的最高优先级;若手动切流请求为备用直播切流请求,则将输入流切换为备源流,并将备源流设定为自动切流优先级的最高优先级;若手动切流请求为垫片切流请求,则将输入流切换为垫片,并将垫片设定为自动切流优先级的最高优先级。例如,原自动切流优先级为主直播流>备源流>垫片,当用户发送备用直播切流请求,手动切流模块会将输入流切换为备源流,并将备源流设定为自动切流优先级的最高优先级,即自动切流优先级为备源流>主直播流>垫片。如此,当现场直播过程中存在不符合法律规定或道德规范的内容的时候,可以选择手动切换到备源流,也可以选择切换到垫片,避免了直播事故的发生。
本实施例实现主直播流、备源流、垫片自动和手动切换功能,自动切换功能可在任意信号中断或者中断恢复时,根据自动切流优先级将输入流切换为信号连接正常中优先级最高的信号,防止直播时出现完全中断的情况,而手动切换功能可重新确定输入流的自动切流优先级高低,同时也可以直播存在不符合法律规定或道德规范的内容的时候进行手动切换,达到了直播安全稳定的技术效果。
实施例3
基于如实施例1相同的发明构思,本实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如实施例1的支持延时的直播转码方法。
本实施例中的计算机可读存储介质存储有能够被处理器执行的计算机程序,该计算机程序在执行时,首先建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片,其次,启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出,然后,当主直播源输出主直播数据时,开始对主直播数据进行缓存,得到主直播流,最后,从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。
本实施例在不引入外部组件的情况下,通过对主直播源进行缓存得到主直播流,再根据第一延时时间对主直播流进行延时输出,延时输出前通过视频或图片等垫片维持转码的正常工作,实现了延时直播的功能,简化了延时直播的流程,节约了实现延时直播的成本,达到了推流端延时、直播推流门槛低、适用范围广、成本低的技术效果。
实施例4
基于如实施例1相同的发明构思,本实施例还提供了一种计算机设备,包括存储器和处理器以及存储在存储器上并可被处理器调用的计算机程序,处理器执行计算机程序时,实现如实施例1的一种支持延时的直播转码方法。
本实施例中的计算机设备的处理器在执行动态切换视频流的直播转码方法过程中,首先建立直播转码任务,并设定直播转码任务的第一延时时间、主直播源、垫片,其次,启动直播转码任务,将垫片设为直播转码任务的输入流,对垫片进行转码输出,然后,当主直播源输出主直播数据时,开始对主直播数据进行缓存,得到主直播流,最后,从主直播数据的输出时刻开始计时,经过第一延时时间,则将输入流切换为主直播流,对主直播流进行转码输出。
本实施例在不引入外部组件的情况下,通过对主直播源进行缓存得到主直播流,再根据第一延时时间对主直播流进行延时输出,延时输出前通过视频或图片等垫片维持转码的正常工作,实现了延时直播的功能,简化了延时直播的流程,节约了实现延时直播的成本,达到了推流端延时、直播推流门槛低、适用范围广、成本低的技术效果。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式。即使对本发明作出各种变化,倘若这些变化属于本发明权利要求及其等同技术的范围之内,则仍落入在本发明的保护范围之中。

Claims (8)

1.一种支持延时的直播转码方法,其特征在于,包括以下步骤:
S1:建立直播转码任务,并设定所述直播转码任务的第一延时时间、主直播源、垫片;
S2:启动所述直播转码任务,将所述垫片设为所述直播转码任务的输入流,对所述垫片进行转码输出;
S3:当所述主直播源输出主直播数据时,开始对所述主直播数据进行缓存,得到主直播流;
S4:从所述主直播数据的输出时刻开始计时,经过所述第一延时时间,则将所述输入流切换为所述主直播流,对所述主直播流进行转码输出;
所述步骤S1还包括:设定所述直播转码任务的备用直播源,设定所述直播转码任务的自动切流优先级;
所述步骤S3还包括:当所述备用直播源输出备用直播数据时,开始对所述备用直播数据进行缓存,得到备源流;在转码输出过程中,根据所述直播转码任务的信号连接状况和所述自动切流优先级,对所述输入流进行自动切换;
在所述主直播流、所述备源流、所述垫片中,若有信号连接中断或有信号中断恢复,则将所述输入流切换为连接正常的信号中所述自动切流优先级最高的一信号。
2.根据权利要求1所述的支持延时的直播转码方法,其特征在于,所述步骤S4具体还包括以下步骤:
在所述主直播流的转码输出过程中,若接收到延时请求,则根据所述延时请求设定所述直播转码任务的第二延时时间;
根据所述延时请求将所述输入流暂时切换为所述垫片,对所述垫片进行转码输出,经过所述第二延时时间再将所述输入流切换为所述主直播流,继续对所述主直播流进行转码输出。
3.根据权利要求1所述的支持延时的直播转码方法,其特征在于,所述步骤S4具体还包括以下步骤:在转码输出过程中,若接收到手动切流请求,则根据所述手动切流请求对所述输入流进行切换:
若所述手动切流请求为主直播切流请求,则将所述输入流切换为所述主直播流,并将所述主直播流设定为所述自动切流优先级的最高优先级;
若所述手动切流请求为备用直播切流请求,则将所述输入流切换为所述备源流,并将所述备源流设定为所述自动切流优先级的最高优先级;
若所述手动切流请求为垫片切流请求,则将所述输入流切换为所述垫片,并将所述垫片设定为所述自动切流优先级的最高优先级。
4.一种直播转码动态延时系统,其特征在于,包括:
配置模块,用于建立直播转码任务,并设定所述直播转码任务的第一延时时间、主直播源、垫片;
转码延时模块,用于启动所述直播转码任务,将所述垫片设为所述直播转码任务的输入流,对所述垫片进行转码输出;
数据存储模块,用于当所述主直播源输出主直播数据时,开始对所述主直播数据进行缓存,得到主直播流;
所述转码延时模块还用于从所述主直播数据的输出时刻开始计时,经过所述第一延时时间,则将所述输入流切换为所述主直播流,对所述主直播流进行转码输出;
所述配置模块还用于设定所述直播转码任务的备用直播源;
所述数据存储模块还用于当所述备用直播源输出备用直播数据时,开始对所述备用直播数据进行缓存,得到备源流;
还包括自动切流模块;
所述配置模块还用于设定所述直播转码任务的自动切流优先级;
所述自动切流模块用于在转码输出过程中,根据所述直播转码任务的信号连接状况和所述自动切流优先级,对所述输入流进行自动切换:
在所述主直播流、所述备源流、所述垫片中,若有信号连接中断或有信号中断恢复,则将所述输入流切换为连接正常的信号中所述自动切流优先级最高的一信号。
5.根据权利要求4所述的直播转码动态延时系统,其特征在于,还包括动态更新延时模块,用于在所述主直播流的转码输出过程中,接收延时请求,并根据所述延时请求设定所述直播转码任务的第二延时时间;
所述转码延时模块还用于根据所述延时请求将所述输入流暂时切换为所述垫片,对所述垫片进行转码输出,经过所述第二延时时间再将所述输入流切换为所述主直播流,继续对所述主直播流进行转码输出。
6.根据权利要求4所述的直播转码动态延时系统,其特征在于,还包括手动切流模块,用于在转码输出过程中,接收手动切流请求,并根据所述手动切流请求对所述输入流进行切换:
若所述手动切流请求为主直播切流请求,则将所述输入流切换为所述主直播流,并将所述主直播流设定为所述自动切流优先级的最高优先级;
若所述手动切流请求为备用直播切流请求,则将所述输入流切换为所述备源流,并将所述备源流设定为所述自动切流优先级的最高优先级;
若所述手动切流请求为垫片切流请求,则将所述输入流切换为所述垫片,并将所述垫片设定为所述自动切流优先级的最高优先级。
7.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该计算机程序被处理器执行时,实现如权利要求1-3中任意一项所述的支持延时的直播转码方法。
8.一种计算机设备,其特征在于,包括存储器和处理器以及存储在存储器上并可被处理器调用的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-3中任意一项所述的支持延时的直播转码方法。
CN201911000163.9A 2019-10-21 2019-10-21 一种支持延时的直播转码方法及系统 Active CN110677687B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911000163.9A CN110677687B (zh) 2019-10-21 2019-10-21 一种支持延时的直播转码方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911000163.9A CN110677687B (zh) 2019-10-21 2019-10-21 一种支持延时的直播转码方法及系统

Publications (2)

Publication Number Publication Date
CN110677687A CN110677687A (zh) 2020-01-10
CN110677687B true CN110677687B (zh) 2023-01-24

Family

ID=69083187

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911000163.9A Active CN110677687B (zh) 2019-10-21 2019-10-21 一种支持延时的直播转码方法及系统

Country Status (1)

Country Link
CN (1) CN110677687B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115967825A (zh) * 2022-12-27 2023-04-14 上海哔哩哔哩科技有限公司 直播转码方法及系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9538003B2 (en) * 2009-09-18 2017-01-03 Audionow Ip Holdings, Llc System and method for interactive advertisement augmentation via a called voice connection
US8752112B2 (en) * 2012-04-12 2014-06-10 Google Inc. Live streaming video processing
CN102710969B (zh) * 2012-05-31 2015-02-11 北京冠华天视数码科技有限公司 通过无线网络传输直播数据的方法及其系统
CN103634610B (zh) * 2012-08-24 2018-02-16 中兴通讯股份有限公司 直播内容分发系统及方法
CN103051939B (zh) * 2012-12-31 2014-03-12 中央电视台 一种中插广告编排处理的方法
US8949912B2 (en) * 2013-03-12 2015-02-03 Centurylink Intellectual Property Llc ABR live to VOD system and method
US9838725B2 (en) * 2015-04-27 2017-12-05 Century Link Intellectual Property LLC Intelligent video streaming system
CN105828107A (zh) * 2016-03-30 2016-08-03 乐视控股(北京)有限公司 一种直播延时方法及装置
CN107426582A (zh) * 2017-06-09 2017-12-01 苏州蜗牛数字科技股份有限公司 一种rtmp直播流无缝切换系统及方法
CN107197360B (zh) * 2017-06-14 2019-11-29 杭州当虹科技股份有限公司 一种直播信号安全播出的方法及系统
CN107835192B (zh) * 2017-11-29 2020-12-15 上海网达软件股份有限公司 一种检测实时转码系统中hls直播流是否正常的方法及系统
CN108712422B (zh) * 2018-05-18 2021-05-25 网宿科技股份有限公司 一种创建转码任务的方法和装置
CN110213598B (zh) * 2018-05-31 2021-10-15 腾讯科技(深圳)有限公司 一种视频转码系统、方法及相关产品
CN110213600A (zh) * 2019-04-29 2019-09-06 网易(杭州)网络有限公司 视频直播方法、装置及设备

Also Published As

Publication number Publication date
CN110677687A (zh) 2020-01-10

Similar Documents

Publication Publication Date Title
CN108347622B (zh) 多媒体数据推送方法、装置、存储介质及设备
US9038114B2 (en) Media content shifting
EP3562163A1 (en) Audio-video synthesis method and system
CN110708564B (zh) 一种动态切换视频流的直播转码方法及系统
CN100515079C (zh) 一种在iptv中实现画中画的方法
KR20180031547A (ko) 서버에서 멀티 비트 레이트 스트림 미디어를 적응적으로 제공하기 위한 방법 및 장치
CN111010614A (zh) 一种显示直播字幕的方法、装置、服务器及介质
CA2758763C (en) Method and device for fast pushing unicast stream in fast channel change
EP3697088A1 (en) Video sending and receiving method, device, and terminal
CN106998485B (zh) 视频直播方法及装置
US20040183896A1 (en) Cooperative application system, cooperative application method, and network terminal
CN111404882B (zh) 媒体流处理方法及装置
US10097746B2 (en) Method and system for dynamically adjusting a camera setting for a video stream
US6380983B1 (en) TV receiver with selectable signal processing systems
CN113225585A (zh) 一种视频清晰度的切换方法、装置、电子设备以及存储介质
CN115250356A (zh) 手机多机位可切换虚拟摄像头
CN110677687B (zh) 一种支持延时的直播转码方法及系统
CN112468876A (zh) 资源播放方法、装置、系统及可读存储介质
JP2022171421A (ja) 映像作成装置、番組制作システムおよびプログラム
CN111416994B (zh) 视频流和跟踪信息的同步呈现的方法、装置及电子设备
US6101311A (en) Moving picture and audio data reproducing method and system therefor
EP2884742A1 (en) Process for increasing the resolution and the visual quality of video streams exchanged between users of a video conference service
JP2009135769A (ja) 画像処理装置
CN113612728B (zh) 流媒体播放方法、传输设备和系统
KR100643981B1 (ko) 주문형 비디오 컨텐츠 녹화 방법

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