CN101374231B - 合并多个视频流的系统以及相应使用的方法 - Google Patents

合并多个视频流的系统以及相应使用的方法 Download PDF

Info

Publication number
CN101374231B
CN101374231B CN2008100931686A CN200810093168A CN101374231B CN 101374231 B CN101374231 B CN 101374231B CN 2008100931686 A CN2008100931686 A CN 2008100931686A CN 200810093168 A CN200810093168 A CN 200810093168A CN 101374231 B CN101374231 B CN 101374231B
Authority
CN
China
Prior art keywords
video flowing
video
timestamp
frame
flowing
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.)
Expired - Fee Related
Application number
CN2008100931686A
Other languages
English (en)
Other versions
CN101374231A (zh
Inventor
L·雷昂
K·索哈
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.)
ViXS Systems Inc
Original Assignee
ViXS Systems Inc
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 ViXS Systems Inc filed Critical ViXS Systems Inc
Publication of CN101374231A publication Critical patent/CN101374231A/zh
Application granted granted Critical
Publication of CN101374231B publication Critical patent/CN101374231B/zh
Expired - Fee Related 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/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
    • 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/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4344Remultiplexing of multiplex streams, e.g. by modifying time stamps or remapping the packet identifiers
    • 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/439Processing of audio elementary streams
    • 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/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/440263Processing 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 altering the spatial resolution, e.g. for displaying on a connected PDA
    • 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/440281Processing 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 altering the temporal resolution, e.g. by frame skipping

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

一种合并多个视频流的系统包括时间戳调节模块,其通过调节第二视频流的多个时间戳产生调节后的第二视频流。视频流拼接模块通过将调整后的第二视频流拼接到第一视频流的末端而产生合并的视频流。

Description

合并多个视频流的系统以及相应使用的方法
技术领域
本发明涉及在诸如视频编码器/编解码器的装置中使用的编码。
背景技术
视频编码已经成为现代视频处理装置的重要问题。健壮的(robust)编码算法允许以减小的带宽传送视频信号,并将其存储在更少的存储器中。但是,这些编码方法的精确性面临着正变得习惯于更高分辨率和更高图片质量的用户的推敲。已经为许多编码方法提出了标准,包括H.264标准,其也被称为MPEG-4Part 10或高级视频编码(AVC)。虽然该标准提出了许多功能强大的技术,但是其只涉及单个视频流的编码。
通过将这样的系统与本发明相比,传统和常规方法的进一步限制和缺点对于本领域技术人员来说将显而易见。
发明内容
根据本发明的一方面,提供了一种合并包括第一视频流和第二视频流的多个视频流的系统,所述系统包括:预处理模块,确定第二视频流的第一个画面组是否不是闭合的画面组,并且当第一个画面组不是闭合的画面组时,丢弃第一个画面组的P帧之前的一系列B帧;耦接到预处理模块的时间戳调节模块,通过调节第二视频流的多个时间戳来产生调节后的第二视频流;和耦接到时间戳调节模块的视频流拼接模块,通过将调节后的第二视频流拼接到第一视频流的末端而产生合并的视频流,其中时间戳调节模块进一步基于第一视频流的至少一个时间戳和第二视频流的至少一个时间戳确定时间戳差,以及通过所述时间戳差来调节第二视频流的所述多个时间戳,其中时间戳调节模块进一步通过确定第一视频流的最后一个视频帧的呈现时间戳值和第二视频流的第一个视频帧的呈现时间戳值之间的第一差、并将所述第一差加到第一视频流的最后一个视频帧的持续时间来确定时间戳差。
根据本发明的另一方面,提供了一种合并包括第一视频流和第二视频流的多个视频流的方法,所述方法包括:当第一视频流的末端不对应于完整包时,经由预处理模块插入填充字节,以在第一视频流的末端产生完整包;经由耦接到预处理模块的时间戳调节模块调节第二视频流的多个时间戳来产生调节后的第二视频流;和经由耦接到时间戳调节模块的视频流拼接模块通过将调节后的第二视频流拼接到第一视频流的末端而产生合并的视频流,其中所述经由时间戳调节模块调节第二视频流的多个时间戳来产生调节后的第二视频流的步骤包括:基于第一视频流的至少一个时间戳和第二视频流的至少一个时间戳确定时间戳差;和通过所述时间戳差来调节第二视频流的所述多个时间戳,其中所述基于第一视频流的至少一个时间戳和第二视频流的至少一个时间戳确定时间戳差的步骤包括确定第一视频流的最后一个视频帧的呈现时间戳值和第二视频流的第一个视频帧的呈现时间戳值之间的第一差、并将所述第一差加到第一视频流的最后一个视频帧的持续时间。
附图说明
图1显示了根据本发明一个实施例的视频处理装置125的框图表示。
图2显示了根据本发明一个实施例的视频合并模块150的框图表示。
图3显示了根据本发明一个实施例的将视频流300和302合并以形成合并的视频流320的实例表示。
图4显示了根据本发明另一实施例的视频合并模块151的框图表示。
图5显示了根据本发明一个实施例的视频编码器102的框图表示。
图6显示了根据本发明一个实施例的视频分发系统175的框图表示。
图7显示了根据本发明一个实施例的视频存储系统179的框图表示。
图8显示了根据本发明一个实施例的方法的流程图表示。
图9显示了根据本发明一个实施例的方法的流程图表示。
图10显示了根据本发明一个实施例的方法的流程图表示。
图11显示了根据本发明一个实施例的方法的流程图表示。
图12显示了根据本发明一个实施例的方法的流程图表示。
图13显示了根据本发明一个实施例的方法的流程图表示。
具体实施方式
图1显示了根据本发明一个实施例的视频处理装置125的框图表示。特别地,视频处理装置125包括接收模块100,诸如机顶盒、电视接收机、个人计算机、有线电视接收机、卫星广播接收机、宽带调制解调器、3G收发器或其他能够从一个或多个诸如广播有线系统、广播卫星系统、互联网、数字视频盘播放器、数字视频录像机或其他视频源这样的源接收多个视频信号110的信息接收机或收发器。视频编码模块102耦接到接收模块100,以对视频信号110编码、转换速率(transrate)和/或转换编码(transcode),并将2个或多个视频信号110合并以形成处理后的视频信号112。
在本发明的一个实施例中,视频信号110可以包括广播视频信号,诸如电视信号、高清晰度电视信号、增强的高清晰度电视信号或其他已经在无线介质上直接地或通过一个或多个卫星或其他中继站或通过有线网络、光网络或其他传送网络传送的广播视频信号。此外,视频信号110可以从所存储的视频文件中产生,从诸如磁带、磁盘或光盘之类的记录介质中重放,并且可以包括在诸如局域网、广域网、城域网或互联网这样的公共或专用网络上传送的流式视频信号。
视频信号110可以包括以包括全国电视系统委员会制式(NTSC)、逐行倒相制式(PAL)或顺序传送彩色与存储制式(SECAM)的多种视频格式中任何一个为格式的模拟视频信号。处理后的视频信号112包括数字视频编解码器标准,诸如H.264、MPEG-4Part 10高级视频编码(AVC)或诸如运动图象专家组(MPEG)格式(诸如MPEG1、MPEG2或MPEG4)、Quicktime格式、Real Media格式、Windows Media Video(WMV)或音频视频交织(AVI)这样的其他数字格式,或另一数字视频格式,或者是标准的或者是专有的。
视频合并模块150包括许多可选功能和特征,以下将结合图2-12来描述。
图2显示了根据本发明一个实施例的视频合并模块150的框图表示。特别地,视频合并模块150被提供用于合并多个数字视频流,诸如来自视频信号110的数字视频流,包括视频流200和视频流202。在该实施例中,视频合并模块150包括时间戳调节模块155和视频流拼接模块160,其操作如下。
时间戳调节模块155通过调节视频流202的多个时间戳而产生调节后的视频流212。视频流拼接模块160通过将调节后的视频流212拼接到视频流200的末端而产生合并的视频流220。
在本发明的一个实施例中,视频流200和202包括相关联的音频编程(audio programming)。每个视频帧包括呈现(presentation)时间戳(PTS),其中呈现时间戳可以直接从进入的(incoming)节目流的打包基本流(PES:packetized elementary stream)层被检索或者可以基于来自先前帧时间戳的PES层而被计算。每个音频帧也具有以类似方式检索或计算的PTS。视频流200和202还包括一序列的解码时间戳(DTS),这些解码时间戳被用于根据一个或多个视频编码标准控制视频流的解码。如果系统时钟基准是连续的,则视频流202可以被拼接到视频流200的末端,特别地,视频流202的PTS和DTS被调节以与视频流200的PTS和DTS邻接。
时间戳调节模块155基于视频流200的至少一个时间戳和视频流202的至少一个时间戳确定时间戳差,诸如时间增量(time delta),以便通过时间戳差来调节视频流202的这多个时间戳。时间戳调节模块155通过确定视频流200的最后一个视频帧的呈现时间戳值与视频流202的第一个视频帧的呈现时间戳值之间的第一差、并将第一差加到第一视频流的最后一个视频帧的持续时间来确定时间戳差。利用第一差调节视频流202的每个时间戳允许时间戳调节模块155产生具有在视频流200末端处的呈现时间戳停止处拾取(pick up)的解码戳和呈现时间戳的视频流212。这允许视频流拼接模块160产生定时就好像视频流200继续、但是具有视频流202的视频帧的合并的视频流220。
在本发明的一个实施例中,时间戳调节模块155和视频流拼接模块以在诸如Xcode II MPEG编码器/视频处理器芯片这样的视频编码器芯片上运行的软件实现,但是其他实现,包括其他硬件、软件和固件同样也是可能的。
图3显示了根据本发明一个实施例的将视频流300和302合并以形成合并的视频流320的实例表示。特别地,所示的实例包括视频流300,诸如视频流200,其在视频流的最后一个画面组(GOP)中具有多个以解码器顺序呈现的画面(利用大写字母表示)。第一个字母表示视频帧类型,对应于视频流的B帧、I帧和P帧。数字表示每个画面的显示顺序。视频流302、诸如视频流202也被呈现,以类似的方式显示第一GOP,但是画面以非大写字母表示。
视频流302’通过以时间戳差调节每个时间戳而从视频流302中形成,其计算可以如下:
(i1的新PTS/DTS)=(P15的PTS)+(P15的显示持续时间)
(时间戳差)=(i1的新PTS/DTS)-(i1的原始PTS/DTS)
如图所示,可以当视频流302’被拼接到视频流300的末端时通过将时间戳差加到原始PTS/DTS、在合并的视频流320中形成连续的PTS/DTS而调节视频流302的每个画面的PTS/DTS。对于相应的音频帧,调节被加到PTS值。
显然,可以通过将一个或多个附加的视频流拼接到视频流302’的末端而重复该过程。此外,视频流300和视频流302可以是先前以类似方式被拼接的视频流。通过这种方式,本发明可以形成包含任意数量的单个视频流的合并的视频流320。
如图所示,视频流302的第一视频帧是具有序列首标(sequenceheader)的I帧。如果不是,则I帧之前的帧可以被丢弃。类似地,第一I帧显示时间的DTS之前的所有音频帧也可以被丢弃,以形成连续的流。
虽然在本实例中,合并后的视频流320是以类似的方式通过调节视频流302的时间戳而形成的,但是视频流300的时间戳可以被调节以匹配视频流302的时间戳,从而当视频流302被拼接到视频流300的末端时,时间戳也是连续的,其中视频流302的第一个画面具有基于视频流300的调节后的时间戳在哪里停止而继续的时间戳。
图4显示了根据本发明另一实施例的视频合并模块151的框图表示。该实施例包括视频合并模块150的类似元件,这些类似元件以相同附图标记表示。此外,处理模块210预处理视频流200’和202’,以形成视频流200和202。
特别地,预处理模块210可以在视频流200’的末端处添加填充符以形成视频流200,从而对准(align)视频流200’的末端。例如,对于根据DVD规范的本发明的操作(DVD规范将包定义为包含包首标系统首标(pack header system header)和数据的2048个字节),当第一视频流的末端不对应于完整包(complete pack)时,预处理模块210可以插入填充字节以在视频流的末端产生完整包。此外,如果在视频流200’的视频的最后一个帧的末端处存在附加的音频帧,则这些音频帧可以被预处理模块210在视频流200形成时丢弃。
此外,如果视频流200’和202’的视频帧速率(video frame rate)、视频分辨率(video resolution)、音频采样率和音频比特速率不相等,则预处理模块210可以通过转换速率和/或转换编码来调节这些视频流中一个或另一个的视频帧速率、视频分辨率、音频采样率和音频比特率,以产生具有相等视频帧速率、视频分辨率、音频采样率和音频比特率的视频流200和202。此外,预处理模块确定第二视频流的第一个画面组是否不是闭合的(closed)画面组,并且当第一个画面组不是闭合的画面组时,预处理模块210可以丢弃第一画面组的P帧之前的B帧,以产生平滑的过渡。
在本发明一个实施例中,可以使用单个处理装置或多个处理装置实现预处理模块210。这样的处理装置可以是微处理器、协处理器、微控制器、数字信号处理器、微型计算机、中央处理单元、现场可编程门阵列、可编程逻辑器件、状态机、逻辑电路、模拟电路、数字电路和/或任何基于存储在可以是单个存储器装置或多个存储器装置的存储器中的操作指令操纵(模拟和/或数字)信号的装置。这样的存储器装置可以包括硬盘驱动器或其他磁盘驱动器、只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、闪存、高速缓冲存储器、和/或任何存储数字信息的装置。注意,当预处理模块210经由状态机、模拟电路、数字电路和/或逻辑电路实现其一个或多个功能时,存储相应操作指令的存储器可以被嵌入到包括状态机、模拟电路、数字电路和/或逻辑电路的电路中,或者在该电路外。
图5显示了根据本发明一个实施例的视频编码器102的框图表示。特别地,视频编码器102根据H.264标准、MPEG-4标准、VC-1(SMPTE标准421M)或其他标准的许多功能和特征工作,以对经由信号接口198所接收的视频输入信号110进行编码、转换速率或转换代码。
视频编码器102包括可以利用单个处理装置或多个处理装置实现的处理模块230。这样的处理装置可以是微处理器、协处理器、微控制器、数字信号处理器、微型计算机、中央处理单元、现场可编程门阵列、可编程逻辑器件、状态机、逻辑电路、模拟电路、数字电路和/或任何基于存储在存储器、诸如存储器模块202中的操作指令操纵(模拟和/或数字)信号的装置。存储器模块202可以是单个存储器装置或多个存储器装置。这样的存储器装置可以包括硬盘驱动器或其他磁盘驱动器、只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、闪存、高速缓冲存储器、和/或任何存储数字信息的装置。注意,当处理模块经由状态机、模拟电路、数字电路和/或逻辑电路实现其一个或多个功能时,存储相应操作指令的存储器可以被嵌入到包括状态机、模拟电路、数字电路和/或逻辑电路的电路中,或者在电路外。
处理模块230以及存储器模块232经由总线250耦接到信号接口198和多个其他模块,诸如视频合并模块150、运动补偿模块234和编码模块236。根据处理模块200的具体实现,视频编码器102的模块可以以软件、固件或硬件实现。还应当注意,本发明的软件实现可以被存储在诸如磁盘或光盘、只读存储器或随机存取存储器这样的有形存储介质上,并且也可以被生产为制造产品。虽然示出了特定总线架构,但是根据本发明同样可以实现使用附加总线和/或一个或多个模块之间直接连接性的替换架构。
在工作中,运动补偿模块234和编码模块236操作以基于视频信号110的单个视频流或者基于诸如合并的视频流220这样的合并的视频流产生压缩视频流。运动补偿模块234在视频流的每个帧或场的多个宏块(macroblock)中操作,从而生成对应于每个宏块的最终运动矢量的剩余亮度(luma)和/或色度(chroma)像素值。编码模块236通过将剩余像素值变换编码和量化为量化的变换后的系数而生成处理后的视频信号112,其中量化的变换后的系数可以被进一步编码,诸如通过熵编码中的熵编码、被解块(de-blocking)滤波器滤波并被传送和/或被存储作为处理后的视频信号112。在数字视频流被编码器102接收的转换编码应用中,进入的视频信号可以在进一步编码、转换速率或转换编码之前被合并。可替换地,可以利用这里所述的本发明合并两个或更多编码、转换速率或转换编码后的视频流。
图6显示了根据本发明一个实施例的视频分发系统175的框图表示。特别地,处理后的视频信号112(包含合并的视频流220)经由传送路径122被传送到视频解码器104。视频解码器104又可以操作以解码处理后的视频信号,以在诸如电视机10、计算机20或其他显示装置之类的显示装置上显示,或者可替换地以与视频编码器102相反的方式操作以将合并的视频流220分割为单独的视频流。
传送路径122可以包括根据诸如802.11协议、WIMAX协议、蓝牙协议等等这样的无线局域网协议操作的无线路径。此外,传送路径可以包括根据诸如通用串行总线协议、以太网协议或其他高速协议这样的有线协议操作的有线路径。
图7显示了根据本发明一个实施例的视频存储系统179的框图表示。特别地,装置11是具有内置数字录像机功能的机顶盒、独立的数字录像机、DVD录像机/播放机或其他存储处理后的视频信号112或合并的视频流220的装置,用于在诸如电视机12之类的视频显示装置上显示。虽然视频编码器102被显示为独立的装置,但是其可以进一步被结合到装置11中。虽然这些特定的设备被示出,但是视频存储系统179可以包括硬盘驱动器、闪存器件、计算机、DVD刻录机或任何其他能够根据所述方法和系统并结合这里所述的本发明的特征和功能产生、存储、解码和/或显示合并的视频流220的装置。
图8显示了根据本发明一个实施例的方法的流程图表示。特别地,所示的方法用于与图1-7所述的一个或多个功能和特征结合使用,以合并第一和第二视频流。在步骤400中,调整第二视频流的多个时间戳。在步骤402中,通过将第二视频流拼接到第一视频流的末端而产生合并的视频流。
在本发明的一个实施例中,步骤400包括基于第一视频流的至少一个时间戳和第二视频流的至少一个时间戳确定时间戳差,以及通过时间戳差来调节第二视频流的这多个时间戳。步骤400也可以包括确定第一视频流的最后一个视频帧的呈现时间戳值和第二视频流的第一个视频帧的呈现时间戳值之间的第一差、并将该第一差加到第一视频流的最后一个视频帧的持续时间。第二视频流的第一视频帧可以是I帧,并且特别地可以被标识为以I帧开始。第二视频流的这多个时间戳可以包括多个呈现时间戳和多个解码时间戳。
图9显示了根据本发明一个实施例的方法的流程图表示。特别地,方法被示为和与图8相关联所描述的方法结合使用。在步骤500中,方法确定第一视频流的末端是否对应于完整包或者以其他方式被对准。如果不是,则在方法继续执行之前,当第一视频流的末端不对应于完整包时,插入填充字节被插入以在第一视频流的末端产生完整包,如步骤502所示。
图10显示了根据本发明一个实施例的方法的流程图表示。特别地,方法被示为和与图8相关联描述的方法结合使用。在步骤510中,方法确定对于这多个视频流,是否所有帧速率都相等。如果不是,则在方法继续执行之前,这多个视频流的至少一个的帧速率被调节以产生对于这多个视频流中每一个都相等的帧速率,如步骤512所示。
图11显示了根据本发明一个实施例的方法的流程图表示。特别地,方法被示为和与图8相关联描述的方法结合使用。在步骤520中,方法确定对于这多个视频流,是否所有的视频分辨率都相等。如果不是,则在方法继续执行之前,这多个视频流的至少一个的视频分辨率被调节以产生对于这多个视频流中每一个都相等的视频分辨率,如步骤522所示。
图12显示了根据本发明一个实施例的方法的流程图表示。特别地,方法被示为和与图8相关联描述的方法结合使用,其中这多个视频流包括相应数量的音频流。在步骤530中,方法确定对于这多个音频流,是否所有的采样率和比特率都相等。如果不是,则在方法继续执行之前,这多个音频流中至少一个的采样率和/或比特率被调节以产生对于这多个音频流中每一个都相等的采样率和比特率,如步骤532所示。
图13显示了根据本发明一个实施例的方法的流程图表示。特别地,方法被示为与结合图8所描述的方法结合使用。在步骤540中,方法确定第二视频流的第一画面组是否不是闭合的画面组。当第一画面组不是闭合的画面组时,在方法继续执行之前,丢弃第一画面组的P帧之前的一系列B帧,如步骤542所示。
在优选实施例中,利用0.35微米或更小的CMOS技术实现各电路部件。但是,在本发明的宽泛范围内可以使用其他电路技术,集成的和非集成的都可以。
虽然这里已经清楚地描述了本发明的各种功能和特征的特定组合,但是这些特征和功能的其他组合也是可以的,其不受这里所公开的特定实例的限制,而被明确地结合到本发明的范围之中。
本领域的普通技术人员将理解,这里所使用的术语“基本上”或“近似”为其相应术语和/或项目间相对性提供了产业上可接受的容差。这样的产业上可接受的容差的范围从小于百分之一到百分之二十,并对应于、但不限制于元件值、集成电路工艺偏差、温度偏差、上升和下降时间、和/或热噪声。项目之间的这样的相对性的范围从百分之几的差到巨大的差。本领域的普通技术人员将理解,这里所使用的术语“耦接”包括直接耦接或经由另一部件、元件、电路或模块的间接耦接,其中对于间接耦接,中间的部件、元件、电路或模块不修改信号的信息,而可以调节其电流电平、电压电平、和/或功率电平。本领域的普通技术人员还将理解,推断的耦接(即,一个元件通过推断耦接到另一元件)包括方式与“被耦接”相同的两个元件之间的直接和间接耦接。本领域的普通技术人员还将理解,这里所使用的术语“赞同地比较”表示两个或多个元件、项目、信号等之间的比较提供期望的关系。例如,当期望的关系是信号1具有比信号2更大的幅度时,当信号1的幅度大于信号2的幅度或者当信号2的幅度小于信号1的幅度时可以实现赞同的比较。
作为本发明各实施例的描述中所使用的术语“模块”,模块包括以执行诸如处理输入信号以产生输出信号这样的一个或多个模块功能的硬件、软件、和/或固件实现的功能块。如这里所使用的,模块可以包括本身是模块的子模块。
因此,这里已经描述了一种设备和方法、以及包括优选实施例的几个实施例,用于实现视频编码器和与其结合使用的视频合并模块。这里所述的本发明的各实施例具有将本发明与现有技术相区别的特征。
本领域的技术人员将清楚,所公开的本发明可以以多种方式被修改,并且可以假设许多不同于前文陈述和描述的优选形式的实施例。因此,所附的权利要求旨在涵盖落入本发明真实精神和范围之内的本发明的所有修改。

Claims (14)

1.一种合并包括第一视频流和第二视频流的多个视频流的系统,所述系统包括:
预处理模块,确定第二视频流的第一个画面组是否不是闭合的画面组,并且当第一个画面组不是闭合的画面组时,丢弃第一个画面组的P帧之前的一系列B帧;
耦接到预处理模块的时间戳调节模块,通过调节第二视频流的多个时间戳来产生调节后的第二视频流;和
耦接到时间戳调节模块的视频流拼接模块,通过将调节后的第二视频流拼接到第一视频流的末端而产生合并的视频流,
其中时间戳调节模块进一步基于第一视频流的至少一个时间戳和第二视频流的至少一个时间戳确定时间戳差,以及通过所述时间戳差来调节第二视频流的所述多个时间戳,其中时间戳调节模块进一步通过确定第一视频流的最后一个视频帧的呈现时间戳值和第二视频流的第一个视频帧的呈现时间戳值之间的第一差、并将所述第一差加到第一视频流的最后一个视频帧的持续时间来确定时间戳差。
2.根据权利要求1的系统,其中第二视频流的第一视频帧是I帧。
3.根据权利要求1的系统,其中第二视频流的所述多个时间戳包括多个呈现时间戳和多个解码时间戳。
4.根据权利要求1的系统,其中预处理模块被设置为当第一视频流的末端不对应于完整包时插入填充字节,以在第一视频流的末端产生完整包。
5.根据权利要求1的系统,其中预处理模块被设置为调节所述多个视频流中至少一个的帧速率,以为所述多个视频流中每一个产生相等的帧速率。
6.根据权利要求1的系统,其中预处理模块被设置为调节所述多个视频流中至少一个的视频分辨率,以为所述多个视频流中每一个产生相等的视频分辨率。
7.根据权利要求1的系统,其中所述多个视频流包括相应的多个音频流,并且预处理模块被设置为调节所述多个音频流中至少一个的采样率和比特率,以为所述多个音频流中每一个产生相等的采样率和相等的比特率。
8.一种合并包括第一视频流和第二视频流的多个视频流的方法,所述方法包括:
当第一视频流的末端不对应于完整包时,经由预处理模块插入填充字节,以在第一视频流的末端产生完整包;
经由耦接到预处理模块的时间戳调节模块调节第二视频流的多个时间戳来产生调节后的第二视频流;和
经由耦接到时间戳调节模块的视频流拼接模块通过将调节后的第二视频流拼接到第一视频流的末端而产生合并的视频流,
其中所述经由时间戳调节模块调节第二视频流的多个时间戳来产生调节后的第二视频流的步骤包括:基于第一视频流的至少一个时间戳和第二视频流的至少一个时间戳确定时间戳差;和通过所述时间戳差来调节第二视频流的所述多个时间戳,其中所述基于第一视频流的至少一个时间戳和第二视频流的至少一个时间戳确定时间戳差的步骤包括确定第一视频流的最后一个视频帧的呈现时间戳值和第二视频流的第一个视频帧的呈现时间戳值之间的第一差、并将所述第一差加到第一视频流的最后一个视频帧的持续时间。
9.根据权利要求8的方法,其中第二视频流的第一视频帧是I帧。
10.根据权利要求8的方法,其中第二视频流的所述多个时间戳包括多个呈现时间戳和多个解码时间戳。
11.根据权利要求8的方法,还包括:
预处理模块调节所述多个视频流中至少一个的帧速率,以为所述多个视频流中每一个产生相等的帧速率。
12.根据权利要求8的方法,还包括:
预处理模块调节所述多个视频流中至少一个的视频分辨率,以为所述多个视频流中每一个产生相等的视频分辨率。
13.根据权利要求8的方法,其中所述多个视频流包括相应的多个音频流,并且其中所述方法还包括:
调节所述多个音频流中至少一个的采样率和比特率,以为所述多个音频流中每一个产生相等的采样率和相等的比特率。
14.根据权利要求8的方法,还包括:
预处理模块确定第二视频流的第一个画面组是否不是闭合的画面组,并且当第一个画面组不是闭合的画面组时,丢弃第一个画面组的P帧之前的一系列B帧。
CN2008100931686A 2007-04-30 2008-04-24 合并多个视频流的系统以及相应使用的方法 Expired - Fee Related CN101374231B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/799,101 2007-04-30
US11/799,101 US8379677B2 (en) 2007-04-30 2007-04-30 System for combining a plurality of video streams and method for use therewith

Publications (2)

Publication Number Publication Date
CN101374231A CN101374231A (zh) 2009-02-25
CN101374231B true CN101374231B (zh) 2012-11-14

Family

ID=39624330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100931686A Expired - Fee Related CN101374231B (zh) 2007-04-30 2008-04-24 合并多个视频流的系统以及相应使用的方法

Country Status (4)

Country Link
US (1) US8379677B2 (zh)
EP (1) EP1988717A1 (zh)
JP (2) JP2008278492A (zh)
CN (1) CN101374231B (zh)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100145794A1 (en) * 1999-10-21 2010-06-10 Sean Barnes Barger Media Processing Engine and Ad-Per-View
JP2010033188A (ja) * 2008-07-25 2010-02-12 Fujitsu Ltd 送信経路選択装置、データ送信システム、コンピュータ装置および送信経路選択方法
US8832587B2 (en) * 2009-08-21 2014-09-09 Avaya Inc. Video window with integrated content
CN102725192B (zh) * 2010-01-26 2015-08-26 星克跃尔株式会社 用于控制车辆的黑盒子中的视频记录的装置和方法
US20110310956A1 (en) * 2010-06-22 2011-12-22 Jian-Liang Lin Methods for controlling video decoder to selectively skip one or more video frames and related signal processing apparatuses thereof
KR101355975B1 (ko) * 2010-10-19 2014-01-29 한국전자통신연구원 스케일러블 위성방송의 적응적 재생장치 및 방법
EP2448265A1 (en) 2010-10-26 2012-05-02 Google, Inc. Lip synchronization in a video conference
CN102595253B (zh) * 2011-01-11 2017-03-22 中兴通讯股份有限公司 一种传输流平滑拼接的方法和系统
TWI486055B (zh) * 2011-06-29 2015-05-21 Nueteq Technology Inc 影像訊號傳送裝置、接收裝置、傳輸系統及其方法
US9210302B1 (en) 2011-08-10 2015-12-08 Google Inc. System, method and apparatus for multipoint video transmission
US8736756B2 (en) * 2011-09-24 2014-05-27 Nueteq Technology, Inc. Video signal sending device, receiving device, and transmission system
US9591098B2 (en) 2012-02-01 2017-03-07 Cisco Technology, Inc. System and method to reduce stream start-up delay for adaptive streaming
US8917309B1 (en) 2012-03-08 2014-12-23 Google, Inc. Key frame distribution in video conferencing
US9027052B2 (en) * 2012-05-04 2015-05-05 Adsparx USA Inc System and method for in-stream advertising on an internet connected device
US20140140417A1 (en) * 2012-11-16 2014-05-22 Gary K. Shaffer System and method for providing alignment of multiple transcoders for adaptive bitrate streaming in a network environment
US9351011B2 (en) * 2012-11-28 2016-05-24 Intel Corporation Video pipeline with direct linkage between decoding and post processing
US9674539B2 (en) * 2013-03-14 2017-06-06 Infocus Corporation Concurrent decompression of multiple video streams with constrained decompression resources
CN103167342B (zh) * 2013-03-29 2016-07-13 天脉聚源(北京)传媒科技有限公司 一种音视频同步处理装置及方法
CN103248950A (zh) * 2013-04-28 2013-08-14 天脉聚源(北京)传媒科技有限公司 一种视频帧率定制的系统及方法
CN103414941A (zh) * 2013-07-15 2013-11-27 深圳Tcl新技术有限公司 基于智能电视的节目编辑方法及装置
US9923945B2 (en) 2013-10-10 2018-03-20 Cisco Technology, Inc. Virtual assets for on-demand content generation
CN105981397B (zh) * 2014-02-10 2020-06-16 杜比国际公司 将编码音频嵌入到传输流中以供用于完美拼接
KR101568381B1 (ko) 2014-06-24 2015-11-12 주식회사 더블유코퍼레이션 대체광고 전환에 따라 발생되는 오디오 노이즈를 제거하기 위한 장치 및 방법
CN104967864B (zh) * 2014-09-26 2019-01-11 腾讯科技(北京)有限公司 一种合并视频的方法及装置
KR102170691B1 (ko) * 2014-12-18 2020-10-27 한화테크윈 주식회사 감시용 카메라, 감시용 기록 장치, 및 감시 시스템
US9609275B2 (en) 2015-07-08 2017-03-28 Google Inc. Single-stream transmission method for multi-user video conferencing
CN105141973A (zh) * 2015-09-01 2015-12-09 北京暴风科技股份有限公司 多分段的媒体文件拼接方法和系统
JP6588801B2 (ja) 2015-10-30 2019-10-09 キヤノン株式会社 画像処理装置、画像処理方法、及び、プログラム
CN105592321A (zh) * 2015-12-18 2016-05-18 无锡天脉聚源传媒科技有限公司 一种视频剪辑的方法和装置
CN105578260A (zh) * 2015-12-18 2016-05-11 无锡天脉聚源传媒科技有限公司 一种视频剪辑的方法和装置
CN105791938B (zh) * 2016-03-14 2019-06-21 腾讯科技(深圳)有限公司 多媒体文件的拼接方法和装置
JP6368335B2 (ja) * 2016-05-24 2018-08-01 日本電信電話株式会社 トランスコード装置、映像配信システム、トランスコード方法、映像配信方法及びトランスコードプログラム
CN105997039B (zh) * 2016-06-20 2018-11-27 广州贝护佳医疗科技有限公司 胎心监护图谱显示方法和系统
CN105997038B (zh) * 2016-06-20 2018-11-27 广州贝护佳医疗科技有限公司 胎心监护数据的筛选方法和系统
WO2018002677A1 (en) * 2016-06-27 2018-01-04 Balázs Ferenc István Method for 3d reconstruction with a mobile device
CN106851350B (zh) * 2016-12-30 2019-07-30 中广热点云科技有限公司 一种传输流平滑拼接的系统及方法
US20180278947A1 (en) * 2017-03-24 2018-09-27 Seiko Epson Corporation Display device, communication device, method of controlling display device, and method of controlling communication device
US10638192B2 (en) * 2017-06-19 2020-04-28 Wangsu Science & Technology Co., Ltd. Live streaming quick start method and system
US10681104B1 (en) * 2017-09-13 2020-06-09 Amazon Technologies, Inc. Handling media timeline offsets
US10432987B2 (en) 2017-09-15 2019-10-01 Cisco Technology, Inc. Virtualized and automated real time video production system
US10638180B1 (en) 2018-07-20 2020-04-28 Amazon Technologies, Inc. Media timeline management
CN109040811A (zh) * 2018-08-16 2018-12-18 北京奇艺世纪科技有限公司 一种视频播放方法及装置
CN109729373B (zh) * 2018-12-27 2020-12-08 广州华多网络科技有限公司 流媒体数据的混流方法、装置及存储介质、计算机设备
CN111478914B (zh) * 2020-04-14 2022-08-16 广州酷狗计算机科技有限公司 时间戳处理方法、装置、终端及存储介质
CN115529488A (zh) * 2022-11-23 2022-12-27 中育博(北京)科技有限公司 一种视频录制拼接方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1021048A2 (en) * 1999-01-14 2000-07-19 Kabushiki Kaisha Toshiba Digital video recording system and its recording medium
US6611624B1 (en) * 1998-03-13 2003-08-26 Cisco Systems, Inc. System and method for frame accurate splicing of compressed bitstreams
CN1636403A (zh) * 2001-06-01 2005-07-06 通用仪表公司 数字视频传输流的拼接

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359712A (en) * 1991-05-06 1994-10-25 Apple Computer, Inc. Method and apparatus for transitioning between sequences of digital information
JPH09114443A (ja) * 1995-10-20 1997-05-02 Seiko Epson Corp 映像スケーリング装置
JP3405034B2 (ja) * 1995-12-27 2003-05-12 ソニー株式会社 ディジタル信号多重化方法及び装置、並びにディジタル信号記録媒体
US5996022A (en) 1996-06-03 1999-11-30 Webtv Networks, Inc. Transcoding data in a proxy computer prior to transmitting the audio data to a client
US7143432B1 (en) * 1999-10-01 2006-11-28 Vidiator Enterprises Inc. System for transforming streaming video data
GB0007868D0 (en) 2000-03-31 2000-05-17 Koninkl Philips Electronics Nv Methods and apparatus for editing digital video recordings and recordings made by such methods
US7197070B1 (en) * 2001-06-04 2007-03-27 Cisco Technology, Inc. Efficient systems and methods for transmitting compressed video data having different resolutions
US7428019B2 (en) * 2001-12-26 2008-09-23 Yeda Research And Development Co. Ltd. System and method for increasing space or time resolution in video
US7139017B2 (en) * 2002-01-29 2006-11-21 Koninklijke Philips Electronics N.V. Method and system for obtaining the best picture quality in a scarce-power device
AU2003228353A1 (en) * 2002-03-22 2003-10-13 Michael F. Deering Scalable high performance 3d graphics
JP2003338991A (ja) * 2002-05-22 2003-11-28 Sony Corp 画像表示装置及び画像表示方法
JP2005039794A (ja) * 2003-07-18 2005-02-10 Matsushita Electric Ind Co Ltd 表示処理方法及び表示処理装置
JP4179178B2 (ja) * 2004-02-03 2008-11-12 ソニー株式会社 送受信システム、送信装置、受信装置、情報処理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6611624B1 (en) * 1998-03-13 2003-08-26 Cisco Systems, Inc. System and method for frame accurate splicing of compressed bitstreams
EP1021048A2 (en) * 1999-01-14 2000-07-19 Kabushiki Kaisha Toshiba Digital video recording system and its recording medium
CN1636403A (zh) * 2001-06-01 2005-07-06 通用仪表公司 数字视频传输流的拼接

Also Published As

Publication number Publication date
EP1988717A1 (en) 2008-11-05
CN101374231A (zh) 2009-02-25
JP5346112B2 (ja) 2013-11-20
US20080267222A1 (en) 2008-10-30
JP2013021710A (ja) 2013-01-31
JP2008278492A (ja) 2008-11-13
US8379677B2 (en) 2013-02-19

Similar Documents

Publication Publication Date Title
CN101374231B (zh) 合并多个视频流的系统以及相应使用的方法
US6980594B2 (en) Generation of MPEG slow motion playout
Lee et al. The VC-1 and H. 264 video compression standards for broadband video services
KR101215615B1 (ko) 동일 채널 내에서 서로 다른 코덱을 이용하여 부호화된 비디오 및 오디오 데이터 스트림의 재생을 위한 코덱 변경 방법 및 장치
CN101902634B (zh) 有剧烈场景变化检测的视频代码转换系统及其使用的方法
JP5223769B2 (ja) 復号装置および方法、プログラム、並びに記録媒体
US20080120676A1 (en) Integrated circuit, an encoder/decoder architecture, and a method for processing a media stream
US6792045B2 (en) Image signal transcoder capable of bit stream transformation suppressing deterioration of picture quality
US20030002583A1 (en) Transcoding of video data streams
CN100521791C (zh) 图像处理设备和图像处理方法
EP1553779A1 (en) Data reduction of video streams by selection of frames and partial deletion of transform coefficients
WO2010057027A1 (en) Method and apparatus for splicing in a compressed video bitstream
JP2001028748A (ja) データ再生伝送装置及びデータ再生伝送方法
US7079578B2 (en) Partial bitstream transcoder system for compressed digital video bitstreams
JP2001506437A (ja) クロミナンス信号処理に起因するルミナンス欠陥を補償する方法及び装置
CN101902633A (zh) 有高场景成本检测的视频代码转换系统及其使用的方法
JPH1013826A (ja) 画像符号化装置および画像符号化方法、画像復号化装置および画像復号化方法、画像送信装置、画像受信装置、並びに記録媒体
JP4906197B2 (ja) 復号装置および方法、並びに記録媒体
US7054370B2 (en) Apparatus and method of transcoding video snap image
JP2006525731A (ja) 新標準への移行をサポートする多階層符号化
JP4875285B2 (ja) 編集装置および方法
JP2010062871A (ja) より高いピクチャレートの圧縮hd映像を、h.264規格を用いるレガシーhd映像デコーダでの復号に対応可能な、より低いピクチャレートの圧縮映像に変換する方法および装置
KR100335435B1 (ko) 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법
Song et al. 1080p 60 Hz intra-frame video CODEC chip design and its implementation
Stolitzka et al. New JPEG 2000 Profiles for Broadcast Contribution

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121114

Termination date: 20180424

CF01 Termination of patent right due to non-payment of annual fee