CN1540495A - 可随机访问数据流的组织方法及其对应的解码方法 - Google Patents

可随机访问数据流的组织方法及其对应的解码方法 Download PDF

Info

Publication number
CN1540495A
CN1540495A CNA2003101083662A CN200310108366A CN1540495A CN 1540495 A CN1540495 A CN 1540495A CN A2003101083662 A CNA2003101083662 A CN A2003101083662A CN 200310108366 A CN200310108366 A CN 200310108366A CN 1540495 A CN1540495 A CN 1540495A
Authority
CN
China
Prior art keywords
data
random access
data stream
write
bit
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
CNA2003101083662A
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.)
Central Academy of SVA Group Co Ltd
Original Assignee
Central Academy of SVA Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central Academy of SVA Group Co Ltd filed Critical Central Academy of SVA Group Co Ltd
Priority to CNA2003101083662A priority Critical patent/CN1540495A/zh
Publication of CN1540495A publication Critical patent/CN1540495A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明提供一种可随机访问数据流的组织方法,其包括以下步骤:编码音视频数据;在随机访问点***随机访问点标志码;在编码的音视频数据中***一些填充位,以避免出现与随机访问点标志码相同的位串。可随机访问数据流的解码方法包括以下步骤:在数据流中寻找随机访问点标志码,丢弃第一个随机访问点标志码以前的所有数据;依次读入每一个二进制位;判断该位是数据位还是填充位,如果是填充位,则丢弃,如果是数据位,则作为数据输出;如果遇到下一个随机访问点标志码,则开始一个新的数据块。

Description

可随机访问数据流的组织方法及其对应的解码方法
                      技术领域
本发明涉及信号处理中的音视频编解码技术领域,尤其涉及一种将音视频编码数据组织成可随机访问数据流的方法及其对应的数据恢复方法。
                      背景技术
传统的视频编码标准如ITU制定的H.261,H.263,H.263+,H.264标准以及ISO的MPEG组织制定的MPEG-1,MPEG-2,MPEG-4等都需把音视频编码数据组织成可随机访问数据流,以便解码器可以从设置的随机访问点处开始解码。在以上标准中都是通过开始码来实现编码数据的随机访问的,例如视频序列开始码、画面组开始码、画面开始码等等。这些开始码都是由开始码前缀和开始码值两部分组成。开始码前缀是一个固定的二进制位串,标志一个开始码的存在;开始码值是一个数值,指出开始码的含义。其中开始码前缀相当于本发明所说的随机访问点标志码。
如果在其他编码数据中出现了与随机访问点标志码一样的二进制位串,则解码器就有可能把该位串错误地当成随机访问点标志码,从而引起解码错误。因此必须防止在其他编码数据中出现与随机访问点标志码一样的二进制位串。目前采取的方法是在设计码流的语法结构时设置一些禁止值和掩码位。所谓禁止值是指禁止一些语法元素取某些值,因为如果该语法元素取了那些值,就有可能出现假的随机访问点标志码。所谓掩码位,是指在可能出现假随机访问点标志码的语法元素之间***一个固定的二进制位。
以上的避免出现假随机访问点标志码的方法有以下缺点:a.增加了语法设计的复杂性。设计语法结构时,要时时刻刻考虑到是否会出现假开始码,是否需要禁止一些值,是否需要***掩码位。b.降低了语法结构的易读性。这些与视频压缩无关的因素混在语法结构中,使人不容易抓住要点。c.效率不高。在有可能产生假开始码的地方都必须采取措施,而不论语法元素的具体取值是否会真的产生假开始码。
                       发明内容
本发明所要解决的一个技术问题是提供一种将编码音视频数据封装为可随机访问数据流的方法,使得在进行编码数据的语法结构设计时不需要考虑码流的可随机访问性,即不需要设置禁止值,也不需要***掩码位。
本发明所要解决的另一技术问题是提供一个从所述可随机访问数据流中恢复编码数据的方法。
为了解决上述技术问题,本发明采用如下的技术方案:
提供一种把编码音视频数据封装为可随机访问数据流的方法,包括以下步骤:
a.用任何编码方法产生音视频编码数据;
b.音视频编码数据按照随机访问点被分成若干数据段,对每一个数据段,重复步骤c,d直到将所有数据写入数据流;
c.将随机访问点标志码位串0x000001写入数据流;
d.将编码数据的每一位依次写入数据流。如果当前写入的位是一个字节的倒数第二位,则判断最近写入的22位是否均为0,如果最近写入的22位均为0,则在写入当前数据位之前先写入一个1,然后将当前数据位写入;否则将当前数据位直接写入。
当要求字节对齐时,还包括步骤e.当一段数据写完时,用步骤d所述方法将一个0和若干个1写入码流,直到下一个字节对齐位置;
本发明还提供一种从所述可随机访问数据流中恢复数据的方法,包括以下步骤:
a.在数据流中的字节对齐位置寻找位串0x000001;
b.找到后重复以下步骤:
c.预窥码流下面的24位,记为peekstr;判断peekstr是否与标志码0x000001相同,若不相同则,读入一个二进制位,若相同则,跳到h;
e.如果刚刚读入的位是一个字节的倒数第二位,且在该位之前读入的22位都是0,则跳到步骤c;
f.将最近读入的1位作为数据输出,跳到步骤c;
h.如果数据流中已经没有剩余的数据了,则结束;
i.读入24位,跳到步骤c;
当要求字节对齐时,还包括步骤g.当遇到下一个随机访问点标志码时,将最后输出的一个0及其后输出的1识别为填充位,不作为数据位输出。
由于采用了上述方法,音视频编码器不再需要考虑随机访问点标志码的问题,因为这一工作是由底层的码流操作来完成的。上述码流的解码过程,可以自动识别哪些是***的位并将其丢弃,从而可以完全恢复音视频编码器产生的编码数据。
                    附图说明
图1是本发明的把编码音视频数据封装为可随机访问数据流的方法的一个实施例的流程图;
图2是本发明的一种从可随机访问数据流中恢复数据的方法的一个
实施例的流程图;
                     具体实施方式
下面结合附图和具体实施例来进一步说明本发明的技术方案。
图1是本发明中把编码音视频数据封装为可随机访问数据流方法的一个实施例的流程图。如图1所示,该实施例包括以下步骤:
a.用任何编码方法产生音视频编码数据;
b.音视频编码数据按照随机访问点被分成若干数据段,对每一个数据段,重复步骤c,d,e直到将所有数据写入数据流;
c.将0x000001(计为S)写入数据流;
d.将编码数据的每一位依次写入数据流。如果当前写入的位是一个字节的倒数第二位,则判断最近写入的22位是否均为0。如果最近写入的22位均为0,则在写入当前数据位之前先写入一个1,然后将当前数据位写入;否则将当前数据位直接写入。
e.当一段数据写完时,用步骤d所述方法将一个0和若干个1写入码流,直到下一个字节对齐位置;
图2是本发明中从可随机访问数据流中恢复数据方法的一个实施例的流程图。如图2所示,该实施例包括以下步骤:
a.在数据流中的字节对齐位置寻找位串0x000001;
b.找到后重复以下步骤:
c.如果码流当前位置是字节对齐的,则预窥码流下面的24位,记为peekstr如果数据流中已经没有剩余的数据了,跳到步骤g;如果数据流中剩余的数据不足24位,则认为peekstr不是0x000001。如果peekstr是0x000001,跳到步骤g;
d.读入一个二进制位。
e.如果刚刚读入的位是一个字节的倒数第二位,且在该位之前读入的22位都是0,则跳到步骤c。
f.将最近读入的1位作为数据输出,跳到步骤c;
g.如果随机访问点标志码要求字节对齐,则将最后输出的一个0及其后输出的1删除。
h.如果数据流中已经没有剩余的数据了,则结束;
i.读入24位,跳到步骤c;

Claims (9)

1、一种可随机访问数据流的组织方法,其特征在于,包括以下步骤:
a.用任何编码方法产生音视频编码数据;
b.音视频编码数据按照随机访问点被分成若干数据段,对每一个数据段,重复步骤c,d直到将所有数据写入数据流;
c.将随机访问点标志码位串0x000001写入数据流;
d.将编码数据的每一位依次写入数据流。如果当前写入的位是一个字节的倒数第二位,则判断最近写入的22位是否均为0,如果最近写入的22位均为0,则在写入当前数据位之前先写入一个1,然后将当前数据位写入;否则将当前数据位直接写入。
2、根据权利要求1所述的可随机访问数据流的组织方法,其特征在于,当要求字节对齐时,还包括步骤e.当一段数据写完时,用步骤d所述方法将一个0和若干个1写入码流,直到下一个字节对齐位置;
3、根据权利要求1所述的可随机访问数据流的组织方法,其特征在于,所述的填充位为一个1,即如果被写入的位是一个字节的倒数第二位且最近写入的22位都是0,则在写入数据位之前先写入一个1。
4、根据权利要求1所述的可随机访问数据流的组织方法,其特征在于,将随机访问点标志码写入时数据流时不***任何附加位;
5、根据权利要求1所述的可随机访问数据流的组织方法,其特征在于,记录最近写入数据流的22位;
6、一种从可随机访问数据流中恢复数据的方法,其特征在于,包括以下步骤:
a.在数据流中的字节对齐位置寻找位串0x000001;
b.找到后重复以下步骤:
c.预窥码流下面的24位,记为peekstr;判断peekstr是否与标志码0x000001相同,若不相同则,读入一个二进制位,若相同则,跳到h;
e.如果刚刚读入的位是一个字节的倒数第二位,且在该位之前读入的22位都是0,则跳到步骤c;
f.将最近读入的1位作为数据输出,跳到步骤c;
h.如果数据流中已经没有剩余的数据了,则结束;
i.读入24位,跳到步骤c;
7、根据权利要求6所述的从可随机访问数据流中恢复数据的方法,其特征在于,其特征在于,还包括步骤g.当遇到下一个随机访问点标志码时,将最后输出的一个0及其后输出的1识别为填充位,不作为数据位输出。
8、根据权利要求6所述的从可随机访问数据流中恢复数据的方法,其特征在于,如果最近读入的22位都是0且码流位置处于一个字节的倒数第二位,则将该字节的倒数第二位识别为填充位,不作为数据位输出;
9、根据权利要求6所述的从可随机访问数据流中恢复数据的方法,其特征在于,如果数据流中剩余的数据不足24位,则认为peekstr不是0x000001。
CNA2003101083662A 2003-10-31 2003-10-31 可随机访问数据流的组织方法及其对应的解码方法 Pending CN1540495A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2003101083662A CN1540495A (zh) 2003-10-31 2003-10-31 可随机访问数据流的组织方法及其对应的解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2003101083662A CN1540495A (zh) 2003-10-31 2003-10-31 可随机访问数据流的组织方法及其对应的解码方法

Publications (1)

Publication Number Publication Date
CN1540495A true CN1540495A (zh) 2004-10-27

Family

ID=34334629

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2003101083662A Pending CN1540495A (zh) 2003-10-31 2003-10-31 可随机访问数据流的组织方法及其对应的解码方法

Country Status (1)

Country Link
CN (1) CN1540495A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296376B (zh) * 2007-04-24 2011-01-26 北京展讯高科通信技术有限公司 填充位丢弃电路和方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296376B (zh) * 2007-04-24 2011-01-26 北京展讯高科通信技术有限公司 填充位丢弃电路和方法

Similar Documents

Publication Publication Date Title
CN1022782C (zh) 分节编码数字信号的处理方法,编码器和译码器
CN1115547A (zh) 解码***中的自适应位流分离装置
US6891976B2 (en) Method to decode variable length codes with regular bit pattern prefixes
CN1924925A (zh) 一种文档数字水印嵌入方法
CN1463441A (zh) Mp3的特技播放
CN1184818C (zh) 在编码信号中嵌入补充数据
CN1623279A (zh) 用于位平面的可变长度编码的方法和装置
CN1716312A (zh) 适用于视频处理的分级处理器架构
CN1209703C (zh) 一种可随机访问数据流的组织方法及其对应的解码方法
CN1232105C (zh) 用于对音频/视频压缩编码数据解码的解码器
US7205915B2 (en) Method of decoding variable length prefix codes
CN1649293A (zh) 流解码***
CN1540495A (zh) 可随机访问数据流的组织方法及其对应的解码方法
US7487141B1 (en) Skipping pattern for an inverted index
EP2306728A3 (en) Video encoding and decoding method
CN1364341A (zh) 算术编码信息信号的算术译码
CA2123435A1 (en) System and method for fast huffman decoding
CN1218583C (zh) 可随机访问数据流的封装方法及其对应的数据恢复方法
CN1925332A (zh) 基于关键字的变长解码器及方法
CN1182981A (zh) 解码图象显示装置及其显示存储器的控制方法
CN109743581A (zh) 编码端处理方法、解码端处理方法及防止伪起始码的方法
CN1182723C (zh) 一种视频数据的编码方法及其装置
CN102802023B (zh) 一种快速防止出现伪起始码的方法及装置
CN101042773A (zh) 数据处理设备
CN1254973C (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication