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

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

Info

Publication number
CN1209703C
CN1209703C CN 200310107985 CN200310107985A CN1209703C CN 1209703 C CN1209703 C CN 1209703C CN 200310107985 CN200310107985 CN 200310107985 CN 200310107985 A CN200310107985 A CN 200310107985A CN 1209703 C CN1209703 C CN 1209703C
Authority
CN
China
Prior art keywords
data
random access
data stream
bit
write
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 - Lifetime
Application number
CN 200310107985
Other languages
English (en)
Other versions
CN1529228A (zh
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.)
SHANGHAI GMT DIGITAL TECHNOLOGY 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 CN 200310107985 priority Critical patent/CN1209703C/zh
Publication of CN1529228A publication Critical patent/CN1529228A/zh
Priority to PCT/CN2004/001062 priority patent/WO2005038643A1/zh
Priority to RU2006116579/09A priority patent/RU2331914C2/ru
Application granted granted Critical
Publication of CN1209703C publication Critical patent/CN1209703C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime 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/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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors

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位;如果当前写入的位是一个字节的倒数第二位,则判断最近写入的22位是否均为0,如果最近写入的22位均为0,则在写入当前数据位之前先写入一个填充位,然后将当前数据位写入;否则将当前数据位直接写入。
当要求字节对齐时,还包括步骤e.当一段数据写完时,用步骤d所述方法将一个0和若干个1写入码流,直到下一个字节对齐位置;
本发明还提供一种从所述可随机访问数据流中恢复数据的方法,包括以下步骤:
a.在数据流中的字节对齐位置寻找位串0x000001;
b.找到后重复以下步骤:
c.预窥码流下面的24位,记为peekstr;判断peekstr是否与标志码0x000001相同,若不相同则,读入一个二进制位,若相同则,跳到步骤h;
e.记录最近从数据流读入的22位;如果刚刚读入的位是一个字节的倒数第二位,且在该位之前读入的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和一个0,然后将当前数据位写入;否则将当前数据位直接写入。
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 (8)

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

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN 200310107985 CN1209703C (zh) 2003-10-16 2003-10-16 一种可随机访问数据流的组织方法及其对应的解码方法
PCT/CN2004/001062 WO2005038643A1 (fr) 2003-10-16 2004-09-20 Procede de formation d'un flux de donnees qui peut etre accede de maniere aleatoire et procede de decodage correspondant
RU2006116579/09A RU2331914C2 (ru) 2003-10-16 2004-09-20 Способ формирования потока данных с возможностью произвольного доступа и соответствующий способ его декодирования

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200310107985 CN1209703C (zh) 2003-10-16 2003-10-16 一种可随机访问数据流的组织方法及其对应的解码方法

Publications (2)

Publication Number Publication Date
CN1529228A CN1529228A (zh) 2004-09-15
CN1209703C true CN1209703C (zh) 2005-07-06

Family

ID=34304587

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200310107985 Expired - Lifetime CN1209703C (zh) 2003-10-16 2003-10-16 一种可随机访问数据流的组织方法及其对应的解码方法

Country Status (3)

Country Link
CN (1) CN1209703C (zh)
RU (1) RU2331914C2 (zh)
WO (1) WO2005038643A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296376B (zh) * 2007-04-24 2011-01-26 北京展讯高科通信技术有限公司 填充位丢弃电路和方法
WO2020220249A1 (zh) * 2019-04-30 2020-11-05 深圳市大疆创新科技有限公司 一种数据编码、数据解码方法、设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5739862A (en) * 1996-12-23 1998-04-14 Tektronix, Inc. Reverse playback of MPEG video
KR100345235B1 (ko) * 1998-11-08 2005-07-29 엘지전자 주식회사 디지털데이터스트림기록방법및그장치
GB0007870D0 (en) * 2000-03-31 2000-05-17 Koninkl Philips Electronics Nv Methods and apparatus for making and replauing digital video recordings, and recordings made by such methods
US6792433B2 (en) * 2000-04-07 2004-09-14 Avid Technology, Inc. Indexing interleaved media data
US7212726B2 (en) * 2000-09-15 2007-05-01 International Business Machines Corporation System and method of processing MPEG streams for file index insertion
CN1131637C (zh) * 2000-10-13 2003-12-17 北京算通数字技术研究中心有限公司 数据流索引文件生成及用该文件访问帧和切变镜头的方法
KR100470025B1 (ko) * 2001-06-15 2005-02-04 엘지전자 주식회사 디지털 데이터 스트림 기록장치 및 방법과, 그에 따른기록매체
EP1309195B1 (en) * 2001-10-29 2007-11-14 Humax Co., Ltd. Method for recording a digital broadcast program and time-based playback of a recorded broadcast program and apparatus therefor

Also Published As

Publication number Publication date
CN1529228A (zh) 2004-09-15
WO2005038643A1 (fr) 2005-04-28
RU2331914C2 (ru) 2008-08-20
RU2006116579A (ru) 2007-11-27

Similar Documents

Publication Publication Date Title
CN1022782C (zh) 分节编码数字信号的处理方法,编码器和译码器
WO2004042930A3 (en) Content-based segmentation scheme for data compression
CN1924925A (zh) 一种文档数字水印嵌入方法
CN1463441A (zh) Mp3的特技播放
CN1184818C (zh) 在编码信号中嵌入补充数据
CN1623279A (zh) 用于位平面的可变长度编码的方法和装置
CN1209703C (zh) 一种可随机访问数据流的组织方法及其对应的解码方法
CN1232105C (zh) 用于对音频/视频压缩编码数据解码的解码器
CA2123435A1 (en) System and method for fast huffman decoding
EP2306728A3 (en) Video encoding and decoding method
CN1540495A (zh) 可随机访问数据流的组织方法及其对应的解码方法
US7205915B2 (en) Method of decoding variable length prefix codes
CN1684522A (zh) 处理音频帧的方法、解码器电路和计算机程序产品
CN1364341A (zh) 算术编码信息信号的算术译码
CN1218583C (zh) 可随机访问数据流的封装方法及其对应的数据恢复方法
CN1182723C (zh) 一种视频数据的编码方法及其装置
CN109743581A (zh) 编码端处理方法、解码端处理方法及防止伪起始码的方法
CN1182981A (zh) 解码图象显示装置及其显示存储器的控制方法
CN1364388A (zh) 用于解码视频信号的再同步方法
CN101042773A (zh) 数据处理设备
CN102802023B (zh) 一种快速防止出现伪起始码的方法及装置
US8363968B2 (en) Image coding method for facilitating run length coding and image encoding device thereof
van der Meer et al. JPEG File Fragmentation Point Detection using Huffman Code and Quantization Array Validation
CN103369311A (zh) 一种用于防止起始码冲突的方法
CN101572813A (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
ASS Succession or assignment of patent right

Owner name: SHANGHAI GUOMAO DIGITAL TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SHANGHAI TELCOM ( GROUP ) CO., LTD. CENTER INSTITUTE

Effective date: 20100319

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 200032 3/F, NO.1646, XIETU ROAD, SHANGHAI CITY TO: 201203 ROOM 408, NO.50, BOXIA ROAD, PUDONG NEW DISTRICT, SHANGHAI CITY

TR01 Transfer of patent right

Effective date of registration: 20100319

Address after: 201203, room 50, 408 Xia Xia Road, Shanghai, Pudong New Area

Patentee after: SHANGHAI GMT DIGITAL TECHNOLOGY Co.,Ltd.

Address before: 200032 Shanghai Xietu Road No. 3 building 1646

Patentee before: Central Research Institute of Shanghai radio and television (Group) Co.,Ltd.

DD01 Delivery of document by public notice

Addressee: Ru Kai

Document name: Notification of Passing Examination on Formalities

CX01 Expiry of patent term

Granted publication date: 20050706

CX01 Expiry of patent term