CN105070035B - 红外遥控码流的实时压缩方法和装置 - Google Patents
红外遥控码流的实时压缩方法和装置 Download PDFInfo
- Publication number
- CN105070035B CN105070035B CN201510527087.2A CN201510527087A CN105070035B CN 105070035 B CN105070035 B CN 105070035B CN 201510527087 A CN201510527087 A CN 201510527087A CN 105070035 B CN105070035 B CN 105070035B
- Authority
- CN
- China
- Prior art keywords
- comparative sample
- pulse
- sample
- code
- remote control
- 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
Landscapes
- Selective Calling Equipment (AREA)
- Details Of Television Systems (AREA)
Abstract
本发明提供一种红外遥控码流的实时压缩方法和装置。所述压缩方法包括:接收红外遥控码流,所述红外遥控码流具有连续的多个码脉冲,所述码脉冲至少包括两种不同类型,每个码脉冲包括高电平和低电平,其中高电平为预定频率的载波脉冲,不同类型的码脉冲的高电平持续时间和低电平的持续时间不同;依次获得并记录所述红外遥控码流的各个码脉冲,其中记录的每个码脉冲包括其高电平持续时间和低电平持续时间;将记录的每个码脉冲与包括第一比较样本和第二比较样本的一组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集,其中将最近记录的两个不同的码脉冲分别作为第一比较样本和第二比较样本。这样大大节省了RAM的空间。
Description
【技术领域】
本发明涉及红外遥控码流处理领域,特别涉及一种红外遥控码流的实时压缩方法和装置。
【背景技术】
目前,对于市场上的智能设备上的红外遥控器的学习方案大都采用具有大容量RAM(随机存储存储器)的MCU(微中央处理器)来进行数据缓存,然后再把缓存的数据发送给智能设备,从而完成整个红外信号的学习过程。而内置大容量的RAM的MCU势必提高了整个方案的成本。
图1是一帧完整的红外遥控码流的波形,其包括有多个种类型的码脉冲,比如TA、TB、TC、TD,每个码脉冲包括有高电平和低电平,不同类型的码脉冲的高电平持续时间和低电平持续时间不同,同类型的码脉冲的高电平持续时间和低电平持续时间相同,而高电平则是由若干个固定频率的载波脉冲组成的,利用固定频率的载波脉冲来替代高电平是为了降低整个MCU的发射功耗,而低电平中不含固定载波频率脉冲。图1所示的整个码流波形是由TA,TB,TC,TD这些码脉冲组成。在其他的一帧红外遥控码流中,其也可能包括这些码脉冲的不同组合,也可以包括其他类型的码脉冲。现有技术中的已经定义好了各类码脉冲,各种码脉冲组合可以形成一帧红外遥控码流。
要实现一帧红外遥控码流的实时存储,最直接的方法就是采用大的RAM进行直接缓存。在一个例子中,对于由500个码脉冲(比如TA和TB)形成的红外遥控码流,按照每个码脉冲占用4个字节计算,高电平持续时间占用2个字节,低电平持续时间占用2个字节,要对其实现实时存储,就需要2000byte的RAM单元,这样的存储方式会造成巨大的RAM资源浪费。
因此,期待提出一种改进的红外遥控码流的实时压缩方法和装置,其能够尽可能的节省RAM资源。
【发明内容】
本发明的目的之一在于提供一种红外遥控码流的实时压缩方法和装置,其可以对红外遥控码流进行实时压缩,从而可以节省RAM资源。
为了解决上述问题,根据本发明的一个方面,本发明提供一种红外遥控码流的实时压缩方法,其包括:接收红外遥控码流,所述红外遥控码流具有连续的多个码脉冲,所述码脉冲至少包括两种不同类型,每个码脉冲包括高电平和低电平,其中高电平为预定频率的载波脉冲,不同类型的码脉冲的高电平持续时间和低电平的持续时间不同;依次获得并记录所述红外遥控码流的各个码脉冲,其中记录的每个码脉冲包括其高电平持续时间和低电平持续时间;将记录的每个码脉冲与包括第一比较样本和第二比较样本的一组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集,其中将最近记录的两个不同的码脉冲分别作为第一比较样本和第二比较样本。
根据本发明的另一个方面,本发明提供一种红外遥控码流的实时压缩装置,其包括:接收单元,用于接收红外遥控码流,所述红外遥控码流具有连续的多个码脉冲,所述码脉冲至少包括两种不同类型,每个码脉冲包括高电平和低电平,其中高电平为预定频率的载波脉冲,不同类型的码脉冲的高电平持续时间和低电平的持续时间不同;获取单元,用于依次获得并记录所述红外遥控码流的各个码脉冲,其中记录的每个码脉冲包括其高电平持续时间和低电平持续时间;编码单元,将记录的每个码脉冲与包括第一比较样本和第二比较样本的一组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集,其中将最近记录的两个不同的码脉冲分别作为第一比较样本和第二比较样本。
与现有技术相比,本发明中提供了一种简单、易行的红外遥控码流的实时压缩方案,其可以对红外遥控码流进行实时压缩,从而可以节省RAM资源。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
图1示出了一帧完整的红外遥控码流的波形;
图2示出了本发明中的红外遥控码流的实时压缩方案的示例;
图3示出了本发明中的红外遥控码流的实时压缩方法在一个实施例中的流程示意图;和
图4示出了本发明中的红外遥控码流的实时压缩装置在一个实施例中的结构示意图。
【具体实施方式】
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
图3示出了本发明中的红外遥控码流的实时压缩方法300在一个实施例中的流程示意图。如图3所示的,所述实时压缩方法300包括如下步骤。
步骤310,接收红外遥控码流。
所述红外遥控码流具有连续的多个码脉冲,所述码脉冲至少包括两不同类型,每个码脉冲包括高电平和低电平,其中高电平为预定频率的载波脉冲,不同类型的码脉冲的高电平持续时间和低电平的持续时间不同。预定频率的载波范围可以为0~80KHz。一帧红外遥控码流的最大长度可达到1s以上,码脉冲个数最大可达500个。
图2中的(a)示意出了红外遥控码流的波形的一个示例,其中其具有的多个码脉冲,这些码脉冲分为TA、TB、TC和TD四种不同类型,码脉冲TA与码脉冲TB的高电平持续时间和低电平持续时间是不同的,而两个码脉冲TB的高电平持续时间和低电平持续时间是相同的。
这些红外遥控码流来自另一个红外遥控码流发射设备,比如电视机的红外遥控器,空调的红外遥控器。
步骤320,依次获得并记录所述红外遥控码流的各个码脉冲,其中记录的每个码脉冲包括其高电平持续时间和低电平持续时间。
在一个实施例中,计算所述红外遥控码流的第一个码脉冲的高电平中的预定频率的载波脉冲的单个周期值,记录当前码脉冲的高电平中的载波脉冲的个数,该载波脉冲的个数将被作为该当前码脉冲的高电平持续时间,后续可以基于载波脉冲的个数和载波脉冲的单个周期值计算可以计算出该当前码脉冲的高电平持续时间。利用定时器来计算出该当前码脉冲的低电平持续时间。这样就完成了一个码脉冲的记录。重复同样的方法,可以得到并记录后续的各个码脉冲的高电平持续时间和低电平持续时间。所述码脉冲的高电平持续时间和低电平持续时间均由N字节的二进制序列表示,其中N为大于等于1的整数,比如N为2。
图2中的(b)示意出了获得的各个码脉冲的示例。每个码脉冲包括两部分数据,高电平持续时间数据和低电平时序时间数据,该时间范围为几十微秒到几百毫秒,比如TAH为码脉冲TA的高电平持续时间的数据,TAL为码脉冲TA的低电平持续时间的数据,TBH为码脉冲TB的高电平持续时间的数据,TBL为码脉冲TB的低电平持续时间的数据等。需要了解的是,这些码脉冲不是同时被缓存下来的,而是被分时被缓存下来的,即得到TAH和TAL,之后就可以开始对TAH和TAL进行压缩,而不是将所有的码脉冲缓存下来之后,才开始进行后续的压缩。在本发明中,每个码脉冲的高电平持续时间数据占用2字节,低电平时序时间数据占用2字节,即记录每个码脉冲需要4个字节的数据。
步骤330,将记录的每个码脉冲与包括第一比较样本和第二比较样本的一组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集,其中将最近记录的两个不同的码脉冲分别作为第一比较样本和第二比较样本。
在一个实施例中,将记录的当前码脉冲与当前组比较样本中的第一比较样本和第二比较样本进行匹配。具体的,将当前码脉冲的高电平持续时间和低电平持续时间分别与当前组比较样本中的第一比较样本和第二比较样本的高电平持续时间和低电平持续时间进行比较,如果当前码脉冲的高电平持续时间与一个比较样本的高电平持续时间一致,且当前码脉冲的低电平持续时间与该比较样本的低电平持续时间一致,则认为当前码脉冲与该比较样本相匹配,否则,则认为当前码脉冲与该比较样本不匹配。
如果当前码脉冲与第一比较样本匹配,则将所述样本索引号序列中的对应位标记为第一值,如果当前码脉冲与第二比较样本匹配,则将所述样本索引号序列中的对应位标记为第二值,同时将当前组比较样本的索引总数累加1,每个码脉冲对应样本索引号序列中的一位。
如果当前码脉冲与第二比较样本和第一比较样本都不匹配,则存储当前组比较样本中的第一比较样本作为码脉冲存储样本集中的一个码脉冲存储样本,将当前组比较样本中的第二比较样本更新为第一比较样本,将当前码脉冲更新为第二比较样本,从而形成新的一组比较样本,为该新的一组比较样本设置索引总数,并将索引总数设置为初始值,将样本索引号序列中的对应位标记为第二值。
具体的,所述样本索引号序列为二进制序列,所述二进制序列中的每个位对应从所述红外遥控码流中获得的一个码脉冲,第一值为0,第二值为1,或者第一值为1,第二值为0;每组比较样本的索引总数的初始值为1,每组比较样本的索引总数占用M个字节,其中M为大于等于1的整数,每组比较样本中的每个比较样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示,所述码脉冲存储样本集中的每个码脉冲存储样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示。
下面请参看图2中的(b)、(c)、(d)、(e)、(f),其给出了一个压缩编码示例。
在获取码脉冲的初期,第一组比较样本中的两个比较样本都为空。
先对获得的红外遥控码流的第一个码脉冲TA进行处理,由于是第一码脉冲,因此直接将其作为第一组比较样本中的第一比较样本,而该第一个码脉冲TA与第一比较样本匹配,因此其索引号序列中的对应位为0。第一组比较样本下的索引总数设置为初始值1。
对获得的红外遥控码流的第二个码脉冲TB进行处理时,该码脉冲TB与第一组比较样本中的第一比较样本不同,第二比较样本为空,因此将该码脉冲TB直接作为第二比较样本,而该第二个码脉冲TB与第二比较样本匹配,因此其索引号序列中的对应位为1。第一组比较样本下的索引总数更新为2。
在对获得的红外遥控码流的第三个码脉冲TB进行处理时,该码脉冲TB与第二比较样本匹配,因此其索引号序列中的对应位为1。第一组比较样本下的索引总数更新为3。
在对获得的红外遥控码流的第四个码脉冲TC进行处理时,该码脉冲TC与第一组比较样本中的第一比较样本和第二比较样本都不匹配,因此第一组比较样本中的第一比较样本TA存储作为码脉冲存储样本集中的一个码脉冲存储样本,将第一组比较样本中的第二比较样本更新为第一比较样本,将码脉冲TC更新为第二比较样本,从而形成第二组比较样本,为该第二组比较样本设置索引总数,并将索引总数设置为1,同时将样本索引号序列中的对应位标记为1。
在对获得的红外遥控码流的第五个码脉冲TB进行处理时,该码脉冲TB与第二组比较样本中的第一比较样本匹配,因此其索引号序列中的对应位为0,第二组比较样本下的索引总数更新为2。
在对获得的红外遥控码流的第六个码脉冲TB进行处理时,该码脉冲TB与第二组比较样本中的第一比较样本匹配,因此其索引号序列中的对应位为0,第二组比较样本下的索引总数更新为3。
在对获得的红外遥控码流的第七个码脉冲TC进行处理时,该码脉冲TC与第二组比较样本中的第二比较样本匹配,因此其索引号序列中的对应位为1,第二组比较样本下的索引总数更新为4。
在对获得的红外遥控码流的第八个码脉冲TC进行处理时,该码脉冲TC与第二组比较样本中的第二比较样本匹配,因此其索引号序列中的对应位为1,第二组比较样本下的索引总数更新为5。
在对获得的红外遥控码流的第九个码脉冲TD进行处理时,该码脉冲TD与第二组比较样本中的第一比较样本和第二比较样本都不匹配,因此第二组比较样本中的第一比较样本TB存储作为码脉冲存储样本集中的一个码脉冲存储样本,将第二组比较样本中的第二比较样本更新为第一比较样本,将码脉冲TD更新为第二比较样本,从而形成第三组比较样本,为该第三组比较样本设置索引总数,并将索引总数设置为1,同时将样本索引号序列中的对应位标记为1。
由于后续红外遥控码流已经结束,因此将第三组比较样本中的第一比较样本和第二比较样本存储作为码脉冲存储样本集中的两个码脉冲存储样本。
这样,只需要在RAM中开辟4个字节的码脉冲缓存区,开辟少量几个字节的样本索引序列缓存区,几个字节的各组比较样本下的索引总数缓存区,开辟8个字节的组比较样本缓存区和多个字节的存储样本集缓存区就可以实现超大超长码流的实时存储。
可以看出,图2中一共有9个码脉冲,占用9*4=36byte,经过压缩后变成了4个码脉冲存储样本(4*4=16byte),2byte样本索引号序列以及3byte每组样本索引号的个数组成,共计21byte,由此可见达到了压缩效果。因为家电红外码流中相类似的样本很多,所以该压缩算法可以达到很好的压缩效果,而且采用两个比较样本的方法保证了该压缩算法能够实时被处理,也就是下一个样本低电平期间就完成前面三个样本的比对并实现压缩存储,这样就保证了每个码流样本都不会因为前面压缩算法没有完成而造成丢失。
在一个实例中,本发明为样本索引号序列开辟了64byte的RAM存储区,也就是最大可以索引到64*8=512个码脉冲样本。本发明为各组比较样本下的索引总数开辟了65byte空间,每组比较样本下的索引总数占用1个byte,这样可实现64组比较样本的索引。本发明中为每组比较样本开辟了8byte的空间,为码脉冲存储样本集开辟了256byte,可以存储64个码流样本。通过大量的实验验证,本发明中采用400byte的RAM就可以完成了500个红外遥控码流脉冲周期的实时存储,而理论上需要2000byte的RAM单元,压缩比达到了5:1,同时本发明也保证了该压缩算法的实时性,整个压缩算法的处理时间不超过100us,小于目前市场的红外码流低电平的时间。
本发明中的红外遥控码流的实时压缩方法既可以应用于普通的红外遥控码流的接收过程中,也可以应用于智能设备对红外线遥控器的学习过程中。目前,为了使得智能设备(比如智能手机)能够学习家里的各种红外遥控器,并利用其取代多个红外遥控器来控制各种家电。为此,通常需要设置一个红外遥控组件,将该红外遥控组件与智能设备相连,该红外遥控组件可以直接接收红外信号并发出红外信号。本发明中的红外遥控码流的实时压缩方法可以应用于该红外遥控组件中。
根据本发明的另一个方面,本发明还提出了一种红外遥控码流的实时压缩装置,其包括接收单元410、获取单元420和编码单元430。
所述接收单元410用于接收红外遥控码流,所述红外遥控码流具有连续的多个码脉冲,所述码脉冲至少包括两种不同类型,每个码脉冲包括高电平和低电平,其中高电平为预定频率的载波脉冲,不同类型的码脉冲的高电平持续时间和低电平的持续时间不同。所述获取单元420,用于依次获得所述红外遥控码流的各个码脉冲,记录下所述红外遥控码流的各个码脉冲,其中记录的每个码脉冲包括其高电平持续时间和低电平持续时间。所述编码单元430将记录的每个码脉冲与包括第一比较样本和第二比较样本的一组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集,其中将最近记录的两个不同的码脉冲分别作为第一比较样本和第二比较样本。
在一个实施例中,所述编码单元430执行如下操作:将记录的当前码脉冲与当前组比较样本中的第一比较样本和第二比较样本进行匹配,如果当前码脉冲与第一比较样本匹配,则将所述样本索引号序列中的对应位标记为第一值,如果当前码脉冲与第二比较样本匹配,则将所述样本索引号序列中的对应位标记为第二值,同时将当前组比较样本的索引总数累加1,每个码脉冲对应样本索引号序列中的一位;如果当前码脉冲与第二比较样本和第一比较样本都不匹配,则存储当前组比较样本中的第一比较样本作为码脉冲存储样本集中的一个码脉冲存储样本,将当前组比较样本中的第二比较样本更新为第一比较样本,将当前码脉冲更新为第二比较样本,从而形成新的一组比较样本,为该新的一组比较样本设置索引总数,并将索引总数设置为初始值,将样本索引号序列中的对应位标记为第二值。
所述样本索引号序列为二进制序列,所述二进制序列中的每个位对应从所述红外遥控码流中获得的一个码脉冲,第一值为0或1,第二值为1或0;所述码脉冲的高电平持续时间和低电平持续时间均由N字节的二进制序列表示,其中N为大于等于1的整数;每组比较样本的索引总数的初始值为1,每组比较样本的索引总数占用M个字节,其中M为大于等于1的整数,每组比较样本中的每个比较样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示,所述码脉冲存储样本集中的每个码脉冲存储样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示。
所述编码单元将记录的当前码脉冲与当前组比较样本中的第一比较样本和第二比较样本进行匹配是指:将当前码脉冲的高电平持续时间和低电平持续时间分别与当前组比较样本中的第一比较样本和第二比较样本的高电平持续时间和低电平持续时间进行比较,如果当前码脉冲的高电平持续时间与一个比较样本的高电平持续时间一致,且当前码脉冲的低电平持续时间与该比较样本的低电平持续时间一致,则认为当前码脉冲与该比较样本相匹配。
所述获取单元依次获得所述红外遥控码流的各个码脉冲包括:计算所述红外遥控码流的第一个码脉冲的高电平中的预定频率的载波脉冲的单个周期值,记录每个码脉冲的高电平中的载波脉冲的个数,并基于载波脉冲的个数和载波脉冲的单个周期值计算该当前码脉冲的高电平持续时间,利用定时器来计算出当前码脉冲的低电平持续时间。
需要指出的是,熟悉该领域的技术人员对本发明的具体实施方式所做的任何改动均不脱离本发明的权利要求书的范围。相应地,本发明的权利要求的范围也并不仅仅局限于前述具体实施方式。
Claims (10)
1.一种红外遥控码流的实时压缩方法,其特征在于,其包括:
接收红外遥控码流,所述红外遥控码流具有连续的多个码脉冲,所述码脉冲至少包括两种不同类型,每个码脉冲包括高电平和低电平,其中高电平为预定频率的载波脉冲,不同类型的码脉冲的高电平持续时间和低电平的持续时间不同;
依次获得并记录所述红外遥控码流的各个码脉冲,其中记录的每个码脉冲包括其高电平持续时间和低电平持续时间;
将记录的当前码脉冲与包括第一比较样本和第二比较样本的当前组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集,其中将最近记录的两个不同的码脉冲分别作为第一比较样本和第二比较样本。
2.根据权利要求1所述的红外遥控码流的实时压缩方法,其特征在于,所述将记录的当前码脉冲与包括第一比较样本和第二比较样本的当前组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集包括:
将记录的当前码脉冲与当前组比较样本中的第一比较样本和第二比较样本进行匹配;
如果当前码脉冲与第一比较样本匹配,则将所述样本索引号序列中的对应位标记为第一值,如果当前码脉冲与第二比较样本匹配,则将所述样本索引号序列中的对应位标记为第二值,同时将当前组比较样本的索引总数累加1,每个码脉冲对应所述样本索引号序列中的一位;
如果当前码脉冲与第二比较样本和第一比较样本都不匹配,则存储当前组比较样本中的第一比较样本作为码脉冲存储样本集中的一个码脉冲存储样本,将当前组比较样本中的第二比较样本更新为第一比较样本,将当前码脉冲更新为第二比较样本,从而形成新的一组比较样本,为该新的一组比较样本设置索引总数并将索引总数设置为初始值,将所述样本索引号序列中的对应位标记为第二值。
3.根据权利要求2所述的红外遥控码流的实时压缩方法,其特征在于,所述样本索引号序列为二进制序列,所述二进制序列中的每一位对应从所述红外遥控码流中获得的一个码脉冲,第一值为0或1,第二值为1或0;
所述码脉冲的高电平持续时间和低电平持续时间均由N字节的二进制序列表示,其中N为大于等于1的整数;
每组比较样本的索引总数的初始值为1,每组比较样本的索引总数占用M个字节,其中M为大于等于1的整数;
每组比较样本中的每个比较样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示,所述码脉冲存储样本集中的每个码脉冲存储样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示。
4.根据权利要求2所述的红外遥控码流的实时压缩方法,其特征在于,所述将记录的当前码脉冲与当前组比较样本中的第一比较样本和第二比较样本进行匹配是指:
将当前码脉冲的高电平持续时间和低电平持续时间分别与当前组比较样本中的第一比较样本和第二比较样本的高电平持续时间和低电平持续时间进行比较,如果当前码脉冲的高电平持续时间与一个比较样本的高电平持续时间一致,且当前码脉冲的低电平持续时间与该比较样本的低电平持续时间一致,则认为当前码脉冲与该比较样本相匹配,否则,认为当前码脉冲与该比较样本不相匹配。
5.根据权利要求1所述的红外遥控码流的实时压缩方法,其特征在于,所述依次获得所述红外遥控码流的各个码脉冲包括:
计算所述红外遥控码流的第一个码脉冲的高电平中的预定频率的载波脉冲的单个周期值,记录每个码脉冲的高电平中的载波脉冲的个数,利用定时器来计算出当前码脉冲的低电平持续时间。
6.一种红外遥控码流的实时压缩装置,其特征在于,其包括:
接收单元,用于接收红外遥控码流,所述红外遥控码流具有连续的多个码脉冲,所述码脉冲至少包括两种不同类型,每个码脉冲包括高电平和低电平,其中高电平为预定频率的载波脉冲,不同类型的码脉冲的高电平持续时间和低电平的持续时间不同;
获取单元,用于依次获得并记录所述红外遥控码流的各个码脉冲,其中记录的每个码脉冲包括其高电平持续时间和低电平持续时间;
编码单元,将记录的当前码脉冲与包括第一比较样本和第二比较样本的当前组比较样本匹配以得到样本索引号序列、各组比较样本的索引总数和码脉冲存储样本集,其中将最近记录的两个不同的码脉冲分别作为第一比较样本和第二比较样本。
7.根据权利要求6所述的红外遥控码流的实时压缩装置,其特征在于,所述编码单元执行如下操作:
将记录的当前码脉冲与当前组比较样本中的第一比较样本和第二比较样本进行匹配,
如果当前码脉冲与第一比较样本匹配,则将所述样本索引号序列中的对应位标记为第一值,如果当前码脉冲与第二比较样本匹配,则将所述样本索引号序列中的对应位标记为第二值,同时将当前组比较样本的索引总数累加1,每个码脉冲对应样本索引号序列中的一位;
如果当前码脉冲与第二比较样本和第一比较样本都不匹配,则存储当前组比较样本中的第一比较样本作为码脉冲存储样本集中的一个码脉冲存储样本,将当前组比较样本中的第二比较样本更新为第一比较样本,将当前码脉冲更新为第二比较样本,从而形成新的一组比较样本,为该新的一组比较样本设置索引总数并将索引总数设置为初始值,将所述样本索引号序列中的对应位标记为第二值。
8.根据权利要求7所述的红外遥控码流的实时压缩装置,其特征在于,所述样本索引号序列为二进制序列,所述二进制序列中的每个位对应从所述红外遥控码流中获得的一个码脉冲,第一值为0或1,第二值为1或0;
所述码脉冲的高电平持续时间和低电平持续时间均由N字节的二进制序列表示,其中N为大于等于1的整数;
每组比较样本的索引总数的初始值为1,每组比较样本的索引总数占用M个字节,其中M为大于等于1的整数,
每组比较样本中的每个比较样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示,所述码脉冲存储样本集中的每个码脉冲存储样本的高电平持续时间和低电平持续时间同样均由N字节的二进制序列表示。
9.根据权利要求7所述的红外遥控码流的实时压缩装置,其特征在于,
所述编码单元将记录的当前码脉冲与当前组比较样本中的第一比较样本和第二比较样本进行匹配是指:
将当前码脉冲的高电平持续时间和低电平持续时间分别与当前组比较样本中的第一比较样本和第二比较样本的高电平持续时间和低电平持续时间进行比较,如果当前码脉冲的高电平持续时间与一个比较样本的高电平持续时间一致,且当前码脉冲的低电平持续时间与该比较样本的低电平持续时间一致,则认为当前码脉冲与该比较样本相匹配。
10.根据权利要求6所述的红外遥控码流的实时压缩装置,其特征在于,所述获取单元依次获得所述红外遥控码流的各个码脉冲包括:
计算所述红外遥控码流的第一个码脉冲的高电平中的预定频率的载波脉冲的单个周期值,记录每个码脉冲的高电平中的载波脉冲的个数,利用定时器来计算出当前码脉冲的低电平持续时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510527087.2A CN105070035B (zh) | 2015-08-25 | 2015-08-25 | 红外遥控码流的实时压缩方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510527087.2A CN105070035B (zh) | 2015-08-25 | 2015-08-25 | 红外遥控码流的实时压缩方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105070035A CN105070035A (zh) | 2015-11-18 |
CN105070035B true CN105070035B (zh) | 2018-05-04 |
Family
ID=54499389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510527087.2A Active CN105070035B (zh) | 2015-08-25 | 2015-08-25 | 红外遥控码流的实时压缩方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105070035B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112330948A (zh) * | 2021-01-04 | 2021-02-05 | 杭州涂鸦信息技术有限公司 | 红外遥控码匹配方法、装置、计算机设备和可读存储介质 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105702014A (zh) * | 2016-02-25 | 2016-06-22 | 无锡力芯微电子股份有限公司 | 红外遥控码库的快速匹配方法 |
CN105957332A (zh) * | 2016-06-30 | 2016-09-21 | 北京海尔广科数字技术有限公司 | 一种红外遥控器代码的学习使用方法及学习型遥控器 |
CN106971528A (zh) * | 2017-03-31 | 2017-07-21 | 上海智觅智能科技有限公司 | 一种压缩红外空调遥控码库的算法 |
CN107610445B (zh) * | 2017-10-12 | 2020-05-05 | 长沙蒲公英智能科技有限公司 | 红外自学习的数据编码方法及其电路 |
CN108182795B (zh) * | 2018-01-11 | 2020-08-14 | 鹤壁天海电子信息***有限公司 | 一种红外数据学习方法、装置及电子设备 |
CN108694826B (zh) * | 2018-06-28 | 2020-06-05 | 浙江嘉科电子有限公司 | 一种红外编解码方法 |
CN110930684A (zh) * | 2019-12-10 | 2020-03-27 | 杭州涂鸦信息技术有限公司 | 一种支持多编码格式的红外控制方法及*** |
CN111402570B (zh) * | 2020-02-11 | 2021-08-17 | 广州创知科技有限公司 | 红外遥控信号接收方法、接收***、接收设备及存储介质 |
CN113284333A (zh) * | 2021-05-21 | 2021-08-20 | 北京昆羽科技有限公司 | 基于遥控器的学习方法、装置、遥控器及存储介质 |
CN113542225B (zh) * | 2021-06-17 | 2023-08-22 | 深圳市合广测控技术有限公司 | 一种数据的压缩方法、装置、终端设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3305191B2 (ja) * | 1996-03-19 | 2002-07-22 | 富士通株式会社 | 文書管理装置及びデータ圧縮方法及びデータ復元方法 |
CN100377247C (zh) * | 2003-10-31 | 2008-03-26 | 浙江中控技术股份有限公司 | 实时数据在线压缩与解压缩方法 |
TW201042586A (en) * | 2009-05-21 | 2010-12-01 | Wistron Corp | Remote control setting method and device for electronic device and remote control system |
CN101989379B (zh) * | 2009-07-31 | 2012-03-07 | 宁波家天下智能***有限公司 | 红外编码控制信号的学习方法、发射方法及遥 控器 |
CN102129769B (zh) * | 2011-01-14 | 2012-11-07 | 利尔达科技有限公司 | 一种万能遥控方法 |
CN103795421B (zh) * | 2014-02-26 | 2017-05-24 | 活点信息技术有限公司 | 一种数据压缩及解压缩的方法 |
-
2015
- 2015-08-25 CN CN201510527087.2A patent/CN105070035B/zh active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112330948A (zh) * | 2021-01-04 | 2021-02-05 | 杭州涂鸦信息技术有限公司 | 红外遥控码匹配方法、装置、计算机设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105070035A (zh) | 2015-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105070035B (zh) | 红外遥控码流的实时压缩方法和装置 | |
CN105957332A (zh) | 一种红外遥控器代码的学习使用方法及学习型遥控器 | |
CN102998501B (zh) | 基于fpga实现数字示波器数据压缩的方法 | |
CN103795421A (zh) | 一种数据压缩及解压缩的方法 | |
CN201359768Y (zh) | 家用学习型遥控装置 | |
CN105955748A (zh) | 应用程序的返回场景处理方法及装置 | |
CN204965741U (zh) | 红外遥控学习数据压缩*** | |
CN102467817A (zh) | 基于手势识别的遥控电路复用装置及方法 | |
CN104780391A (zh) | 一种视频文件格式转换方法及装置 | |
CN105702014A (zh) | 红外遥控码库的快速匹配方法 | |
CN104901706B (zh) | 一种数字化电能质量监测终端检测装置及其数据转换方法 | |
CN203242160U (zh) | 一种智能遥控终端 | |
CN103024499A (zh) | 一种实现智能电视的方法及装置 | |
CN107945477A (zh) | 对红外或无线遥控信号数据进行压缩的方法及装置 | |
CN104240491B (zh) | 红外信号的数字化方法 | |
CN103490783A (zh) | 一种将模拟信号转换为数字信息的方法 | |
CN111968361B (zh) | 一种红外重复码学习方法及应用于物联网的红外遥控*** | |
CN109194667A (zh) | 基于频域检测的实现iq数据信号数据压缩与传输功能的装置 | |
CN105718850B (zh) | 应用于指纹传感器的像素点采样方法和装置 | |
WO2021088251A1 (zh) | 智能人居控制中心 | |
CN206640773U (zh) | 一种用于音频教学***的智能调频控制器 | |
CN204836351U (zh) | 一种多摄像头拍摄***以及装置 | |
CN203118207U (zh) | 微电网***数据采集装置 | |
CN103419201A (zh) | 基于fpga的多指节机器人控制***及其控制方法 | |
CN112000356A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |