CN101316360B - 一种转换视频流帧率的方法和装置 - Google Patents
一种转换视频流帧率的方法和装置 Download PDFInfo
- Publication number
- CN101316360B CN101316360B CN2008101167904A CN200810116790A CN101316360B CN 101316360 B CN101316360 B CN 101316360B CN 2008101167904 A CN2008101167904 A CN 2008101167904A CN 200810116790 A CN200810116790 A CN 200810116790A CN 101316360 B CN101316360 B CN 101316360B
- Authority
- CN
- China
- Prior art keywords
- frame
- weight parameter
- present
- input video
- unit interval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Television Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种转换视频流帧率的方法和装置,所述方法包括:首先为单位时间内输入的m个输入视频帧分别分配权重参数,其中,所述m个输入视频帧的权重参数的总和为|m-n|;然后,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重大于或等于1,则对该当前帧进行抽帧或插帧处理,从该当前帧的权重参数减去1,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,由所述m个输入视频帧得到n个输出视频帧。本发明的技术方案可以灵活地实现不同帧率之间的转换。
Description
技术领域
本发明涉及多媒体处理技术领域,尤指转换视频流帧率的方法和装置。
背景技术
在多媒体处理过程中,由于网络带宽、实现编解码的数字信号处理器(DSP,Digital Signal Processor)的性能以及不同多媒体产品互通中的匹配问题等因素,经常需要对视频流进行帧率转换处理。
图1是现有技术中的多媒体处理系统的组成结构示意图。如图1所示,现有的多媒体处理系统为了同时兼容高清和标清视频码流,解码DSP的视频接口(VP,Video Port)输出给FPGA的帧率以及FPGA输出给编码DSP的VP口的帧率统一设置成可能的最高帧率,30帧/秒。如果应用层输出给解码DSP的帧率不足每秒30帧(目前,应用层输出给解码DSP的高清视频流的帧率是每秒5至30帧之间,标清视频流的帧率每秒是5至25帧之间),则需要解码DSP在解码后视频流中插入重复帧并在重复帧上打上相应的重复帧标志,以保证从解码DSP的VP口发送给FPGA的视频流的帧率是恒定的30帧/秒。并且编码DSP也需要将帧率为30帧/秒的视频码流转换成应用层所需的帧率的视频码流后再输出给应用层。
在图1所示的多媒体处理系统的解码DSP中,插入重复帧的过程为:解码DSP的VP口每1/30秒接收一个中断,并在每次中断到来时如果当前解码DSP有解码后的视频帧输出,则VP口将该视频帧输出给FPGA,如果当前解码DSP没有解码后的视频帧输出,则VP口将上一次发送的帧重复发送一遍,并打上重复帧标志。
在图1所示的多媒体处理系统的编码DSP中,通过查找跳帧表的方式 来实现帧率的变换。跳帧表如表1所示:
{
{1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0},/*类型1:25帧/秒*/
{1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0},/*类型2:20帧/秒*/
{1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0},/*类型3:15帧/秒*/
{1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0},/*类型4:10帧/秒*/
{1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0},/*类型5:5帧/秒*/
{1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0},/*类型6:3帧/秒*/
};
表1
参见表1,当编码DSP的输入帧率固定为30帧/秒时,首先根据编码DSP的输出帧率从跳帧表中选择“类型”,即如果编码DSP的输出帧率为25帧/秒时,选择“类型1”,如果编码DSP的输出帧率为20帧/秒时,选择“类型2”,以此类推;然后根据所选择“类型”所对应的由1×30的数组组成的子跳帧表,对输入编码DSP的帧率为30帧/秒的视频码流进行跳帧操作,具体为:对于1秒内输入的每个当前帧,当该当前帧的序号(1到30)所对应的子跳帧表中相应序号的数组数据为0时,表示该当前帧不输出,反之相应序号的数组数据为1时,表示该当前帧需要输出。
但是上述根据跳帧表对视频流进行帧率转换的方法不够灵活,只能支持跳帧表中所罗列的几种类型的帧率变换,如果需要支持所有可能的帧率变换情况,则跳帧表将变得很庞大。
发明内容
本发明的主要提供了两种转换视频码流帧率的方法,这两种方法可以灵活地实现不同帧率之间的转换。
本发明还提供了两种转换视频流帧率的装置,这两种装置可以灵活地实现不同帧率之间的转换。
为达到上述目的,本发明的技术方案具体是这样实现的:
本发明公开了一种转换视流帧率的方法,该方法用于将视频流的帧率由m帧/单位时间转换成n帧/单位时间,m和n均为自然数且m大于n,该方法包括:
为单位时间内输入的m个输入视频帧分别分配权重参数,其中,所述m个输入视频帧的权重参数的总和为m-n;依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重大于或等于1,则对该当前帧进行抽帧处理,从该当前帧的权重参数减去1,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,由所述m个输入视频帧得到n个输出视频帧。
本发明还公开了一种转换视频流帧率的方法,该方法用于将视频流的帧率由m帧/单位时间转换成n帧/单位时间,m和n均为自然数且m小于n,其特征在于,该方法包括:
为单位时间内输入的m个输入视频帧分别分配权重参数,其中,所述m个输入视频帧的权重参数的总和为n-m;
依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重参数大于或等于1,设该权重参数最多包括a个1,a为自然数,则将该当前帧作为输出视频帧的同时对该当前帧进行a次插帧处理,从该当前帧的权重参数减去a,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,由所述m个输入视频帧得到n个输出视频帧。
本发明还公开了一种转换视频流帧率的装置,该装置用于将帧率为m帧/单位时间的输入视频流转换成帧率为n帧/单位时间的视频流后输出,m和n均为自然数且m大于n,该装置包括:第一权重参数分配模块、第一帧率转换模块,其中,
第一权重参数分配模块,用于获取所述m和n的值,并为单位时间内输入的m个输入视频帧分别分配权重参数,将所分配的权重参数通知给第一帧率转换模块;其中,所述m个输入视频帧的权重参数的总和为m-n;
第一帧率转换模块,用于在接收第一权重参数分配模块的通知后,依次 对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重大于或等于1,则对该当前帧进行抽帧处理,从该当前帧的权重参数减去1,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧输出,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,在单位时间内输出n个输出视频帧。
本发明还公开了一种转换视频流帧率的装置,该装置用于将帧率为m帧/单位时间的输入视频流转换成帧率为n帧/单位时间的视频流后输出,m和n均为自然数且m小于n,其特征在于,该装置包括:第二权重参数分配模块、第二帧率转换模块,其中,
第二权重参数分配模块,用于获取所述m和n的值,并为单位时间内输入的m个输入视频帧分别分配权重参数,将所分配的权重参数通知给第二帧率转换模块;其中,所述m个输入视频帧的权重参数均的总和为n-m;
第二帧率转换模块,用于在接收第二权重参数分配模块的通知后,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重参数大于或等于1,设该权重参数最多包括a个1,a为自然数,则将该当前帧作为输出视频帧输出的同时对该当前帧进行a次插帧处理,从该当前帧的权重参数减去a,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧输出,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,在单位时间内输出n个输出视频帧。
由上述技术方案可见,本发明这种为单位时间内输入的m个视频帧分别分配权重参数,并对于所述m个输入视频帧中的每个当前帧,若该当前帧的权重参数满足一定条件,则对该当前帧进行抽帧或插帧处理,从当前帧的权重参数减去一定值,将剩余的权重参数传承给下一帧;反之,全当前帧的权重参数不满足条件时,直接将当前帧的权重参数传承给下一帧;最终在单位时间内输出n个视频帧的技术方案,相对于现有的根据跳帧表进行帧率转发 的方案而言,可以不受跳帧表中所预设的内容的限制,灵活地实现任意不同帧率之间的转换。
附图说明
图1是现有技术中的多媒体处理系统的组成结构示意图;
图2是本发明实施例一种转换视频流帧率的方法的流程图;
图3是本发明一种转换视频流帧率的装置的第一实施例结构框图;
图4是本发明一种转换视频流帧率的装置的第二实施例结构框图。
具体实施方式
图2是本发明实施例一种转换视频流帧率的方法的流程图。如图2所示,该方法用于将视频流的帧率由m帧/单位时间转换成n帧/单位时间,m和n均为自然数,该方法包括如图2所示的如下步骤:
步骤201,当需要将视频流的帧率由m帧/单位时间转换成n帧/单位时间时,首先为单位时间内输入的m个输入视频帧分别分配权重参数,其中,所述m个输入视频帧的权重参数的总和为|m-n|。
本步骤中,符号||表示取绝对值。
本步骤中,为所述m个输入视频帧中的每个视频帧分配的权重参数都是大于或等于0的值,即为非负值。
本步骤中,为单位时间内输入的m个输入视频帧分别分配权重参数时,可以为所述m个输入视频帧分配相同的权重参数,也可以为所述m个输入视频帧分配互不相同的权重参数,只要所述m个输入视频帧的权重参数之和等于|m-n|即可。本步骤的核心思想是,由于当m大于n时,需要对单位时间内输入的m个帧进行抽掉m-n个帧的处理得到n个输出帧,当m小于n时,需要对单位时间内输入的m个帧进行插入n-m个重复帧的处理得到n个输出帧,因此将“抽/插一个帧”所发生的概率以权重参数的形式分配给所述m个输入视频帧,最终能够在所述m个输入视频中抽/插|m-n|个 帧即可。正因为如此,本步骤中为单位时间内输入的m个输入视频帧分别分配权重参数的约束条件是:所述m个输入视频帧的权重参数均为正数且总和为|m-n|。
当m大于n时执行步骤202,当m小于n时执行步骤203。
步骤202,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重大于或等于1,则对该当前帧进行抽帧处理,从该当前帧的权重参数减去1,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,由所述m个输入视频帧得到n个输出视频帧。
步骤203,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重参数大于或等于1且该权重参数最多包括a个1,a为自然数,则将该当前帧作为输出视频帧的同时对该当前帧进行a次插帧处理,从该当前帧的权重参数减去a,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,由所述m个输入视频帧得到n个输出视频帧。
上述步骤202和步骤203的核心思想是,若当前帧的权重参数不满足抽/插帧的条件,则将当前帧的权重参数传承给下一帧;若当前帧的权重参数满足抽/插帧的条件,则对当前帧进行抽/插帧处理,并且有剩余的权重参数时,仍传承给下一帧。这样所有的权重参数都会起作用,不会被遗失,从而最终能够实现帧率由m帧/单位时间到n帧/单位时间的转换。
为使本发明的目的、技术方案及优点更加清楚明白,以下仍以图1所示的多媒体处理系统中所涉及的帧率转换问题为例,对本发明进一步详细说明。
在图1所示的多媒体处理系统的解码DSP中,由于是将每秒5~30帧的视频流转换成为恒定的每秒30帧的视频流,因此在解码DSP中对输入视 频流进行解码后可以应用步骤201和步骤203中所述的过程进行插帧处理。例如当输入解码DSP的视频流的帧率为20帧/秒时,解码后的帧率仍为20帧/秒,而解码DSP需要输出的是帧率为30帧/秒的视频流。因此在本实施例中,m=20,n=30。根据步骤201的方案,为解码后的每秒内的20帧分配权重参数且20帧的权重参数之和等于|20-30|=10,这里以简单的均匀分配为例,则每个帧的权重参数为|m-n|/m=1/2。根据步骤203的方案,对于所述解码后的每秒内的20帧:
第1帧的权重参数为1/2,小于1从而不满足插帧条件,因此将其权重参数累加到第2帧的权重参数上;
第2帧的权重参数为1/2+1/2=1,满足插帧条件,则在该第2帧之后重复插入一次该第2帧,在重复帧上打上重复标志,从第2帧的权重参数减去1后,余数为0,将该余数累加到第3帧的权重参数上;
第3帧的权重参数为1/2+0=1/2,小于1从而不满足插帧条件,因此将其权重参数累加到第4帧的权重参数上;
第4帧的权重参数为1/2+1/2=1,满足插帧条件,则在该第4帧之后重复插入一次该第4帧,在重复帧上打上重复标志,从第4帧的权重参数减去1后,余数为0,将该余数累加到第5帧的权重参数上;
以此类推直至第20帧,则最终得到的30个输出视频帧序列用其序号表示为:1、2、2、3、4、4、5、6、6、7、8、8、9、10、10、11、12、12、13、14、14、15、16、16、17、18、18、19、20、20。
在图1所示的多媒体处理系统的编码DSP中,由于编码DSP所接收的来自FPGA的视频流是带有重复帧的视频流,因此在本发明实施例中,编码DSP先根据重复帧标志过滤掉重复帧,统计出有效的输入帧率后,将所统计出的有效输入帧率转换成应用层所需的帧率后再编码输出。由于FPGA每秒钟向编码DSP发送30帧,因此当编码DSP收到第30帧时,刚好是一秒钟,编码DSP的VP口通过统计收到的30帧中的有效帧(即不带重复帧标志且未被过滤掉的帧)个数,就可以得到有效的输入帧率。若要防止抖动,也可 以多计算几次,然后取平均值。或者,也可以利用定时器,在一秒钟内统计有效帧数,得到实际的有效输入帧率。在本实施例中,FPGA在1秒内向编码DSP输入的视频流是:1、2、2、3、4、4、5、6、6、7、8、8、9、10、10、11、12、12、13、14、14、15、16、16、17、18、18、19、20、20,且编码DSP需要向应用层输出帧率为15帧/秒的视频流。则根据本发明的方案先过滤掉来自FPGA的视频流中的重复帧后得到实际的有效输入帧率为20帧/秒,因此在本实施例中,m=20,n=15,需要根据步骤201和步骤202进行抽帧处理。
根据步骤201的方案,为过滤掉重复帧后的每秒内的20帧分配权重参数且20帧的权重参数之和等于|20-15|=5,这里仍以简单的均匀分配为例,则每个帧的权重参数为|m-n|/m=1/4。根据步骤202的方案,对于所述过滤调重复帧后的每秒内的20帧:
第1帧的权重参数为1/4,小于1从而不满足抽帧条件,因此将其权重参数累加到第2帧的权重参数上;
第2帧的权重参数为1/4+1/4=1/2,小于1从而不满足抽帧条件,因此将其权重参数累加到第3帧的权重参数上;
第3帧的权重参数为1/4+1/4+1/4=3/4,小于1从而不满足抽帧条件,因此将其权重参数累加到第4帧的权重参数上;
第4帧的权重参数为1/4+1/4+1/4+1/4=1,满足抽帧条件,则在输出视频流中删除第4帧,从第4帧的权重参数减去1后,余数为0,将该余数累加到第5帧的权重参数上;
第5帧的权重参数为0+1/4=1/4,小于1从而不满足抽帧条件,因此将其权重参数累加到第6帧的权重参数上;
以此类推直至第20帧,则最终得到的15帧输出视频帧序列用其序号表示为:1、2、3、5、6、7、9、10、11、13、14、15、17、18、19。
在上述以图1所示的多媒体处理系统中所涉及的帧率转换问题为例的具体实例中,在编码DSP中在进行帧率转换之前先过滤掉重复帧的技术方 案,可以保证帧率变换是在原始帧的基础上进行的,并且相对于现有的根据跳帧表进行帧率转换的方案可以保证视频信息的完整性。这是因为根据表1所示的跳帧表对包含重复帧的30个视频帧进行抽帧处理时,可能会抽掉原始帧,而保留雷同的重复帧,从而丢失了部分视频信息。
在上述以图1所示的多媒体处理系统中所涉及的帧率转换问题为例的具体实例中,为单位时间内输入的m个输入视频帧分配权重参数时,都以均匀分配权重参数为例进行了说明,但实际当中权重参数也可以是非均匀分配的,只要满足所述的约束条件即可,之后的抽帧或插帧的过程不变,下面举例说明。
例如,在图1所示的多媒体处理系统的解码DSP中,m=20,n=30,根据步骤201的方案,为解码后的每秒内的20帧分配权重参数且20帧的权重参数之和等于|20-30|=10,这里以非均匀分配为例,设为所述解码后的每秒内的20帧分配的权重参数依次为:1/4,3/4,1/2,0,3/4,3/4,1/2,1/4,1/2,3/4,1/4,3/4,1/4,1/4,3/4,3/4,1/2,1/4,1/2,3/4。则根据步骤203的方案,对于所述解码后的每秒内20帧:
第1帧的权重参数为1/4,小于1从而不满足插帧条件,因此将其权重参数累加到第2帧的权重参数上;
第2帧的权重参数为1/4+3/4=1,满足插帧条件,则在该第2帧之后重复插入一次该第2帧,在重复帧上打上重复标志,从第2帧的权重参数减去1后,余数为0,将该余数累加到第3帧的权重参数上;
第3帧的权重参数为0+1/2=1/2,小于1从而不满足插帧条件,因此将其权重参数累加到第4帧的权重参数上;
第4帧的权重参数为1/2+0=1/2,不满足插帧条件,因此将其权重参数累加到第5帧的权重参数上;
第5帧的权重参数为1/2+3/4=5/4,满足插帧条件,则在该第5帧之后重复插入一次该第5帧,在重复帧上打上重复标志,从第5帧的权重参数减去1后,余数为1/4,将该余数累加到第6帧的权重参数上;
以此类推直至第20帧,则最终得到的30个输出视频帧序列用其序号表示为:1、2、2、3、4、5、5、6、6、7、8、9、9、10、10、11、12、12、13、14、15、15、16、16、17、18、19、19、20、20。
又例如在图1所示的多媒体处理系统的编码DSP中,先过滤掉来自FPGA的视频流中的重复帧后得到实际的有效输入帧率为20帧/秒,且编码DSP需要向应用层输出帧率为15帧/秒的视频流,因此,m=20,n=15。根据步骤201的方案,为过滤掉重复帧后的每秒内的20帧分配权重参数且20帧的权重参数之和等于|20-15|=5,这里以非均匀分配为例,设为所述过滤掉重复帧后的每秒内的20帧分配的权重参数依次为:1/4,1/8,1/8,1/2,3/8,1/8,1/8,1/8,1/8,1/8,1/2,1/2,1/4,1/2,1/4,1/8,1/4,1/8,0,1/2。则根据步骤202的方案,对于所述过滤调重复帧后的每秒内的20帧:
第1帧的权重参数1/4,小于1从而不满足抽帧条件,因此将其权重参数累加到第2帧的权重参数上;
第2帧的权重参数1/4+1/8=3/8,小于1从而不满足抽帧条件,因此将其权重参数累加到第3帧的权重参数上;
第3帧的权重参数为3/8+1/8=1/2,小于1从而不满足抽帧条件,因此将其权重参数累加到第4帧的权重参数上;
第4帧的权重参数为1/2+1/2=1,满足抽帧条件,则在输出视频流中删除第4帧,从第4帧的权重参数减去1后,余数为0,将该余数累加到第5帧的权重参数上;
第5帧的权重参数为0+3/8=3/8,小于1从而不满足抽帧条件,因此将其权重参数累加到第6帧的权重参数上;
以此类推直至第20帧,则最终得到的15帧输出视频帧序列用其序号表示为:1、2、3、5、6、7、8、9、11、13、14、16、17、18、19。
针对均匀分配权重参数,本申请的发明人还归纳出了一套可以简单计算的公式用于实现图2所述的转换视频流帧率的方法,具体如下:
设输入视频流帧率为m帧/单位时间,输出视频流帧率为n帧/单位时间;
y为单位时间内输入的输入视频帧的序号,1<=y<=m;
每个输入视频帧的权重参数为:Z=|m-n|/m;
权重参数Z的分子为:A=|m-n|;
权重参数Z的分母为:B=m;
则对于第y个输入视频帧,其之前的y-1个输入视频帧能够传承给该第y个输入视频帧的剩余权重为:Cy=(A×(y-1))%B;
则第y个输入视频帧的权重参数为:Xy=(Cy+A)/B;
将Cy代入可得:Xy=((A×(y-1))%B+A)/B;
将A和B代入可得:Xy=((|m-n|×(y-1))%m+|m-n|)/m。
当Xy大于或等于1时表示第y个输入视频帧需要进行抽帧或插帧处理,下面举三个具体例子:
例1:m=5,n=3,1<=y<=5,则Z=2/5,A=2,B=5,Cy=(2×(y-1))%5,Xy=((2×(y-1))%5+2)/5;
则X1=((2×(1-1))%5+2)/5=2/5;
X2=((2×(2-1))%5+2)/5=4/5;
X3=((2×(3-1))%5+2)/5=6/5;(满足抽帧条件,将第3帧抽掉);
X4=((2×(4-1))%5+2)/5=3/5;
X5=((2×(5-1))%5+2)/5=5/5;(满足抽帧条件,将第5帧抽掉);
最后输出的视频帧用其序号表示为:1、2、4。
从结果来看,被抽的帧均匀分布在输入序列中。
例2:m=3,n=5,1<=y<=3则Z=2/3,A=2,B=3,Cy=(2×(y-1))%3,Xy=((2×(y-1))%3+2)/3;
则X1=((2×(1-1))%3+2)/3=2/3;
X2=((2×(2-1))%3+2)/3=4/3;(满足插帧条件且X2=4/3中最多包含一个1,因此将第2帧重复插入一次);
X3=((2×(3-1))%3+2)/3=3/3;(满足插帧条件且X3=3/3中最多包含一个1,因此将第3帧重复插入一次);
最后输出的视频帧用其序号表示为:1、2、2、3、3。
从结果来看,插帧均匀分布在输入序列中。
例3:m=3,n=9,1<=y<=3则Z=6/3,A=6,B=3,Cy=(6×(y-1))%3,Xy=((6×(y-1))%3+6)/3;
则X1=((6×(1-1))%3+6)/3=2;(满足插帧条件且X1=2中最多包含两个1,因此将第1帧重复插入两次);
X2=((6×(2-1))%3+6)/3=2;(满足插帧条件且X2=2中最多包含两个1,因此将第2帧重复插入两次);
X3=((6×(3-1))%3+6)/3=2;(满足插帧条件且X3=2中最多包含两个1,因此将第3帧重复插入两次);
最后输出的视频帧用其序号表示为:1、1、1、2、2、2、3、3、3。
从结果来看,插帧均匀分布在输入序列中。
基于上述实施例,接下来给出本发明一种转换视频流帧率的装置的组成结构。
图3是本发明一种转换视频流帧率的装置的第一实施例结构框图。该装置用于将帧率为m帧/单位时间的输入视频流转换成帧率为n帧/单位时间的视频流后输出,m和n均为自然数且m大于n。如图3所示,该装置包括:第一权重参数分配模块301、第一帧率转换模块302,其中:
第一权重参数分配模块301,用于获取所述m和n的值,并为单位时间内输入的m个输入视频帧分别分配权重参数,将所分配的权重参数通知给第一帧率转换模块302;其中,所述m个输入视频帧的权重参数的总和为m-n;
第一帧率转换模块302,用于在接收权重参数分配模块301的通知后,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重大于或等于1,则对该当前帧进行抽帧处理,从该当前帧的权重参数减去1,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧输出,并将该当 前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,在单位时间内输出n个输出视频帧。
在图3中,第一帧率转换模块302对当前帧进行抽帧处理是,从输出视频流中删除所述当前帧。
当如图3所示的装置应用于多媒体处理系统中的编码数字信号处理器中时,该装置进一步包括:第一重复帧过滤模块303,用于根据重复帧标志,从输入所述编码数字信号处理器的视频流中过滤掉重复帧,得到所述帧率为m帧/单位时间的输入视频码流。
图4是本发明一种转换视频流帧率的装置的第二实施例结构框图。该装置用于将帧率为m帧/单位时间的输入视频流转换成帧率为n帧/单位时间的视频流后输出,m和n均为自然数且m小于n。如图4所示,该装置包括:第二权重参数分配模块401、第二帧率转换模块402,其中:
第二权重参数分配模块401,用于获取所述m和n的值,并为单位时间内输入的m个输入视频帧分别分配权重参数,将所分配的权重参数通知给第二帧率转换模块402;其中,所述m个输入视频帧的权重参数的总和为n-m;
第二帧率转换模块402,用于在接收第二权重参数分配模块401的通知后,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重参数大于或等于1且该权重参数最多包括a个1,a为自然数,则将该当前帧作为输出视频帧输出的同时对该当前帧进行a次插帧处理,从该当前帧的权重参数减去a,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧输出,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,在单位时间内输出n个输出视频帧。
在图4中,第二帧率转换模块402对当前帧进行插帧处理是,在输出视频流中重复插入所述当前帧。
在图4中,第二权重参数分配模块401,可以为所述单位时间内输入的m个输入视频流分配相同的权重参数,且该参数的取值为
当如图4所示的装置应用于多媒体处理系统中的编码数字信号处理器中时,该装置进一步包括:第二重复帧过滤模块402,用于根据重复帧标志,从输入所述编码数字信号处理器的视频流中过滤掉重复帧,得到所述帧率为m帧/单位时间的输入视频码流。
综上所述,本发明这种为单位时间内输入的m个视频帧分别分配权重参数,并对于所述m个输入视频帧中的每个当前帧,若该当前帧的权重参数满足一定条件,则对该当前帧进行抽帧或插帧处理,从当前帧的权重参数减去一定值,将剩余的权重参数传承给下一帧;反之,全当前帧的权重参数不满足条件时,直接将当前帧的权重参数传承给下一帧;最终在单位时间内输出n个视频帧的技术方案,相对于现有的根据跳帧表进行帧率转发的方案而言,可以不受跳帧表中所预设的内容的限制,灵活地实现任意不同帧率之间的转换。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种转换视频流帧率的方法,该方法用于将视频流的帧率由m帧/单位时间转换成n帧/单位时间,m和n均为自然数且m大于n,其特征在于,该方法包括:
为单位时间内输入的m个输入视频帧分别分配权重参数,其中,所述m个输入视频帧的权重参数的总和为m-n;
依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重大于或等于1,则对该当前帧进行抽帧处理,从该当前帧的权重参数减去1,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,由所述m个输入视频帧得到n个输出视频帧。
3.如权利要求1或2所述的方法,其特征在于,当该方法应用于多媒体处理系统中的编码数字信号处理器中时,该方法在所有步骤之前进一步包括:
根据重复帧标志,从输入所述编码数字信号处理器的视频流中过滤掉重复帧,得到所述帧率为m帧/单位时间的输入视频流。
4.一种转换视频流帧率的方法,该方法用于将视频流的帧率由m帧/单位时间转换成n帧/单位时间,m和n均为自然数且m小于n,其特征在于,该方法包括:
为单位时间内输入的m个输入视频帧分别分配权重参数,其中,所述m个输入视频帧的权重参数的总和为n-m;
依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重参数大于或等于1,设该权重参数最多包括a个1,a为自然数,则将该当前帧作为输出视频帧的同时对该当前帧进行a次插帧处理,从该当前帧的权重参数减去a,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,由所述m个输入视频帧得到n个输出视频帧。
6.如权利要求4或5所述的方法,其特征在于,当该方法应用于多媒体处理系统中的编码数字信号处理器中时,该方法在所有步骤之前进一步包括:
根据重复帧标志,从输入所述编码数字信号处理器的视频流中过滤掉重复帧,得到所述帧率为m帧/单位时间的输入视频流。
7.一种转换视频流帧率的装置,该装置用于将帧率为m帧/单位时间的输入视频流转换成帧率为n帧/单位时间的视频流后输出,m和n均为自然数且m大于n,其特征在于,该装置包括:第一权重参数分配模块、第一帧率转换模块,其中,
第一权重参数分配模块,用于获取所述m和n的值,并为单位时间内输入的m个输入视频帧分别分配权重参数,将所分配的权重参数通知给第一帧率转换模块;其中,所述m个输入视频帧的权重参数的总和为m-n;
第一帧率转换模块,用于在接收权重参数分配模块的通知后,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重大于或等于1,则对该当前帧进行抽帧处理,从该当前帧的权重参数减去1,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧输出,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,在单位时间内输出n个输出视频帧。
8.如权利要求7所述的装置,其特征在于,当该装置应用于多媒体处理系统中的编码数字信号处理器中时,该装置进一步包括:第一重复帧过滤模块,用于根据重复帧标志,从输入所述编码数字信号处理器的视频流中过滤掉重复帧,得到所述帧率为m帧/单位时间的输入视频流。
9.一种转换视频流帧率的装置,该装置用于将帧率为m帧/单位时间的输入视频流转换成帧率为n帧/单位时间的视频流后输出,m和n均为自然数且m小于n,其特征在于,该装置包括:第二权重参数分配模块、第二帧率转换模块,其中,
第二权重参数分配模块,用于获取所述m和n的值,并为单位时间内输入的m个输入视频帧分别分配权重参数,将所分配的权重参数通知给第二帧率转换模块;其中,所述m个输入视频帧的权重参数的总和为n-m;
第二帧率转换模块,用于在接收权重参数分配模块的通知后,依次对于所述m个输入视频帧中的每一个当前帧执行如下的处理:如果该当前帧的权重参数大于或等于1,设该权重参数最多包括a个1,a为自然数,则将该当前帧作为输出视频帧输出的同时对该当前帧进行a次插帧处理,从该当前帧的权重参数减去a,并将余数累加到当前帧的下一帧的权重参数上;反之,如果该当前帧的权重参数小于1,则将该当前帧作为输出视频帧输出,并将该当前帧的权重参数累加到当前帧的下一帧的权重参数上;如此,在单位时间内输出n个输出视频帧。
10.如权利要求9所述的装置,其特征在于,当该装置应用于多媒体处理系统中的编码数字信号处理器中时,该装置进一步包括:第二重复帧过滤模块,用于根据重复帧标志,从输入所述编码数字信号处理器的视频流中过滤掉重复帧,得到所述帧率为m帧/单位时间的输入视频流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101167904A CN101316360B (zh) | 2008-07-17 | 2008-07-17 | 一种转换视频流帧率的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101167904A CN101316360B (zh) | 2008-07-17 | 2008-07-17 | 一种转换视频流帧率的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101316360A CN101316360A (zh) | 2008-12-03 |
CN101316360B true CN101316360B (zh) | 2011-04-13 |
Family
ID=40107175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101167904A Active CN101316360B (zh) | 2008-07-17 | 2008-07-17 | 一种转换视频流帧率的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101316360B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102348117A (zh) * | 2010-08-03 | 2012-02-08 | 深圳Tcl新技术有限公司 | 低带宽传输数字高清信号的系统、方法及网络多媒体电视 |
EP2905963A4 (en) * | 2012-10-05 | 2016-08-03 | Sony Corp | ENCODING CONTROL DEVICE AND ENCODING CONTROL METHOD |
CN105392000B (zh) * | 2015-10-29 | 2018-11-20 | 无锡天脉聚源传媒科技有限公司 | 一种视频帧率转换的对齐方法及装置 |
CN106060425A (zh) * | 2015-12-03 | 2016-10-26 | 大连科迪视频技术有限公司 | 一种基于fpga的串行视频信号时钟恢复系统及方法 |
CN106028139A (zh) * | 2016-05-16 | 2016-10-12 | 乐视控股(北京)有限公司 | 降帧率的实时转码方法和装置 |
CN110996170B (zh) * | 2019-12-10 | 2022-02-15 | Oppo广东移动通信有限公司 | 视频文件播放方法及相关设备 |
CN114510139B (zh) * | 2020-11-16 | 2024-06-04 | 深圳市万普拉斯科技有限公司 | 一种调频方法、装置及电子设备 |
CN112449243B (zh) * | 2021-01-28 | 2021-06-15 | 浙江华创视讯科技有限公司 | 一种视频处理方法、装置、设备及存储介质 |
-
2008
- 2008-07-17 CN CN2008101167904A patent/CN101316360B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101316360A (zh) | 2008-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101316360B (zh) | 一种转换视频流帧率的方法和装置 | |
CN101009848B (zh) | 在vsb发送系统中具有增强型多路复用数据的数字发送系统 | |
TWI747091B (zh) | 熵編碼及解碼方案 | |
TW307077B (en) | Reformatting of variable rate data for fixed rate communication | |
CN106170922A (zh) | 数据的源编码和解码的设备和方法 | |
JPS63132530A (ja) | ビツトレート低減方法および装置 | |
CN102130742A (zh) | 纠错编码装置和方法、及纠错解码装置和方法 | |
CN105009540A (zh) | 一种加扰方法及加扰装置 | |
CN102724015B (zh) | 传送数据的方法 | |
CN108574695A (zh) | 协议复用芯片和协议复用方法 | |
CN100496001C (zh) | 以太网物理层复用和解复用装置及方法 | |
CN103780435A (zh) | 使用端口号掩码对数据流进行分类的方法及系统 | |
CN101431602A (zh) | 信号处理设备 | |
TW201246842A (en) | Network transceiver and bandwidth management method thereof | |
CN108605145A (zh) | 混合的布尔-令牌ans系数代码化 | |
CN102480340B (zh) | 发送设备、发送方法、接收设备、接收方法和传输系统 | |
CN102546441B (zh) | 一种报文分流方法和网络设备 | |
JP4285774B2 (ja) | フレームに挿入されるデータエレメントを処理する装置 | |
DE112011103868B4 (de) | Füllung nach Kanalkodierung (Wiederholung) und Verschachteln | |
CN102487307A (zh) | 一种用于fc协议的eof极性选择方法 | |
CN107769977A (zh) | 一种基于软交换的电力通信网络资源分配方法 | |
CN110324625A (zh) | 一种视频解码方法和装置 | |
JP5557339B2 (ja) | デシメーションフィルタ及びデシメーション処理方法 | |
KR101268934B1 (ko) | 데이터 압축/해제장치 및 방법 | |
CN101777966B (zh) | 一种千兆以太网扩展实时数据通道的方法 |
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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |