CN105100819A - 用于多个流的协调拼接的方法和设备 - Google Patents

用于多个流的协调拼接的方法和设备 Download PDF

Info

Publication number
CN105100819A
CN105100819A CN201510437372.5A CN201510437372A CN105100819A CN 105100819 A CN105100819 A CN 105100819A CN 201510437372 A CN201510437372 A CN 201510437372A CN 105100819 A CN105100819 A CN 105100819A
Authority
CN
China
Prior art keywords
stream
splicing
frame
sop
chance
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
CN201510437372.5A
Other languages
English (en)
Inventor
迪潘库马尔·梅达
德文德拉库马尔·班克尔
达尔吉特·考尔
拉克沙·特里帕蒂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vubites India Private Ltd
Original Assignee
Vubites India Private 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 Vubites India Private Ltd filed Critical Vubites India Private Ltd
Publication of CN105100819A publication Critical patent/CN105100819A/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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • 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/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • 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/44016Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Replacement Of Web Rolls (AREA)

Abstract

本发明公开一种用于多个流的协调拼接的方法和设备。在一个实施方式中,本发明公开一种用于控制第一数据流的数个流的流程的方法和设备。此外,本发明公开一种用于选择第一数据流的数个流的拼接机会点的方法和设备。

Description

用于多个流的协调拼接的方法和设备
本申请是申请人于2011年12月27日提交的、申请号为“201080030058.0”的、名称为“用于多个流的协调拼接的方法和设备”的专利申请的分案申请。
相关申请案的交叉参照
本申请案请求享有2009年4月28日提交的印度临时专利申请案号1120/MUM/2009的权益,所述临时专利申请案通过参照的方式并入本文。
技术领域
本发明的实施方式一般来说涉及数字处理技术,且更明确地说,涉及用于在数字传输系统中拼接压缩数据流的方法和设备。
背景技术
在通信系统内,网络带宽在多媒体信号的传输期间起重要作用。各种多媒体服务(例如,广播服务、视频点播(videoondemand)服务、视频电话服务等)产生了多媒体信号。一般来说,多媒体信号具有极大带宽且占用网络带宽的大部分。因此,开发了各种压缩标准(例如,运动图像专家组(例如,MPEG-1、MPEG-2)、H.26X等),以去除多媒体信号中的数据冗余。如所述压缩标准定义的各种压缩技术用于产生压缩多媒体信号。压缩多媒体信号相对占用较少网络带宽。并且,压缩多媒体信号一般包括编码帧,例如,编码图像帧、编码音频帧、编码数据帧等。
已开发各种数字系统以对编码多媒体信号进行处理(例如,广播、拼接等)。一方面,压缩技术降低了多媒体信号的带宽要求,另一方面,压缩技术已不经意间增加了数字系统的复杂性。例如,在典型拼接操作中,数字系统配置成首先对压缩多媒体信号进行解码并随后将解码多媒体信号的至少一或更多个帧(例如,图像帧)替换为其它帧。此外,在完成拼接操作后,数字系统配置成使用前述压缩标准对解码多媒体信号进行重新编码。多媒体信号的这种解码和重新编码影响压缩多媒体信号的质量并降低数字系统的效率。并且,数字系统需要计算能力强大的高端处理单元,以处理压缩多媒体信号。
此外,在拼接操作期间,多媒体信号的各种流(例如,视频流、音频流等)可能失去相互间的定时同步。在常规方法中,数字系统使用硬件时钟作为一或更多个流时钟的从时钟,以实现所述一或更多个流之间的定时同步。硬件时钟给数字系统增加附加复杂性。
因此,此项技术中需要一种用于有效地拼接压缩多媒体信号的方法和设备。
发明内容
本发明公开一种拼接第一数据流和第二数据流的方法。所述方法包含检测第一数据流内的拼接入(splice-in)点和拼接出(splice-out)点,其中所述拼接入点是所述第一数据流中的一帧,且所述拼接出点是所述第一数据流中的另一帧。所述方法进一步从所述第一数据流中的数个拼接机会点(SOP)识别拼接入机会点和拼接出机会点,其中所述拼接入机会点对应于所述拼接入点且所述拼接出机会点对应于所述拼接出点,其中所述拼接入机会点和所述拼接出机会点是所述第一数据流的帧。所述方法将所述第一数据流的至少一个帧替换为所述第二数据流的至少一个帧,其中所述第一数据流的所述帧的所述替换从所述拼接入机会点起开始且在所述拼接出机会点处结束;且其中所述第一数据流包括数个帧且所述第二数据流包括数个帧。所述方法执行拼接操作,而不需对所述第一数据流进行拆包。此外,所述帧的替换不需要对所述第一数据流的所述帧进行重新排序。
在另一实施方式中,本发明公开一种用于控制第一数据流的数个流的流程的方法和设备。在一个实施方式中,所述方法包含处理所述第一数据流的至少两个流的至少一个访问单元,其中所述至少两个流的所述处理起始于跳跃的开始处且其中所述至少两个流包括数个访问单元。所述方法在所述跳跃的所述开始处将跳跃信用提供给至少两个流拼接模块,其中所述至少两个流拼接模块在跳跃周期期间处理所述相应至少两个流,且所述跳跃的所述开始处的所述跳跃信用设立所述跳跃周期。所述方法进一步在所述跳跃周期期间修改所述至少两个流拼接模块的所述跳跃信用并在所述至少两个流拼接模块中的一流拼接模块的所述已修改跳跃信用小于所述至少两个流中的一流的所述访问单元的持续时间的量时中断所述流的所述处理。
在再一实施方式中,本发明公开一种用于选择第一数据流的数个流的拼接机会点的方法和设备。在一个实施方式中,所述方法包含从所述第一数据流的所述数个流中识别锚流,其中所述锚流包括数个访问单元。所述方法从所述锚流的所述数个访问单元决定所述锚流内的拼接入机会点和拼接出机会点。所述方法进一步根据所述锚流的所述拼接入机会点和所述拼接出机会点决定除所述锚流外的至少一个流的拼接机会点。
附图说明
因此可以详细理解本发明的上述特征,通过参照实施方式,可以得到上文概述的本发明的更特定的描述,所述实施方式中的一些绘示于附图中。然而,应注意,附图仅绘示本发明的典型实施方式,且因此不应视为限制本发明的范畴,因为本发明可以接纳其它同等有效的实施方式。
图1绘示根据本发明的一或更多个实施方式的示范性数据流处理系统的框图;
图2绘示根据本发明的一或更多个实施方式的拼接器的示范性实施方式的框图;
图3A至图3E绘示根据本发明的一或更多个实施方式的对数据流进行的示范性拼接操作;
图4绘示根据本发明的一或更多个实施方式的对数据流进行拼接操作的示范性方法的流程图;
图5绘示根据本发明的一或更多个实施方式的用于控制第一数据流的数个流的流程的方法的流程图;和
图6绘示根据本发明的一或更多个实施方式的用于选择第一数据流的数个流的拼接机会点的方法的流程图。
具体实施方式
图1绘示根据本发明的一或更多个实施方式的示范性数据流广播系统100的框图。系统100配置成将多媒体服务(例如,数字电视广播服务、视频点播广播服务等)向用户广播。在一个实施方式中,系统100可以向用户提供综合数字服务,例如,因特网和/或企业内部网的接入。数据流广播系统100包括数个源站,所述源站通过网络124以通信方式与数个处理站连接。
所述数个源站(例如,源站1021、源站1022、源站1023……和源站102n)在下文称为源站102。一般来说,源站102为广播站(例如,电视广播站、无线电广播站等),源站102将数据流发射到数个处理站,例如,处理站1121、处理站1122、处理站1123……和处理站112n,所述数个处理站在下文称为处理站112。在一个实例中,源站102是数字广播站,且源站102将数字数据流发射到数个处理站112。在另一实例中,源站102是将模拟流发射到数个处理站112的模拟广播站。如本说明书中稍后所解释的,数个处理站112配置成对数据流执行操作(例如,拼接等)。
在一些实施方式中,源站102配置成产生节目流,所述节目流包括具有一序列数个图像帧的视频流、具有数个音频帧的一或更多个音频流和具有数个节目时钟基准(PCR)帧的相关联PCR流。在一个实施方式中,源站102可从制作工作室接收节目流。在一个实例中,制作工作室可以是移动制作工作室,所述移动制作工作室用于报导娱乐事件,例如,新闻、现场比赛、会议等。
源站102配置成使用熟知的压缩技术(例如,JPEG、MPEG(例如,MPEG-1、MPEG-2和MPEG-4)、H.26X等)来处理节目流。结果,产生了压缩数据流。举例来说而不是为了限制,在一个实施方式中,源站102配置成产生符合MPEG的压缩数据流。因此,根据MPEG压缩标准来对特定节目流的各种帧(例如,图像帧、音频帧和相关联的节目时钟基准(PCR)流)进行编码。
一般来说,节目流的特定图像帧可以压缩为帧内编码帧(I帧)、预测帧(P帧)或压缩为双向帧(B帧)。I帧消除了图像帧内的空间冗余,且I帧是独立编码的。结果,当在处理站112处解码时,I帧并不依赖于其它图像帧。然而,P帧和B帧是依赖性压缩图像帧,且当在处理站112处解码时,P帧和B帧可能需要I帧和/或P帧。另外,P帧消除了相对于先前的压缩图像帧的时间冗余。先前的压缩图像帧可以是I帧或P帧。此外,B帧消除了相对于先前的压缩图像帧和未来的压缩图像帧的时间冗余。先前的压缩帧和/或未来的压缩帧可以是I帧和/或P帧。
随后,源站102配置成使用压缩图像帧产生视频序列。视频序列始于序列标头,接着是压缩图像帧的一或更多个集合。此外,压缩标准(例如,MPEG标准)定义图像组(GOP),所述图像组(GOP)具有视频流的一或更多个压缩图像帧。GOP始于I帧,接着是特定数目的B帧和P帧。因此,源站102使用节目流的编码图像帧产生基础视频流(ES)。此外,源站102配置成压缩节目流的音频帧和/或PCR帧。因此,源站102配置成产生节目流的音频流和PCR流的基础流。
此外,源站102配置成产生节目流的每个基础流的分包基础流(PES)。PES包括PES包,所述PES包具有PES包标头和数据有效负荷。PES包标头包括流标识(SID),所述流标识(SID)用于识别节目流的一或更多个基础流。此外,每个PES包标头包括时间戳,所述时间戳称为展现时间戳(PTS)和解码时间戳(DTS)。
此外,源站102配置成将若干PES复用,所述PES具有称为节目时钟基准(PCR)的公用时基。源站102配置成进一步将复用的PES分包成传输流(TS)包并产生节目流的单节目传输流(SPTS)。另外和/或替代,源站102配置成将一或更多个SPTS复用并产生多节目传输流(MPTS)。因此,源站102配置成通过网络124将传输流(例如,SPTS、MPTS)作为第一压缩数据流发射到数个处理站112。
网络124包含通信系统,所述通信系统通过电线、电缆、光纤和/或无线链路(例如,卫星链路)连接一或更多个通信装置(例如,源站102、处理站112等),电线、电缆、光纤和/或无线链路(例如,卫星链路)是由各种类型的熟知网络部件(例如,集线器、交换器、路由器等)所促进的。网络124可以使用各种熟知的协议在网络资源之间传递信息。举例来说,网络124可以是使用各种传输系统(例如,广播传输系统)的因特网或企业内部网的一部分,网络124使用各种调制技术、各种接口(例如,异步串行接口(ASI))、传输手段(例如,RF电缆、光纤、卫星链路)等。或者,网络124可以是因特网协议网络的一部分,所述因特网协议网络是在以太网、Wi-Fi或光纤或专用线路、ATM网络等上。
根据一或更多个实施方式,数个处理站112可位于数个不同地理位置中。数个处理站112包括数个接收器(例如,接收器1141、接收器1142、接收器1143……和接收器114n),所述数个接收器在下文称为接收器114。每个接收器114配置成接收源站102所产生的第一压缩数据流。此外,所述数个处理站112包括数个拼接器(例如,拼接器1161、拼接器1162、拼接器1163……和拼接器116n),所述数个拼接器在下文称为拼接器116。
在一个实施方式中,接收器114接收第一压缩数据流并将第一压缩数据流传递到拼接器116。根据本发明的一或更多个实施方式,处理站112可以使用数字集成接收器解码器(IRD)装置,以将第一压缩数据流传递到拼接器116。或者,处理站112可以使用模拟IRD装置作为接收器114,且模拟IRD装置将接收的流编码为压缩数据流。随后,将第一压缩数据流提供到拼接器116。在一些实施方式中,接收器114实现压缩数据流的解调和/或解扰。
此外,拼接器116使用第二压缩数据流对第一压缩数据流进行拼接操作。举例来说,拼接器116可以将第一压缩数据流的一或更多个编码帧(例如,图像帧、音频帧、PCR帧等)替换为第二压缩数据流的一或更多个编码帧。在一个实施方式中,拼接器116将第一压缩数据流的一或更多个编码帧替换为充填帧。举例来说,将第一压缩数据流的编码图像帧替换为I型或P型图像充填帧。如本说明书中稍后所解释的,拼接器116配置成在拼接操作期间维持第一压缩数据流的视频流和音频流之间的同步。
根据本发明的一或更多个实施方式,源站102可提供第二压缩数据流。视情况,系统100包括流产生器120,流产生器120用于将第二压缩数据流提供到拼接器116。在一个实例中,流产生器120可以与源站102通信以获得第二压缩数据流的内容的授权。
系统100进一步包括数个发射器(例如,发射器1181、发射器1182、发射器1183……和发射器118n),所述数个发射器在下文称为发射器118。发射器118与处理站112相关联。拼接器116将拼接的压缩数据流转发到发射器118。随后,发射器118将拼接的压缩数据流发射到网络126。
网络126包含通信系统,所述通信系统通过电线、电缆、光纤和/或无线链路连接若干电脑,电线、电缆、光纤和/或无线链路是由各种类型的熟知网络部件(例如,集线器、交换器、路由器等)所促进的。网络126可以使用各种熟知的协议在网络资源之间传递信息。举例来说,网络126可以是使用各种传输系统(例如,广播传输系统)的因特网或企业内部网的一部分,网络126使用各种调制技术、各种接口(例如,异步串行接口(ASI))、传输手段(例如,RF电缆、光纤、卫星链路)等。或者,网络126可以是因特网协议网络的一部分,所述因特网协议网络是在以太网、Wi-Fi或光纤或专用线路、ATM网络等上。
根据一或更多个实施方式,源站102配置成将一或更多个广告插入到节目流内。举例来说,在现场报导(例如,足球比赛)期间,数个广告插入到节目流内。广告是广播公司的创收来源。此外,所述节目流作为第一压缩数据流传递到处理站112。举例来说而不是为了限制,处理站112是数字传输系统中的有线电视头端,且所述有线电视头端执行第一压缩数据流与第二压缩数据流的拼接。
在一个实施方式中,第二压缩数据流包括一或更多个广告,所述一或更多个广告用于替换第一压缩数据流的一或更多个广告。在一个实施方式中,用户可以访问广告计划器工具,所述广告计划器工具用于对第一压缩数据流的一或更多个广告的替换进行调度。举例来说,广告计划器工具在第一压缩数据流内提供一或更多个库存现货(替换时隙)的列表。库存现货是指广播流中可以用来插入广告数据流的时隙。
在一个实施方式中,广告计划器工具是名为“Methodandapparatusforplanningascheduleofmultimediaadvertisementsinabroadcastingchannel”的临时专利申请案中所公开的广告计划器,所述临时专利申请案是与本申请案一起申请的。因此,用户选择一或更多个库存现货,且分配选中的库存现货的广告。随后,拼接器116在所述一或更多个库存现货处执行第一压缩数据流与第二压缩数据流的拼接。
根据本发明的一或更多个实施方式,用户访问广告产生器工具,所述广告产生器工具用于产生广告。广告产生器工具包括各种计算资源,例如,硬件资源、软件资源、多媒体数据(例如,视频数据、图像数据等)等,且因此,使用户能够产生需要替换第一压缩数据流的广告的广告。在一个实施方式中,广告产生器工具是名为“Methodandapparatusforgeneratingamultimediaadvertisement”的临时专利申请案中所公开的广告产生器,所述临时专利申请案是与本申请案一起申请的。
此外,处理站112配置成通过网络126与数个装置(例如,装置1321、装置1322、装置1323……和装置132n)通信,所述数个装置在下文称为装置132。
装置132可以是台式计算机、膝上型计算机、移动电话、个人数字助理(PDA)、数字电视、机顶盒等。装置132用于对处理站112的已修改压缩数据流进行处理。在一个实施方式中,装置132可以将用户的属性(例如,用户的身份等)传递到处理站112。随后,处理站112可以根据用户的属性处理接收的压缩数据流,且因此,将条件式访问提供给用户。
图2绘示根据本发明的一或更多个实施方式的拼接器116的示范性实施方式的框图。拼接器116对第一压缩数据流执行拼接操作并将第一压缩数据流的编码帧替换为第二压缩数据流的一或更多个帧。拼接器116包括解复用器(Demux)202、数个拼接器控制器(例如,拼接器控制器2041、拼接器控制器2042、拼接器控制器2043……和拼接器控制器204m)和复用器206,所述数个拼接器控制器在下文称为拼接器控制器204。
一般来说,解复用器202从接收器114接收MPTS。所述MPTS包括一或更多个SPTS,且每个SPTS具有唯一节目识别号(PID)。解复用器202将接收的MPTS解复用成一或更多个SPTS,并将所述SPTS传递到拼接器控制器204。每个拼接器控制器204配置成处理与特定SPTS相关联的一或更多个流(例如,视频流、音频流和PCR流)。在一个实例中,拼接器控制器204对SPTS的相关联的流执行拼接操作,并将拼接的SPTS转发到复用器206。复用器206对每个拼接器控制器204的输出进行复用,且因此,产生处理过的MPTS。因此,复用器206将处理过的MPTS转发到发射器118。在另一实例中,拼接器控制器204配置成维持SPTS的视频流与音频流之间的同步。第一数据流也可以称为第一压缩数据流。
根据本发明的一或更多个实施方式,拼接器控制器204包括控制模块208、流程控制模块216和数个流拼接模块(SSM)210(例如,SSM2101、SSM2102、SSM2103……和SSM210n),所述数个流拼接模块(SSM)210在下文称为SSM210。举例来说,视频SSM210对SPTS的视频流执行拼接操作。音频SSM210对SPTS的音频流执行拼接操作。节目时钟基准(PCR)SSM210对SPTS的PCR流执行拼接操作。
控制模块208监视SPTS的一或更多个接收的数据包,且因此,检测SPTS内的拼接入点和拼接出点。在一个实施方式中,控制模块208可以检测数据包内的信号(例如,CUE音信号),且因此,检测SPTS内的拼接入点和拼接出点。
此外,在检测到拼接入点和拼接出点后,控制模块208将拼接入点、拼接出点传递到SSM210。随后,SSM210检测SPTS的流内的访问单元边界(AUB)的到达。此外,SPTS的视频流中的访问单元是图像帧,且SPTS的音频流中的访问单元是音频帧。访问单元的到达指示视频流中的图像标头的开始的存在和音频流中的新帧的开始的存在。此外,SSM210决定特定访问单元是否为拼接机会点(SOP)。
SOP为SPTS中的位置,在所述位置中,SSM210可以起始拼接操作。此外,SOP是指SPTS中的特定访问单元/帧,且所述特定访问单元/帧并不具有过去依赖性和/或未来依赖性。因此,SPTS的视频流中的SOP是I帧。类似地,SPTS的音频流中的SOP是音频帧。并且,SPTS的PCR流中的SOP是PCR包。
根据本发明的各种实施方式,SSM210配置成处理流,而不需对传输流进行拆包。在一些实施方式中,SSM210监视SPTS的数据包以发现AUB的到达。SSM210分析可在SPTS的数据包中获得的标头信息以对AUB进行定位。
在一个实施方式中,当SPTS的PES边界与ES边界对齐时,随后PES标头的开始并入了ES标头的开始。此外,PES边界与ES边界的对齐可在任何级别(即,序列、GOP、图像和切片)进行。此外,TS数据包包括有效负荷单元开始指示符(PUSI)位,所述有效负荷单元开始指示符(PUSI)位表示SPTS内的新PES标头的开始。TS数据包中的PUSI位的存在暗示ES标头的存在。
此外,SSM210配置成检测图像标头的存在,以用于在TS数据包中对AUB进行定位。在若干例子中,当流(例如,视频流)具有在多个包间整齐排列的若干标头时,SSM210使用传输流的多个数据包来检测AUB的存在。在AUB的到达后,SSM210识别TS数据包内的SOP的存在。举例来说而不是为了限制,SSM210通过以下方式来对SOP的存在进行定位:在TS数据包中检查PUSI位并随后查找图像标头。
此外,SSM210从SPTS的特定流(例如,视频流、音频流、PCR流等)内的数个拼接机会点(SOP)识别对应于拼接入点的拼接入机会点和对应于拼接出点的拼接出机会点。拼接入机会点涉及SPTS的特定流中的一帧,且SSM210是从所述特定帧起起始拼接操作。拼接出机会点涉及SPTS的特定流中的另一帧,且SSM210在另一帧前结束拼接操作。
此外,在特定数据TS包中检测到拼接入机会点后,SSM210将特定数据流的TS数据包替换为第二压缩数据流的一或更多个数据包或替换为虚拟数据包。SSM210替换SPTS的TS数据包直到拼接出机会点为止。
在一些实施方式中,当第一压缩数据流的特定流(例如,音频流)的TS数据包包括二或更多个帧时,SSM210监视一或更多个帧的标头,以便识别拼接入机会点和拼接出机会点。如果帧被宣称为特定TS数据包中的拼接入机会点或拼接出机会点,那么SSM210就修改特定TS数据包。如果特定数据包包括拼接入机会点,那么SSM210就通过仅保留拼接入机会点之前的数据来修改特定数据包。特定数据包的剩余部分替换为零以便使特定数据包的大小(例如,188个字节)完整。如果特定TS数据包包括拼接出机会点,那么SSM210就通过仅保留拼接出机会点之后的数据来修改特定数据包。特定TS数据包的剩余部分替换为零以便使特定数据包的大小(例如,188个字节)完整。在一个实例中,填充字节Oxff用于传输流标头之后,以充填TS数据包的剩余部分。因此,SSM210在检测到拼接入机会点和拼接出机会点后修改或替换流的数据包,而不需对SPTS进行拆包。因此,第一压缩数据流的数据包的选择性处理提高了系统的效率。
此外,SSM210包括数个定时模块(例如,定时模块2121、定时模块2122、定时模块2123……和定时模块212n),所述数个定时模块在下文称为定时模块212。如本说明书中稍后所解释的,定时模块212根据与第一压缩数据流的一或更多个帧相关联的定时值而修改与第二压缩数据流的一或更多个帧或虚拟帧相关联的定时值。
流程控制模块216控制第一压缩数据流的一或更多个流的数据包的流程,且流程控制模块216将在本说明书中稍后加以论述。拼接器控制器204和所述模块(控制模块208、SSM210等)的一或更多个实施方式可以用硬件、软件或硬件与软件的组合来实施。
视频拼接
图3A至图3E绘示根据本发明的一或更多个实施方式的对第一压缩数据流的示范性编码视频流进行的示范性拼接操作。图3A绘示编码视频流A的编码图像帧的显示序列,且编码视频流A的每个图像帧是按照MPEG-2标准中所定义的压缩技术来编码的。此外,图像帧的对应编号提供了时间基准,所述时间基准对应于视频流A的帧的显示次序。如图所示,帧0编码为I帧,且帧3编码为P帧。帧3依赖于先前帧0,且当在装置132处解码时,帧3需要帧0。帧1和帧2为双向帧,且因此,帧1和帧2依赖于先前帧0和未来帧3。
图3A进一步绘示第一压缩数据流的视频流A的图像组(GOP),例如,GOP1、GOP2等。GOP一般始于I帧,接着是一或更多个P帧和B帧。举例来说,在视频流A中,GOP1包括帧0到帧11,且GOP2包括帧12到帧23。举例来说而不是为了限制,视频流A的GOP的大小定义为十二,且本领域的技术人员可以将可变大小用于视频流的GOP。
图3B绘示编码视频流A的发射顺序图。按照MPEG-2标准,编码视频流的发射始于GOP的I帧,接着是如图3B所示的序列。处理站112接收第一压缩数据流中的视频流A,且拼接器116可以将视频流A的一或更多个帧替换为视频流B的一或更多个帧。已修改视频流A(如图3E所示)并不包括预测基准介于拼接入机会点与拼接出机会点之间的来自原始视频流A的任何帧。结果,不具有未解决的帧依赖性。因此,拼接操作始于GOP的开始处,且帧仅在新序列的开始处替换为I帧或P帧。
举例来说而不是为了限制,当视频流A的GOP大小与视频流B的GOP大小匹配时,视频SSM210将视频流A的一或更多个GOP替换为视频流B的一或更多个GOP。另外和/或替代,当视频流A的GOP大小与视频流B的GOP大小失配时,视频SSM210将视频流A的一或更多个GOP替换为视频流B的一或更多个GOP以及替换为一或更多个充填帧。
图3C绘示视频流A内的拼接入点、拼接出点和一或更多个SOP。控制模块208将帧4识别为拼接入点并将帧19识别为拼接出点。视频SSM210监视视频流A且进一步将帧12识别为拼接入机会点并将帧24识别为拼接出机会点。如图3C所示,帧12为I帧,且因此,视频SSM210将视频流的帧从帧12起替换为视频流B的一或更多个帧。在一些实施方式中,视频流A的P型帧可以由视频SSM210选择作为拼接入机会点。
图3D绘示第二压缩数据流的视频流B。如图3D所示,视频流B的GOP大小等于十。图3E绘示已修改流,所述已修改流是在第一压缩数据流的视频流A的拼接操作后产生的。举例来说而不是为了限制,视频流B的GOP大小(GOP大小=10)与视频流A的GOP大小(GOP大小=12)不匹配。结果,两个充填帧F1和F2另外与视频流B的GOP一起插入于第一压缩数据流的视频流A内。充填帧(例如,F1和F2)去除视频流A与视频流B之间的GOP大小的失配。如本说明书中稍后所解释的,充填帧可以是I型充填帧和/或P型充填帧。
根据各种实施方式,SSM210预备视频流B以便去除在拼接入机会点的到达之前的反向冗余。为了实现有效的拼接操作,视频流B必须始于I型帧,且视频流B的第二帧可以是I帧或P帧。如图3D所示,视频流B始于I帧,且下一帧是P帧。如果视频流B不包括所述要求,那么视频SSM210就修改视频流B。以下改变是在视频流B内进行的。视频流B中的I帧之前的帧被放弃。此外,视频流B的第一I帧与下一P帧之间的帧被放弃。最终,第一I帧和虚拟帧的时间基准得以更新。在视频流B编码为具有有限持续时间的文件的多数情况下,视频流B编码的上述条件通常已得以满足,在此情况下,不需要进一步处理视频流B。SSM210高速缓存视频流B以进行预处理,且使视频流B在拼接入机会点到达之前准备好。
根据一或更多个实施方式,视频流B为有限视频流,且视频SSM210决定需要用来替换视频流A的帧的视频流B的帧的任何不足。在一个实例中,视频SSM210决定视频流B的帧和充填帧的数目,所述数目的帧替换在拼接入机会点之后的视频流A的帧。视频SSM210决定sub_gop_distance,sub_gop_distance为视频流的单个GOP中的连续I帧与P帧时间基准之间的差。实际上,值sub_gop_distance是连续I帧与P帧之间的帧的数目加一。
此外,视频SSM210决定sub_temporal_reference=(temporal_reference)%Sub_gop_distance,其中(%)为提醒操作。值sub_temporal_reference给出两个连续I帧与P帧之间的图像数。举例来说,如果视频流A的配置文件为具有2个B帧的开放GOP,那么按照解码次序,图像的模式为IBBPBBP,其中时间基准为201534867,等等。因此,在所述特定情况下,值sub_gop_distance是3,这是通过将2个连续I帧和P帧的temporal_reference相减或将B帧的数目加1来计算的。
视频SSM210交替扫描视频流A的一个AUB和视频流B的一个AUB,其中视频流B滞后视频流A达视频流B的一个sub_gop_distance。假设视频流A的sub_gop_distance>=视频流B的sub_gop_distance,且所述sub_gop_distance对于编码器设定而言是恒定的。
视频流B的sub_temporal_reference给出了视频流B的帧的数目的估计,且充填帧需要放在视频流A的拼接出机会点的到达之后。一旦视频流A的拼接出机会点和视频流B的退出点被发现,视频SSM210就计算在拼接操作期间替换视频流A的帧的(视频流B的)有效帧的数目和充填帧的数目。这可以使用以下算法来计算。
当视频流B包括封闭GOP时:
if(Current_picture_type=='I')
Number_of_framesofvideostreamB=1
else
Number_of_framesofvideostreamB=sub_gop_distance(B)-sub_temporal_reference(B)
当视频流B包括开放GOP时:
L=(sub_gop_length(B)sub_temporal_reference(B))%sub_gop_length(B)
M=sub_gop_length(B)-1,其中M等于两个I/P帧之间B帧的准确数目
Number_of_B_frames=sub_gop_length(B)-(M+L)%sub_gop_length(B)
在上述两种情况下:
Numberoffillerframes=Sub_gop_distance-Number_of_B_Frames。
此外,在拼接操作期间,在拼接入机会点或拼接出机会点处,在视频流B或视频流A中分别有多个帧,所述帧依赖于先前GOP。因此,视频SSM210修改所述帧的时间基准,以便去除对先前GOP的依赖性。举例来说而不是为了限制,视频SSM210将I帧的时间基准(即,拼接出机会点)修改为0,以形成新GOP。此外,下一全填充帧/I帧副本的时间基准单调地增加(例如,增加量为1)直到下一前向帧到达为止。前向帧的时间基准未经修改。
再次参照图3C,在拼接出机会点(帧24)后,帧22和帧23是GOP2的帧。因为拼接器116未对视频流A的编码图像帧进行解码并且帧22和帧23需要GOP2的帧的解码,所以视频SSM210进一步将此些帧替换为I帧(帧24)。因此,通过将此些B帧(例如,帧22和帧23)替换为I帧的副本,拼接器去除了复杂的处理操作,例如,帧的解码操作、帧转换操作、对帧编号重新排序的操作等。由SSM210进行的B帧的替换减少了内存处理时间并因此提高处理站112的效率。
音频拼接
根据本发明的一或更多个实施方式,音频SSM210对SPTS的音频流执行拼接操作。一般来说,按照各种压缩标准(例如,MPEG、MPx等),特定音频帧并不依赖于其它音频帧。因此,SPTS的音频流的可能SOP为SPTS的音频帧。在检测到拼接入点和拼接出点后,音频SSM210从SPTS的音频流中的数个SOP检测拼接入机会点和拼接出机会点。因此,音频SSM210对音频流执行拼接操作。
PCR拼接
根据本发明的一或更多个实施方式,PCRSSM210对SPTS的PCR流执行拼接操作。一般来说,可在SPTS的PCR流的PCR包到达时获得PCR流的SOP。在拼接操作期间,PCRSSM210根据SPTS的PCR流的PCR包修改第二压缩数据流的一或更多个PCR包。在一个实例中,PCRSSM210根据SPTS的PCR流的PCR值线性地修改第二压缩数据流的PCR包的PCR值。
举例来说,如果第一压缩数据流的最后输出PCR包的PCR值为MP4,那么第二压缩数据流的PCR包的PCR值(例如,AP1、AP2……)被修改。第二压缩流的已修改PCR值表示为OP1、OP2……等。在一个实例中,来自第一压缩数据流的拼接点的PCR值复制到第二压缩数据流。
OP1=MP4
此外,对于第二压缩数据流的每个连续的新PCR而言,添加了偏移量。结果,第二压缩数据流的第NPCR值修改为:
OPn=OP1+APn-AP1
OPn=APn+(OP1-AP1)
随后,PCRSSM210将SPTS的PCR流的PCR包替换为第二压缩数据流的已修改PCR包。
根据本发明的各种实施方式,在拼接操作之前,数个SSM210高速缓存第二数据流的至少一部分。在一个实例中,在拼接操作之前,SSM210高速缓存整个第二数据流。此外,SSM210选择第二数据流的一个访问单元,以替换第一数据流的一个访问单元。访问单元的检测是使用与第一数据流所使用的方法相同的方法来进行的,并且所述方法早先已描述于本说明书中。此外,第二数据流中的每个图像的前进仅在第一流的相应数目的图像前进的情况下才能进行。此举允许先验地高速缓存第二流的数据。如果第二数据流需要在拼接操作之前经受任何处理,那么SSM210就在访问单元的替换的开始之前处理第二数据流。举例来说,检查第二数据流是否符合标准或是否具有所需的持续时间失配。如果存在任何失配或不符合标准,那么SSM210就在高速缓存期间处理第二数据流。
充填帧的产生
如本说明书中早先所解释的,SSM210将第一压缩数据流的一或更多个帧替换为充填帧。举例来说,视频SSM210将第一压缩数据流的一或更多个帧替换为视频充填帧。在一个实施方式中,视频充填帧为帧内编码充填帧或预测充填帧。
在一个实例中,P型充填帧可以通过生成P型压缩帧内的所有运动向量和DCT系数而产生。因此产生的P型充填帧是从先前帧预测的,而不需要具有运动补偿。另外和/或替代,P型充填帧的标头可以不包括序列标头或GOP标头信息,以便减少P型充填帧的位的数目。P型充填帧仅在I帧或P帧之后插入。
类似地,音频SSM210将第一压缩数据流的一或更多个帧替换为音频充填帧。在一个实施方式中,音频充填帧为由编码器使用适当配置文件产生的静音帧。举例来说而不是为了限制,10Hz的频率用于产生音频充填帧。
此外,PCRSSM210将第一压缩数据流的一或更多个帧替换为PCR充填帧。由于PCR帧包括时钟信息,因此,PCR充填帧通过修改第一压缩数据流或第二压缩数据流的最后存储PCR包的PCR值而产生。在一个实例中,如果由拼接器114输出的PCR值为PCR_last且需要在d毫秒的持续时间内产生并输出下一PCR包,那么就使用PCR_next=PCR_last+d*90计算PCR充填帧的PCR值。因此,产生了PCR充填帧。
PTS/DTS修改
如本说明书中早先所描述的,SSM210包括定时模块212,定时模块212根据与第一压缩数据流的一或更多个帧相关联的定时值而修改与第二压缩数据流的一或更多个帧或虚拟帧相关联的定时值,例如,展现时间戳(PTS)、解码时间戳(DTS)等。结果,第二压缩数据流实现了与接收的压缩数据流的时基相同的时基。
在一个实例中,定时模块212通过对第二压缩数据流的定时值应用线性变换来修改定时值。举例来说而不是为了限制,如果A是第二压缩数据流中的PTS值的向量表示,B是第二压缩数据流中的PTS值的向量表示,且S是所有元素均相等的恒定移位值的向量,那么线性变换A'=A+S表示第二压缩数据流的具有已修改PTS值的向量,且线性变换B'=B+S给出第二压缩数据流的已修改DTS值。因此对第二压缩数据流应用的线性变换不改变时钟基准特性。此外,为了实现压缩数据流的流畅播放,PCRSSM210修改第二压缩数据流的PCR值。举例来说,如果P表示第二压缩数据流的PCR值的向量,那么线性变换P'=P+S表示具有已修改PCR值的向量。
举例来说而不是为了限制,第一压缩数据流与第二压缩数据流之间的类似时基是通过决定基点来实现的。若干参数(例如,base.pts、base.dts、display_order和decode_order)用于计算基点。基点表示开始点,或者基点表示PTS环绕或时间基准重新开始(例如,视频中的GOP的开始)的任何点。
任何帧的所估计PTS~(i)均是按照下式计算:
current.pts=base.pts+(current.display_order-base.display_order)*frame_size。
基于所述特定等式,第二压缩数据流的帧经修改以实现第一压缩数据流的时基。
举例来说而不是为了限制,对于第二压缩数据流的视频流(AF)而言,AF_base.pts=第一压缩数据流的开始点的第一图像的PTS且AF_base.display_order=0。所述值在各种情况下均有效。举例来说,在第二压缩数据流的开放GOP的情况下,视频SSM210预处理第二压缩数据流,通过修改I帧的时间基准来去除时间依赖性,并将依赖性图像替换为虚拟帧。此外,对于PCR流和音频流而言,每个PTS和PCR值的到达为基点。因此,基点是针对每个PTS和PCR值而更新的。
因此,通过使用所述值和前述等式,实现了第二压缩数据流的已修改时间戳。
根据本发明的各种实施方式,定时模块212可在拼接入点支持时基不连续性。因此,第二压缩数据流可以始于新的时基值。举例来说,第二压缩数据流的PTS值、DTS值和PCR值可以具有新的时基。新的时基值可以通过设定具有新的时基的第二压缩数据流的第一包的不连续性指示符来指示。因此,在拼接出点,不连续性指示符设定于第一压缩数据流的第一包中,且因此关于新的时基而发出信号。
图4绘示根据本发明的一或更多个实施方式的对数据流进行拼接操作的示范性方法400的流程图。方法400始于步骤402并继续进行到步骤404。在步骤404,处理第一数据流(例如,由图1的源站102产生的压缩数据流)。在一些实施方式中,监视第一数据流以检测视频流或音频流或节目时钟基准流中的数个拼接机会点。
方法400继续进行到步骤406。在步骤406,判定是否到达拼接入机会点。如果未到达拼接入机会点,那么方法400就继续进行到步骤404。如果到达拼接入机会点,那么方法400就继续进行到步骤408。在步骤408,处理第二数据流。在一个实施方式中,流拼接模块(例如,图2的SSM210)修改第二数据流的帧的时间基准。
在步骤410,替换第一数据流的帧。在一些实施方式中,视频流拼接模块(例如,图2的视频SSM210)执行GOP级精度拼接,并将第一数据流的视频流的一或更多个GOP替换为第二数据流的一或更多个GOP。在一些实施方式中,音频拼接模块(例如,图2的音频SSM210)对第一数据流的音频流执行帧级精度拼接。
在步骤412,处理第一数据流以识别拼接出机会点。在步骤414,判定是否到达拼接出机会点。如果未到达拼接出机会点,那么方法400就继续进行到步骤410。如果到达拼接出机会点,那么方法400就继续进行到步骤416。在步骤416,决定待用于替换的帧的数目。在一个实施方式中,流拼接模块(例如,图2的SSM210)决定需要替换的第一数据流的帧的数目。此外,流拼接模块识别用于替换第一数据流的第二数据流的帧的数目和充填帧的数目。
在步骤418,可以修改第一数据流的帧的时间基准。方法400继续进行到步骤420。在步骤420,方法400结束。
本文中所论述的本发明的各种实施方式提供若干优势。在一个实例中,本发明实现了第一数据流的视频流的GOP精度拼接和第一数据流的音频流的帧精度拼接。此外,拼接操作与GOP的大小无关。第一数据流和第二数据流可以具有任意GOP大小。拼接操作将一个访问单元替换为另一访问单元。此外,提供第二数据流的时基校正以便避免拼接流中的时基的任何不连续性。此外,在拼接操作的结束时提供虚拟帧以提供流畅的转变效果。
此外,拼接操作并不对压缩数据流的编码帧进行解码。由于未对帧进行解码,本发明在相对较少的处理要求的情况下有效地起到作用,而不会影响拼接操作的质量。拼接操作不需要对第一数据流的图像帧重新排序,这是因为拼接操作不依赖于未来图像。因此,拼接器处的每个图像的到达次序与图像离开拼接器的次序相同。
此外,拼接操作不需要存储所述帧以供稍后用于拼接。在帧的到达后判定帧在拼接流将被选择还是被放弃。最后,拼接操作不对传输流进行拆包来执行拼接操作。由于未对传输包进行拆包和重新分包,因此避免了内存复制的大量开销。结果,以高速度和相对较高的质量实现了拼接操作。
流程控制:
根据本发明的一或更多个实施方式,流程控制模块216控制处理站112内的第一数据流的数个流的前进。一般来说,第一数据流的数个流可以按照不同数据速率获得,并且此外,数据速率可以随着时间而变。换句话说,不同数据速率在不同时间间隔存在。结果,数个SSM210可以在某一时间周期期间处理不同量的数据。
此外,数个流相互提前或滞后。举例来说,第一数据流的特定音频流可以相对于第一数据流的视频流滞后。因此,流程控制模块216配置成确保数个SSM210按照某一方式处理所述流,以使得数个流维持容许的滞后或提前。举例来说而不是为了限制,数个SSM210在特定时间周期期间处理相等量的数据,以便维持容许的滞后或提前。
在一或更多个实施方式中,数个SSM210处理相应流历时跳跃周期。跳跃周期等于特定流拼接模块处理特定流的持续时间的量。跳跃周期等于所述流的访问单元的一或更多倍的播放持续时间。举例来说,对于视频流而言,跳跃周期等于视频访问单元的一或更多倍的播放持续时间。此外,对于特定跳跃而言,跳跃周期在数个SSM210间有所不同。举例来说,视频SSM210的跳跃周期可以不同于音频SSM210的跳跃周期。
为了实现数个流之间的流程控制,数个SSM210在逐个跳跃的基础上处理相应流。换句话说,SSM210的特定流拼接模块仅在SSM210的剩余流拼接模块完成相应跳跃时才移动到下一跳跃。在特定例子中,当数个SSM210不相互通信时,流程控制模块216配置成将每个SSM210已完成跳跃的信息传递到数个SSM210。此外,流程控制模块216在跳跃的开始将公用跳跃信用传递到数个SSM210。
此外,数个SSM210的每个流拼接模块处理相应流的访问单元。随着特定流的每个访问单元的到达,相应流拼接模块的跳跃信用减小,减小的量等于访问单元的播放持续时间。此外,当流拼接模块的跳跃信用小于访问单元的播放持续时间时,特定流的流拼接模块完成跳跃并将跳跃结束的状态传递到流程控制模块216。此外,在从SSM210的剩余流拼接模块接收到跳跃结束状态后,流程控制模块216将信息提供到数个SSM210以开始新的跳跃。以所述方式,在完成包括多倍跳跃的跳跃循环后,维持了容许的提前或滞后。在一个实例中,在完成跳跃循环后,在第一数据流的数个流间维持在跳跃循环的开始时存在的提前或滞后。
在一个实例中,跳跃循环的持续时间等于第一数据流的数个流的访问单元间隔的最小公倍数(LCM)。此外,根据本发明的一或更多个实施方式,提供了虚拟代码以实现数个流之间的流程控制。
//在流程控制模块216处。
SSM210的数目=N;
对所有拼接器设定Average_leap_size
Fori=0.....N
{If(!Leap_finished(i))
{Run_stream_splicing_module()
lf(leap_finish(i))
Leap_count++;}
If(leapcount=N)
Resetleap_finish(i)foralli,...N
issuenewleapforalli,....N}
//流拼接模块内部
Run_stream_splcing_module()
{If(newleap)
leap_credit+=avg_leap;
while(leap_credit>=Access_unit_duration){
splice()//tillnextAccessunit
leap_credit-=Access_unit_size;}
lf(leap_credit<Access_unit_size)
leap_finished(i)=TRUE;}
图5绘示根据本发明的一或更多个实施方式的用于控制第一数据流的数个流的流程的方法500的示范性流程图。方法500始于步骤502并继续进行到步骤504。在步骤504,识别流拼接模块(SSM210)(例如,图2的SSM210)。在步骤506,将跳跃信用传递到流拼接模块。在一个实施方式中,流程控制模块(例如,图2的流程控制模块216)将跳跃信用传递到流拼接模块。所述方法继续进行到步骤508。在步骤508,判定跳跃信用是否大于或等于访问单元的持续时间。如果决定跳跃信用大于或等于访问单元的持续时间,那么方法500就继续进行到步骤510。在步骤510,处理所述流的访问单元。举例来说,视频流拼接模块处理视频流的视频访问单元。在一些实施方式中,视频流拼接模块将视频访问单元替换为另一视频访问单元。在一个实例中,替换的访问单元是第二数据流的视频流的视频访问单元。在另一实例中,替换的访问单元是虚拟访问单元。
在步骤512,修改跳跃信用。在一个实例中,减小跳跃信用,减小的量等于所述流的访问单元的持续时间。所述方法进一步继续进行到步骤508。如果决定跳跃信用不大于或等于访问单元的持续时间,那么方法500就继续进行到步骤514。在步骤514,完成跳跃。方法500继续进行到步骤516。在步骤516,方法500结束。
根据本发明的一或更多个实施方式,流程控制与媒体类型、编解码器类型或文件格式类型无关。此外,流程控制模块216使流拼接模块能够处理相等量的数据。结果,流程控制不需要第一数据流的数个流的位速率信息。因此,流程控制可以在数个流的任意位速率或可变位速率下起到作用。此外,流程控制算法管理数个流之间的初始提前或滞后。结果,在多流SOP授权期间,对适当拼接机会点进行了定位。并且,交替处理了第一数据流与第二数据流的访问单元。因此,第一数据流的流程控制控制第二数据流的流程。此外,流程控制不需要对流进行解码或复杂的位速率计算来控制数据。此外,因为TS/PES标头包括与时间相关的字段,所以流程控制仅需要TES/PES标头以进行操作。
多流SOP授权算法
根据本发明的一或更多个实施方式,控制模块208配置成识别第一数据流的一个流的拼接入机会点和拼接出机会点,所述拼接入机会点和拼接出机会点对应于第一数据流的另一流的拼接入机会点和拼接出机会点。根据一个流的拼接机会点来选择另一流的拼接机会点改良了拼接流的质量。举例来说,此种选择拼接机会点(SOP)的处理维持了第一数据流的数个流(例如,视频流和一或更多个音频流)之间的预先设立的同步。在另一实例中,此种选择拼接机会点的处理避免了产生不同流的准确替换持续时间的差异。结果,可以预防因PCR与其它内容之间的持续时间的失配而造成的时基的不连续性。
此外,控制模块208从第一数据流的数个流中识别锚流。在一个实施方式中,锚流包括访问单元,所述访问单元与第一数据流的其它流的访问单元相比具有最大播放持续时间。举例来说而不是为了限制,控制模块208可以将视频流识别为锚流,这是因为所述视频流的访问单元的播放持续时间相对大于一或更多个音频流的访问单元的播放持续时间。在另一实施方式中,控制模块208将音频流识别为锚流。
如本说明书中早先所描述的,对于不同流而言,拼接机会点在不同点到达。举例来说,对于音频流而言,拼接机会点在访问单元边界(AUB)处到达,而对于视频流而言,拼接机会点在每个GOP处到达。在检测到锚流后,拼接机会点(例如,拼接入机会点或拼接出机会点)决定于锚流中。
此外,对于锚流的决定的拼接机会点而言,计算第n流的数个拼接机会点的变量eij=|SOPanchor(i)-SOPn(j)|。变量eij计算锚流的第i拼接机会点与第n流的第j拼接机会点之间的展现时间戳(PTS)值的差异。第n流拼接模块识别第n流中的特定拼接机会点,其中变量eij针对特定拼接机会点具有最小值。
根据一或更多个实施方式,各种方法可以用于有效地决定数据流的数个流的拼接机会点。在一种方法中,在SOP的到达之前预测数个流的拼接机会点。因此,根据锚流的SOP而计算了变量并决定了数个流的SOP。此种方法也称为SOP选择的预测方法。在一种迭代方法中,控制模块208将流的处理保持暂停直到SOP的到达为止。此外,迭代算法(本说明书中稍后描述)识别到达的SOP是否为最佳SOP集合。因此,控制模块208传递相应流以进一步进行处理。在另一种方法中,使用了预测方法与迭代方法的组合。
以下描述提供了一或更多种算法,所述算法用于实施预测方法、迭代方法和组合式预测与迭代方法。变量名称和相应定义如下所述:
SOP_flag:由流拼接模块引擎指示的SOP的到达。
SOP_granted:在对流的SOP进行授权时设定。
SOP_timestampn(i):第n流的第iSOP例子。
SOP_timestamp n(i):第n流的第i预测SOP例子。
锚流:预测是在所述流的基础上进行。
sop_count=对SOP进行授权的信道的计数
eij=锚流的第iSOP与另一流的第jSOP之间的PTS误差S为给予流拼接模块的目标SOP时间戳。
预测算法
SOP_timestamp 0(0)=Predict(Null)
SOP_PTS0=SOP_timestamp 0(0)
Forn<-0,N
SOP_timestamp n(0)=Predict(SOP_PTS0)
sop_count=0
/*Runstreamsplicingmodule*/
while(sop_count<N)
{for(n<-0,N)
{Run_stream_splicing_module(n);
if(SOP_PTSn<=CURRENT_PTSn)&&SOP_flag==TRUE){SOP_granted(n)
sop_count++}
}}
迭代算法
sop_count=0
/*Runstreamsplicingmodule*/
while(sop_count<N)
{for(n<-0,N)
{Run_splicer(n);
If(SOP_flag==TRUE&&n==anchorstream)
{SOP_granted(n);
sop_count++;}
if(SOP_flag==TRUE&&n!=anchorstream&&
SOP_granted(anchorstream)==TRUE)
{calculate(eij)
calculate(ei(j+1))
if(eij<=ei(j+1))
{SOP_granted(n)
sop_count++;}
else
continue;
}}}
组合式预测与迭代算法
在所述算法中,按照平均SOP持续时间的次序对数个流进行分类。在下一步骤中,从数个流中选择锚流。此外,预测锚流中的最早SOP。在锚流中侦测到SOP后,预测较接近锚流的SOP的另一流的多个SOP。从另一流的数个SOP中,根据变量eij来选择另一流的拼接入机会点和拼接出机会点。并且,所述算法使用以下条件来核实任何流均不与最远SOP交叉。以下条件在确保任何流均不与最远SOP交叉时是必需的:
a.PTS[0]的提前(在每个跳跃的开始时)>PTS[i]的提前+SOP_distance_max
b.其中SOP_distance_max=锚流的最差情况SOP持续时间。
此外,如早先所描述的,开始了正常的流程控制,并且明白表示了流的每个访问单元边界和SOP的到达。此外,在以下条件下对SOP预测重新迭代:
I.如果锚流的SOP在所述SOP的原始位置处未被发现,或
II.如果锚流的SOP在早于所述SOP的预期位置处被发现。
提供以下虚拟代码来实现组合式预测与迭代算法。
sop_count=0
/*PredictwithaimmediatePTSvalue*/
/*SOP_TIME_OUT.Afterthis,aborttheSOPsearch.*/
SOP_TIMESTAMP 0(0)=Predict(0)//ThisimpliesnextimmediateSOP
SOP_PTS0=SOP_timestamp 0(0)
Forn<-0,N
SOP_timestamp n(0)=Predict(SOP_PTS0)
while(sop_count<N){
for(n<-0,N){
Run_stream_splicing_module(n);
If(current_PTS0>SOP_TIME_OUT)
{Exit();}
If(SOP_flag==TRUE&&n==anchorstream)
{SOP_granted(anchorstream)
sop_count++;
SOP_PTS0=Current_PTS0
Fork<-0,N
SOP_timestamp n(0)=Predict(SOP_PTS0)}
If(SOP_flag==TRUE&&n!=anchorstream&&
SOP_granted(anchorstream)==TRUE&&
Current_PTSn>=SOP_timestamp n(0))
{.
SOP_granted(n)
sop_count++;}
}}
根据一或更多个实施方式,公开了视频流的固定和可变GOP的SOP持续时间的预测。假设S为SOP应在视频流中到达的理论PTS。如本说明书中已陈述的,视频流拼接模块执行GOP精度拼接。由于GOP精确性和不具有对GOP开始的位置的控制,在某一范围内搜索SOP_timestamp~n(i)。在一个实例中,当视频流的GOP的大小固定且等于“GOP_SIZE”时,S的相邻SOP为:
total_aubs=(S–current_pts).AUB_SIZE/(90*1000)
covered_GOP_distance=GOP_SIZE-total_aubs%GOP_SIZE
SOP_timestamp~n(i)=(total_aubs-covered_GOP_distance).*AUB_SIZE
SOP_timestamp~n(i+1)=SOP_timestamp~n(i)+GOP_SIZE*AUB_SIZE
此外,依赖于covered_GOP_distance,SOP_timestamp~n(i)或SOP_timestamp~n(i+1)按照下式选自最小的e1和e2:
e1=(S-SOP_timestamp~n(i))
e2=(SOP_timestamp~n(i+1)-S)
预测的最佳SOP为对应于e1与e2之间的最小误差的SOP。所述算法对于音频流也同样适用。
最佳授权算法
根据本发明的一或更多个实施方式,节目插入或广告插入将第一流的指定内容改写为第二流的内容。一般来说,发生了如下事件:第一数据流上的内容剪辑设定成将被进行改写的目标。所提供的拼接入点为第一此些事件中的内容(例如,帧)的开始,并且拼接出点定义为所述事件的最后一帧。当流拼接模块并不对流执行帧精度拼接时,有效的拼接入点和拼接出点有所不同。结果,改写了第一数据流中的先前帧(从而导致在输出中那些图像丢失),或者将显现目标事件中的很少的帧,从而产生知觉短暂影响。
因此,最佳SOP授权算法识别最佳SOP集合(拼接入机会点和拼接出机会点),所述最佳SOP集合在输出中在改写的过去事件与当前可见元素之间进行最佳化。
在一个实施方式中,所述算法包含以下步骤。
假设“S”为理论拼接入点,且预期转变事件在第一数据流中在S处发生。为了识别知觉上的最佳SOP,决定锚流的SOP。因此,使用前述算法(例如,预测算法、迭代算法和组合式预测与迭代算法)来决定其它流的SOP。
此外,在特定流中预测出或识别出最接近“S”的SOP,即,SOP0(i)和SOP0(i+1)。此外,定义对应于SOP的误差的误差e0(i)和e0(i+1),其中按照下式计算误差e0(i)和e0(i+1):
e0(i)=S-SOP0(i)
e0(i+1)=S-SOP0(i+1)
在下一步骤中,将一对SOP0(i)和SOP0(i+1)进行定位以使得e0(i)是最小-ve误差且e0(i+1)是最小+ve误差。在SOP0(i)的到达后,判定对当前SOP进行授权还是放弃当前SOP。并且,预测出SOP 0(i+1)并且可获得值e0(i)和e 0(i+1)。
此外,在所述算法中作出以下判定。
如果e0(i)和e0(i+1)均是负值,那么所述算法继续搜索下一SOPi,i+1对,
如果e0(i)是-ve并且e0(i+1)是+ve,那么从所述SOPi,i+1对选择SOP,
最佳SOP=SOP0(i),如果|e0(i)|>|e 0(i+1)|
最佳SOP=SOP 0(i+1),如果|e0(i)|>|e 0(i+1)|
使用多流SOP授权算法寻找所有SOPn
如果e0(i)和e0(i+1)均是正值,那么放弃所述算法。
如所公开的,一旦选择了预测SOP,当前最佳SOP授权算法就退出并且多流SOP算法就计算其它流的所有SOP。在可变GOP的情况下,SOP的序列号不可预测。结果,i为任意数。在所述情况下,在SOP的每次到达时尝试所述算法。在所述特定情况下,以下条件用于判定最佳SOP。
SOP 0(i+1)=SOP0(i)+MIN_GOP_SIZE
此外,如果未对SOP0(i)进行授权并且SOP 0(i+1)>SOP_TIME_OUT,那么中止拼接操作。
经加权的预测SOP
根据一或更多个实施方式,先前事件的改写相对较敏感。在所述情况下,对误差对进行加权以实现SOP的相对较佳的选择。
因此,将两个权重w-和w+给予流拼接模块,以进行知觉决策。在一个实例中,权重w-和w+是i的线性函数。在另一实例中,权重w-和w+是i的非线性函数。在所述情况下,按照下式计算最小误差SOP:
最佳SOP=SOP0(i),如果|e0(i)|*w->|e 0(i+1)|*w+
最佳SOP=SOP 0(i+1),如果|e0(i)|*w->|e 0(i+1)|*w+
举例来说,w-和w+是4和1;这表示在反向方向上产生的误差比在前向方向上产生的误差代价高。因此,在S之前刚好2个图像处的SOP与在S之后的8个图像处的SOP具有相同影响。
图6绘示根据本发明的一或更多个实施方式的用于选择第一数据流的数个流的拼接机会点的方法600的流程图。方法600始于步骤602并继续进行到步骤604。在步骤604,识别第一数据流的数个流。在一个实例中,所述数个流包括视频流、一或更多个音频流和PCR流。
在步骤606,从所述数个流中识别锚流。在一些实施方式中,锚流相比于第一数据流的其它流具有最高SOP持续时间。在步骤608,决定锚流的拼接入机会点和拼接出机会点。在步骤610,根据锚流的拼接入机会点和拼接出机会点来决定另一流的SOP。在一个实例中,多流授权算法用于决定另一流的SOP。
方法600继续进行到步骤612。在步骤612,方法600结束。
根据本发明的各种实施方式,SOP授权算法与媒体类型、编解码器类型或文件格式类型无关。此外,SOP授权算法不需要第一数据流的数个流的位速率信息。因此,SOP授权算法可以在数个流的任意位速率或可变位速率下起到作用。此外,SOP授权算法针对拼接的既定精确性以高效率对第一数据流起到作用,所述第一数据流包括一或更多个视频流、一或更多个音频流。
此外,SOP授权算法在流拼接模块的任意精确性能力下起到作用。举例来说,在拼接为帧精度拼接、或GOP精度拼接或子GOP精度拼接时,SOP授权算法起到作用。SOP授权算法每次仅处理一个访问单元。换句话说,SOP授权算法不需要未来或过去的存储来进行决策。此外,SOP授权算法在各种SOP持续时间(例如,可变GOP大小)下有效地起到作用。此外,由于SOP授权算法不需要分析和处理流(除决定SOP以外),因此,所述算法需要相对较少的计算。
此外,本文中所论述的各种实施方式实现了一种营业方法,其中广告可以插入到广播流中,以使得插入广告在相对较小的地理区域(例如,与有线电视头端有关的区域)中展示。插入广告可以不同于广播广告。此举对广告商、广播公司和观众具有各种优势,并且此种营业方法公开于临时专利申请案“Methodandsystemforbroadcastingmultimediadata”中,所述临时专利申请案是与本申请案一起申请的。根据所论述的各种实施方式,拼接器对此种营业方法提供若干优势,尤其是能够允许广告商和/或广播公司插入广告流来代替广播流,所述广告流例如能够在局域有线电视头端处获得。
虽然上文所述内容针对本发明的实施方式,但可设计出本发明的其它实施方式,而不偏离本发明的基本范畴。

Claims (10)

1.一种用于选择第一数据流的数个流的拼接机会点的方法,所述方法包含:
从所述第一数据流的所述数个流中识别访问单元具有最大播放持续时间的锚流,其中所述锚流包括数个访问单元;
从所述锚流的所述数个访问单元决定所述锚流内的拼接入(splice-in)机会点和拼接出(splice-out)机会点;
根据所述锚流的所述拼接入机会点和所述拼接出机会点决定除所述锚流外的至少一个流的拼接机会点;
其中所述决定至少一个流的拼接机会点包含计算第n流的数个拼接机会点的变量其中所述变量计算所述锚流的第i拼接机会点与所述第n流的第i拼接机会点之间的展现时间戳(PTS)值的差异。
2.如权利要求1所述的方法,其中所述数个流包含以下流中的至少一个:视频流;音频流;和PCR流。
3.如权利要求1所述的方法,进一步包含识别导致在所述第n流的所述数个拼接机会点中变量的值最小的所述第n流的拼接机会点。
4.一种用于选择第一数据流的数个流的拼接机会点的设备,所述设备包含:
用于至少两个流的至少两个流拼接模块,其中流拼接模块检测相应流内的数个拼接机会点;和
控制模块,用于从所述第一数据流的所述至少两个流中识别锚流,其中所述控制模块配置成与所述至少两个流拼接模块通信,以便根据所述锚流的拼接入机会点和拼接出机会点来决定另一流的拼接机会点;
其中所述决定至少一个流的拼接机会点包含计算第n流的数个拼接机会点的变量其中所述变量计算所述锚流的第i拼接机会点与所述第n流的第i拼接机会点之间的展现时间戳(PTS)值的差异。
5.如权利要求4所述的设备,其中所述锚流包括持续时间大于其它流的拼接机会点的拼接机会点。
6.如权利要求4所述的设备,其中所述至少两个拼接模块利用预测算法以决定其它流的拼接机会点。
7.如权利要求4所述的设备,其中所述至少两个拼接模块利用迭代算法以决定其它流的拼接机会点。
8.如权利要求4所述的设备,其中所述至少两个拼接模块利用预测算法与迭代算法的组合以决定其它流的拼接机会点。
9.如权利要求4所述的设备,其中所述至少两个拼接模块利用经加权的预测SOP算法。
10.一种识别最佳拼接机会点(SOPs)的方法,包括:
决定锚流和其它流的拼接机会点(SOP);
在特定流中预测最近接“S”的SOP,表示为SOP0O)和SOP0(H-I);
定义对应于SOP的误差的误差eo(i)和eo(i+1),其中按照下式计算误差eo(i)和误差eo(i+1):
eo(i)=S-SOPo(i),
e0(i+1)=S-SOPo(i+1);
定位一对SOP0O)和SOP0(i+1),以使得eo(i)是最小-ve误差且eo(i+1)是最小+ve误差;
在SOPo(i)到达后,判定对当前SOP进行授权还是放弃当前SOP;以及
预测以及值eo(i)和
CN201510437372.5A 2009-04-28 2010-04-28 用于多个流的协调拼接的方法和设备 Pending CN105100819A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IN1120MU2009 2009-04-28
IN1120/MUM/2009 2009-04-28
CN201080030058.0A CN102461196B (zh) 2009-04-28 2010-04-28 用于多个流的协调拼接的方法和设备

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201080030058.0A Division CN102461196B (zh) 2009-04-28 2010-04-28 用于多个流的协调拼接的方法和设备

Publications (1)

Publication Number Publication Date
CN105100819A true CN105100819A (zh) 2015-11-25

Family

ID=42790873

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201080030058.0A Expired - Fee Related CN102461196B (zh) 2009-04-28 2010-04-28 用于多个流的协调拼接的方法和设备
CN201510437372.5A Pending CN105100819A (zh) 2009-04-28 2010-04-28 用于多个流的协调拼接的方法和设备
CN201080028835.8A Expired - Fee Related CN102461195B (zh) 2009-04-28 2010-04-28 用于拼接压缩数据流的方法和装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201080030058.0A Expired - Fee Related CN102461196B (zh) 2009-04-28 2010-04-28 用于多个流的协调拼接的方法和设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201080028835.8A Expired - Fee Related CN102461195B (zh) 2009-04-28 2010-04-28 用于拼接压缩数据流的方法和装置

Country Status (4)

Country Link
US (2) US9407970B2 (zh)
EP (2) EP2425621A2 (zh)
CN (3) CN102461196B (zh)
WO (2) WO2010125583A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110650353A (zh) * 2019-09-25 2020-01-03 广州华多网络科技有限公司 多人连麦混画方法及装置、存储介质及电子设备
WO2022267368A1 (zh) * 2021-06-23 2022-12-29 北京百度网讯科技有限公司 数据处理方法及装置,计算设备和介质

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010125583A2 (en) * 2009-04-28 2010-11-04 Vubites India Private Limited Method and apparatus for coordinated splicing of multiple streams
US9094641B1 (en) 2011-06-08 2015-07-28 Arris Enterprises, Inc. Group of pictures size adjustment
DE102012104481A1 (de) * 2012-05-24 2013-11-28 Deutsche Telekom Ag Verfahren zum Einspielen eines Ersatzclips in die laufende Übertragung eines Videoclips
GB2505535B (en) * 2012-09-03 2015-06-10 Nds Ltd Method and apparatus for selection of advertisements to fill a commercial break of an unknown duration
KR101861941B1 (ko) * 2014-02-10 2018-07-02 돌비 인터네셔널 에이비 완벽 스플라이싱을 위한 인코딩된 오디오의 전송 스트림에의 삽입
US10305578B2 (en) 2014-05-14 2019-05-28 Satixfy Israel Ltd. Method of exchanging communications between a satellite and terminals associated therewith
US10368327B2 (en) 2014-05-14 2019-07-30 Satixfy Israel Ltd. Method and system for signal communications
US10312997B2 (en) 2014-05-20 2019-06-04 Satixfy Israel Ltd. Method for reducing interference in a satellite communications network
US10033509B2 (en) 2014-05-20 2018-07-24 Satixfy Israel Ltd. Method and system for satellite communication
EP2996269A1 (en) * 2014-09-09 2016-03-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio splicing concept
WO2016086100A1 (en) * 2014-11-25 2016-06-02 Arris Enterprises, Inc. Filler detection during trickplay
JP6643355B2 (ja) * 2014-12-29 2020-02-12 華為技術有限公司Huawei Technologies Co.,Ltd. Sdn、sdn構築方法、sdnベースのデータ伝送方法およびネットワークコントローラ
CN104749429A (zh) * 2015-04-08 2015-07-01 四川拓普测控科技有限公司 雷电过电压信号无损压缩记录系统
GB2543080A (en) * 2015-10-08 2017-04-12 Starfish Tech Ltd Digital media splicing system and method
US10446188B2 (en) * 2015-12-10 2019-10-15 Cine Design Group Llc Method and apparatus for low latency non-linear media editing using file-based inserts into finalized digital multimedia files
US10303505B2 (en) 2016-05-19 2019-05-28 International Business Machines Corporation Adjusting a computing environment for processing a data stream with dummy tuples
US11044291B2 (en) * 2018-09-28 2021-06-22 Microsft Technology Licensing, LLC Enhanced anchor protocol for event stream processing

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020041628A1 (en) * 1998-06-29 2002-04-11 Roger Andersson Method and apparatus for splicing
EP1463330A1 (en) * 1996-10-18 2004-09-29 General Instrument Corporation Splicing compressed packetized digital video streams
US6885680B1 (en) * 2000-01-24 2005-04-26 Ati International Srl Method for synchronizing to a data stream
CN1636403A (zh) * 2001-06-01 2005-07-06 通用仪表公司 数字视频传输流的拼接
CN1656807A (zh) * 2002-05-03 2005-08-17 希昌国际公司 多媒体内容剪辑
CN1697523A (zh) * 1998-04-29 2005-11-16 惠普公司 用于编辑压缩的图象序列的系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020154694A1 (en) * 1997-03-21 2002-10-24 Christopher H. Birch Bit stream splicer with variable-rate output
GB9707037D0 (en) * 1997-04-07 1997-05-28 Nds Ltd Improvements in or relating to modifying a digital bitstream
ID21786A (id) * 1997-09-17 1999-07-22 Matsushita Electric Ind Co Ltd Peralatan editing data video, disk optikal untuk digunakan sebagai media perekam peralatan editing data video dan media perekam komputer yang bisa dibaca yang menyimpan program editing
US7031348B1 (en) * 1998-04-04 2006-04-18 Optibase, Ltd. Apparatus and method of splicing digital video streams
US7096481B1 (en) * 2000-01-04 2006-08-22 Emc Corporation Preparation of metadata for splicing of encoded MPEG video and audio
US7610205B2 (en) * 2002-02-12 2009-10-27 Dolby Laboratories Licensing Corporation High quality time-scaling and pitch-scaling of audio signals
US20020191116A1 (en) * 2001-04-24 2002-12-19 Damien Kessler System and data format for providing seamless stream switching in a digital video recorder
US7522667B2 (en) * 2005-02-24 2009-04-21 Freescale Semiconductor, Inc. Method and apparatus for dynamic determination of frames required to build a complete picture in an MPEG video stream
US7636395B2 (en) * 2005-03-14 2009-12-22 Nokia Corporation Method and device for splicing video data in compressed domain
US7826536B2 (en) * 2005-12-29 2010-11-02 Nokia Corporation Tune in time reduction
CA2655490A1 (en) * 2006-07-11 2008-01-17 Donald Craig Waugh Method, system and apparatus for dispensing drugs
JP4837744B2 (ja) * 2006-10-31 2011-12-14 パナソニック株式会社 多重化装置、集積回路、多重化方法、多重化プログラム、多重化プログラムを記録したコンピュータ読み取り可能な記録媒体及び多重化ストリームを記録したコンピュータ読み取り可能な記録媒体
US9032433B2 (en) * 2007-10-05 2015-05-12 Alcatel Lucent Personalized ad insertion during start over service
US10193655B2 (en) * 2008-01-15 2019-01-29 Futurewei Technologies, Inc. Method and apparatus for scheduling multimedia streams over a wireless broadcast channel
US8743906B2 (en) * 2009-01-23 2014-06-03 Akamai Technologies, Inc. Scalable seamless digital video stream splicing
WO2010125583A2 (en) * 2009-04-28 2010-11-04 Vubites India Private Limited Method and apparatus for coordinated splicing of multiple streams

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1463330A1 (en) * 1996-10-18 2004-09-29 General Instrument Corporation Splicing compressed packetized digital video streams
CN1697523A (zh) * 1998-04-29 2005-11-16 惠普公司 用于编辑压缩的图象序列的系统
US20020041628A1 (en) * 1998-06-29 2002-04-11 Roger Andersson Method and apparatus for splicing
US6885680B1 (en) * 2000-01-24 2005-04-26 Ati International Srl Method for synchronizing to a data stream
CN1636403A (zh) * 2001-06-01 2005-07-06 通用仪表公司 数字视频传输流的拼接
CN1656807A (zh) * 2002-05-03 2005-08-17 希昌国际公司 多媒体内容剪辑

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110650353A (zh) * 2019-09-25 2020-01-03 广州华多网络科技有限公司 多人连麦混画方法及装置、存储介质及电子设备
CN110650353B (zh) * 2019-09-25 2020-12-04 广州华多网络科技有限公司 多人连麦混画方法及装置、存储介质及电子设备
WO2022267368A1 (zh) * 2021-06-23 2022-12-29 北京百度网讯科技有限公司 数据处理方法及装置,计算设备和介质

Also Published As

Publication number Publication date
CN102461195A (zh) 2012-05-16
WO2010125583A3 (en) 2011-04-07
US9319754B2 (en) 2016-04-19
EP2425621A2 (en) 2012-03-07
WO2010125582A8 (en) 2011-02-24
US9407970B2 (en) 2016-08-02
US20120047282A1 (en) 2012-02-23
WO2010125582A3 (en) 2010-12-23
WO2010125583A8 (en) 2011-01-20
EP2425629A2 (en) 2012-03-07
WO2010125583A2 (en) 2010-11-04
CN102461196B (zh) 2015-08-19
CN102461195B (zh) 2016-08-03
US20120128062A1 (en) 2012-05-24
CN102461196A (zh) 2012-05-16
WO2010125582A2 (en) 2010-11-04

Similar Documents

Publication Publication Date Title
CN102461196B (zh) 用于多个流的协调拼接的方法和设备
US7068719B2 (en) Splicing of digital video transport streams
US11570503B2 (en) Methods and systems for content control
US20150074708A1 (en) Anticipatory video signal reception and processing
US8681874B2 (en) Video insertion information insertion in a compressed bitstream
JP2000188759A (ja) 情報ストリ―ムの高フレ―ム精度シ―ムレス・スプライシング
CN101518082A (zh) 用于数字视频的快速频道转换的方法和装置
CN102037731A (zh) 压缩视频中属于互相关性层的图片的通知和抽取
US20090106807A1 (en) Video Distribution System for Switching Video Streams
CN101982974A (zh) 一种视频点播系统中的广告插播方法和装置
US20110103766A1 (en) Media Stream Processing
US20230269413A1 (en) Methods and systems for low latency streaming
US20230071277A1 (en) Methods and systems for content control
CN101517903B (zh) 多媒体信息接收装置
WO2009041869A1 (en) Method and arrangement relating to a media structure
CN102104795A (zh) 基于mpeg-2的多路ps流转复用为一路ts流的方法
CN101984667B (zh) 码率控制方法及码率控制器
CN1636387A (zh) 视频信息流分发单元
CN115883855B (zh) 播放数据处理方法、装置、计算机设备和存储介质
López et al. Linkage of additional contents to moving objects and video shots in a generic media framework for interactive television

Legal Events

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

Application publication date: 20151125

WD01 Invention patent application deemed withdrawn after publication