CN101242538A - 一种码流解码方法和装置 - Google Patents
一种码流解码方法和装置 Download PDFInfo
- Publication number
- CN101242538A CN101242538A CN 200810084318 CN200810084318A CN101242538A CN 101242538 A CN101242538 A CN 101242538A CN 200810084318 CN200810084318 CN 200810084318 CN 200810084318 A CN200810084318 A CN 200810084318A CN 101242538 A CN101242538 A CN 101242538A
- Authority
- CN
- China
- Prior art keywords
- code stream
- protocol format
- decoding
- identification
- stream identification
- 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.)
- Granted
Links
Images
Abstract
本发明公开了一种码流解码方法和装置。该方法包括以下步骤:接收码流,所述码流包括第一协议格式码流或第二协议格式码流;若根据码流标识判断所述码流为第一协议格式码流,且在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识,则按照所述第二协议格式的解码方式解码;若根据码流标识判断所述码流为第二协议格式码流,且在按照所述第二协议格式的解码方式解码的过程中检测到所述第一协议格式的码流标识,则判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值;若超过所述预先设置的阈值,则按照所述第一协议格式的解码方式解码。通过本发明实施例提高了码流解码正确率,保证了优先解码码流的解码优先级。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种码流解码方法和装置。
背景技术
MPEG-4(Moving Pictures Experts Group 4,第四代动态图象专家组)是一种超低码率运动图像和语言的压缩标准,MPEG-4支持短头Short Header格式,Short Header格式为H.263的码流格式,为了视频解码的向前兼容,在制订MPEG-4码流格式时,加入了Short Header格式用来支持H.263码流格式,这样就在解码过程中引入了MPEG-4格式码流与Short Header格式码流切换的问题。切换问题有两种:前一段码流为MPEG-4码流格式,后一段为ShortHeader码流格式;或者前一段为Short Header码流格式,后一段为MPEG-4码流格式。但是不会出现在一个MPEG-4码流中,只有一幅图像为Short Header格式的码流。
在实际测试中,上述切换的发生有以下几种情况:
1)正常的码流方式的切换,解码器接收到的码流格式发生切换;
2)在传输过程中,由于传输错误,导致起始码的错误,发生码流切换;
但是在实际测试中,解码开始时很难判断解码器收到的码流是正确的还是错误的,只有解析到语法元素时,才能最早判断出码流是否正确,这就需要对码流格式的切换进行有效的判决。
3)已判断是MPEG-4格式的码流解析过程中出现了Short Header格式码流的起始码字(起始码字:在视频解码协议中,一般定义起始码为长度为32比特的码字,其形式在整个比特流中是唯一的。起始码用来标识比特流语法结构的开始),但后续的语法元素是MPEG-4格式的语法元素(即:起始码表明后续的码流格式应该是Short Header格式的,但实际上其码流格式为MPEG-4格式的码流),所以不能按照Short Header格式码流方式解码。
目前解决MPEG-4码流格式与Short Header码流格式间的切换问题的方案主要有两种,方案一:在解码MPEG-4格式码流过程中,如果遇到某一幅图像是Short Header格式码流的起始码字,就按照Short Header格式码流继续解码。或者在解码Short Header格式码流过程中,如果遇到某一幅图像是MPEG-4格式码流的起始码字,就按照MPEG-4格式码流继续解码。即完全按照解析的起始码字进行解码,即判断是MPEG-4格式的起始码字,则按照MPEG-4格式解码,判断是ShortHeader起始码字,则按照ShortHeader格式进行解码。这种方法对于正常、正确的码流来说,是完全可以的。但实际上,对于一个MPEG-4格式的码流,其中可能包含了Short Header格式的起始码字,但其又不是Short Header格式的码流,如果按照Short Header格式进行解码,就会导致解码错误。
而方案二:则是在解码MPEG-4格式码流过程中,如果遇到Short Header格式码流的起始码字,认为是码流错误,停止本幅图像的解码,进行下一幅图像的解码。这种方案会导致码流格式在实际需要切换时不能进行切换,造成一幅图像,甚至一连串图像的丢失。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:现有技术在码流解码过程中,不能正确判断码流的格式,容易造成解码错误,而且不能保证需要优先解码的码流的解码优先级。
发明内容
本发明实施例提供一种码流解码方法和装置,以实现正确判断码流的格式,提高解码正确率,保证需要优先解码的码流的解码优先级。
为达到上述目的,本发明实施例一方面提供一种码流解码方法,包括以下步骤:
接收码流,所述码流包括第一协议格式码流或第二协议格式码流;若根据码流标识判断所述码流为第一协议格式码流,且在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识,则按照所述第二协议格式的解码方式解码;
若根据码流标识判断所述码流为第二协议格式码流,且在按照所述第二协议格式的解码方式解码的过程中检测到所述第一协议格式的码流标识,则判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值;
若超过所述预先设置的阈值,则按照所述第一协议格式的解码方式解码。
另一方面,本发明实施例还提供一种码流解码装置,包括:接收模块,用于接收码流,所述码流包括第一协议格式码流或第二协议格式码流;
第一判断模块,用于根据码流标识判断所述码流的码流格式;
第一解码模块,用于当所述第一判断模块根据码流标识判断所述码流为第一协议格式码流,且在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识时,按照所述第二协议格式的解码方式解码;
第二判断模块,用于当所述第一判断模块根据码流标识判断所述码流为第二协议格式码流,且在按照所述第二协议格式的解码方式进行解码的过程中检测到所述第一协议格式的码流标识时,判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值;
第二解码模块,用于当所述第二判断模块判断所述第一协议格式的码流标识的数量超过预先设置的阈值时,按照所述第一协议格式的解码方式解码。
与现有技术相比,本发明实施例具有以下优点:本发明实施例实现了在码流解码过程中,正确判断码流的格式,从而提高了码流的解码正确率,保证了需要优先解码的码流的解码优先级。
附图说明
图1为本发明实施例一提供的一种码流解码方法流程图;
图2为本发明实施例二提供的另一种码流解码方法流程图;
图3为本发明实施例三提供的码流解码装置结构图。
具体实施方式
下面结合附图和实施步骤对本发明实施例的具体实施方式进行详细描述:
如图1所示,为本发明实施例一提供的一种码流解码方法流程图,具体包括以下步骤:
步骤S101,接收码流。所述码流包括第一协议格式码流或第二协议格式码流。
步骤S102,根据码流标识判断码流是否为第一协议格式码流。若所述码流为第一协议格式码流,则执行步骤S103,否则执行步骤S105。
步骤S103,按照第一协议格式的解码方式解码,并在解码过程中检测码流中是否出现第二协议格式的码流标识。若在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识,则执行步骤S104,否则继续按照第一协议格式的解码方式解码。
步骤S104,按照第二协议格式的解码方式解码。若根据码流标识判断所述码流为第一协议格式码流,且在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识,则按照所述第二协议格式的解码方式解码。
步骤S105,按照第二协议格式的解码方式解码,并在解码过程中检测码流中是否出现第一协议格式的码流标识。若在按照所述第二协议格式的解码方式解码的过程中检测到所述第一协议格式的码流标识,则执行步骤S106,否则继续按照第二协议格式的解码方式解码。
步骤S106,判断第一协议格式的码流标识的数量是否超过预先设置的阈值。若根据码流标识判断所述码流为第二协议格式码流,且在按照所述第二协议格式的解码方式解码的过程中检测到所述第一协议格式的码流标识,则判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值,若所述第一协议格式的码流标识的数量超过预先设置的阈值,则执行步骤S107,否则继续按照第二协议格式的解码方式解码。
步骤S107,按照第一协议格式的解码方式解码。若所述第一协议格式的码流标识的数量超过预先设置的阈值,则按照所述第一协议格式的解码方式解码。
本发明实施例一实现了在码流解码过程中,正确判断码流的格式,从而提高了码流的解码正确率,保证了第二协议格式码流的解码优先级,即实现了所述第二协议格式码流的解码优先级高于所述第一协议格式码流的解码优先级。
如图2所示,为本发明实施例二提供的另一种码流解码方法流程图,本发明实施例以起始码字作为码流标识,以H.263的Short Header格式为所述第一协议格式,以MPEG-4为所述第二协议格式为例,所述方法具体可以包括以下步骤:
步骤S201,解码开始时,对码流的第一个起始码字进行检测。在解码开始时,对解析获取的码流的第一个起始码字进行检测。其中MPEG-4格式码流与Short Header格式码流在解码开始时具有相同的优先级。
步骤S202,根据检测结果判断判断码流是否为MPEG-4格式。如果所述码流为Short Header格式,则执行骤S203,如果所述码流为MPEG-4格式,则执行步骤S204。
步骤S203,进行Short Header格式解码。当认定所述码流为Short Header格式时,进行Short Header格式解码。
步骤S204,进行MPEG-4格式解码。当认定所述码流为MPEG-4格式时,进行MPEG-4格式解码。
步骤S205,解码过程中,对码流的起始码字进行检测。
步骤S206,解码过程中,判断码流是否为MPEG-4格式。如果所述码流为MPEG-4格式,则执行步骤S204,如果所述码流为Short Header格式,但已被认定为MPEG-4格式,则执行步骤S207。
步骤S207,对码流Short Header格式的起始码字的进行计数。当所述码流为Short Header格式,但已被认定为MPEG-4格式时,对所述码流ShortHeader格式的起始码字进行计数累加。
步骤S208,判断计数值是否达到切换阈值。如果所述计数值达到切换阈值,则执行步骤S203,如果所述计数值在未达到切换阈值前,又检测MPEG-4格式的起始码字,则将所述计数清零,并执行步骤S204。
本发明实施例二实现了在解码MPEG-4格式码流过程中,正确判断码流是MPEG-4格式还是Short Header格式,从而提高了MPEG-4协议码流的解码正确率,而且保证了MPEG-4格式码流的解码优先级。在实际的码流传输环境下,存在MPEG-4和H.263混合编码的码流。这是MPEG-4协议为了兼容在MPEG-4之前产生的H.263协议,在制定MPEG-4协议时就约定好的。上述实施例保证了MPEG-4优先级。
实际应用中,不同协议的优先级是可以设定的,本发明实施例提供的码流解码方法,不限于MPEG-4和H.263协议,还可以用于其他不同协议的切换中。例如,将本发明实施例提供的码流解码方法用于支持多协议的视频解码器或者解码芯片中,所述视频解码器或者解码芯片应用在电视机顶盒中,这样可以让用户控制广告是否播放。假设机顶盒的电视节目是H是H.264协议码流(高优先级),而广告是MPEG-4协议码流,通过对MPEG-4协议码流的码流标识进行计数,当MPEG-4码流标识数量超过用户设定的阈值时,将解码方式切换到H.264协议方式,此时广告就被略过,这样由电视节目切换到广告的次数就会减少,使得节目播放更加灵活。
如图3所示,为本发明实施例三的码流解码装置结构图,包括:接收模块1,用于接收码流,所述码流包括第一协议格式码流或第二协议格式码流。第一判断模块2,用于根据码流标识判断所述码流的码流格式。第一解码模块3,用于当第一判断模块2根据码流标识判断所述码流为第一协议格式码流,且在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识时,按照所述第二协议格式的解码方式解码。第二判断模块4,用于当第一判断模块2根据码流标识判断所述码流为第二协议格式码流,且在按照所述第二协议格式的解码方式进行解码的过程中检测到所述第一协议格式的码流标识时,判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值。第二解码模块5,用于当述第二判断模块4判断所述第一协议格式的码流标识的数量超过预先设置的阈值时,按照所述第一协议格式的解码方式解码。
其中,第二判断模块4,进一步包括:计数子模块41,用于对所述第一协议格式的码流标识的数量进行计数累加。阈值判断子模块42,用于判断计数子模块41累加的所述第一协议格式的码流标识的数量是否超过所述预先设置的阈值。清零模块43,用于当阈值判断子模块42判断第一协议格式的码流标识的数量未超过所述预先设置的阈值且第一判断模块2检测到MPEG-4协议格式的码流标识时,将所述第一协议格式的码流标识的计数数量清零,并指示所述第一解码模块3继续按照所述第二协议格式的解码方式进行解码。所述第二协议格式码流包括第四代动态图像专家组MPEG-4协议格式码流,所述第一协议格式码流包括H.263协议格式码流。
本发明实施例的码流解码装置在码流解码过程中,正确判断码流的格式,从而提高了码流的解码正确率,保证了第二协议格式码流的解码优先级,即实现了所述第二协议格式码流的解码优先级高于所述第一协议格式码流的解码优先级。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可通过硬件来实现,当然也可借助软件加必需的通用硬件平台的方式实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以硬件产品的形式体现出来。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围
Claims (9)
1、一种码流解码方法,其特征在于,包括:
接收码流,所述码流包括第一协议格式码流或第二协议格式码流;
若根据码流标识判断所述码流为第一协议格式码流,且在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识,则按照所述第二协议格式的解码方式解码;
若根据码流标识判断所述码流为第二协议格式码流,且在按照所述第二协议格式的解码方式解码的过程中检测到所述第一协议格式的码流标识,则判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值;
若超过所述预先设置的阈值,则按照所述第一协议格式的解码方式解码。
2、如权利要求1所述的码流解码方法,其特征在于,还包括:
若所述第一协议格式的码流标识的数量未超过所述预先设置的阈值,则继续按照所述第二协议格式的解码方式进行解码。
3、如权利要求1所述的码流解码方法,其特征在于,所述第二协议格式码流的解码优先级高于所述第一协议格式码流的解码优先级。
4、如权利要求1所述的码流解码方法,其特征在于,所述第二协议格式码流包括第四代动态图像专家组MPEG-4协议格式码流,所述第一协议格式码流包括H.263协议格式码流。
5、如权利要求1至4任意一项所述的码流解码方法,其特征在于,所述判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值,包括:
对所述第一协议格式的码流标识进行计数累加,判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值。
6、如权利要求5所述的码流解码方法,其特征在于,
若所述第一协议格式的码流标识的数量在超过所述预先设置的阈值之前检测到所述第二协议格式的码流标识,则将所述第一协议格式的码流标识的计数数量清零,并继续按照所述第二协议格式的解码方式进行解码。
7、一种码流解码装置,其特征在于,包括:
接收模块,用于接收码流,所述码流包括第一协议格式码流或第二协议格式码流;
第一判断模块,用于根据码流标识判断所述码流的码流格式;
第一解码模块,用于当所述第一判断模块根据码流标识判断所述码流为第一协议格式码流,且在按照所述第一协议格式的解码方式解码的过程中检测到所述第二协议格式的码流标识时,按照所述第二协议格式的解码方式解码;
第二判断模块,用于当所述第一判断模块根据码流标识判断所述码流为第二协议格式码流,且在所述第一解码模块按照所述第二协议格式的解码方式进行解码的过程中所述第一判断模块检测到所述第一协议格式的码流标识时,判断所述第一协议格式的码流标识的数量是否超过预先设置的阈值;
第二解码模块,用于当所述第二判断模块判断所述第一协议格式的码流标识的数量超过预先设置的阈值时,按照所述第一协议格式的解码方式解码。
8、如权利要求7所述的码流解码装置,其特征在于,所述第二判断模块,包括:
计数子模块,用于对所述第一协议格式的码流标识的数量进行计数累加;
阈值判断子模块,用于判断所述计数子模块累加的所述第一协议格式的码流标识的数量是否超过所述预先设置的阈值;
清零模块,用于当所述阈值判断子模块判断所述第一协议格式的码流标识的数量未超过所述预先设置的阈值且所述第一判断模块检测到所述第二协议格式的码流标识时,将所述第一协议格式的码流标识的计数数量清零,并指示所述第一解码模块继续按照所述第二协议格式的解码方式进行解码。
9、如权利要求7或8所述的码流解码装置,其特征在于,所述第二协议格式码流包括第四代动态图像专家组MPEG-4协议格式码流,所述第一协议格式码流包括H.263协议格式码流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810084318 CN101242538B (zh) | 2008-03-18 | 2008-03-18 | 一种码流解码方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810084318 CN101242538B (zh) | 2008-03-18 | 2008-03-18 | 一种码流解码方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101242538A true CN101242538A (zh) | 2008-08-13 |
CN101242538B CN101242538B (zh) | 2010-06-02 |
Family
ID=39933711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810084318 Expired - Fee Related CN101242538B (zh) | 2008-03-18 | 2008-03-18 | 一种码流解码方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101242538B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045461A (zh) * | 2009-10-09 | 2011-05-04 | 杭州华三通信技术有限公司 | 语音信号的混音方法和装置 |
CN101662677B (zh) * | 2008-08-29 | 2011-08-10 | 华为终端有限公司 | 码流转换系统及方法、码流识别单元和方案确定单元 |
CN102938908A (zh) * | 2012-10-30 | 2013-02-20 | 深圳市路友网络科技有限公司 | 一种移动设备网络流量优化方法、装置及设备 |
CN101917391B (zh) * | 2009-12-17 | 2013-03-06 | 新奥特(北京)视频技术有限公司 | 一种网络视频的播放方法及一种网络视频播放系统 |
CN107592554A (zh) * | 2017-09-20 | 2018-01-16 | 武汉斗鱼网络科技有限公司 | 直播视频转发方法及装置 |
CN112019847A (zh) * | 2019-05-28 | 2020-12-01 | 杭州海康威视数字技术股份有限公司 | 解码方法及电子设备 |
CN114430307A (zh) * | 2020-10-14 | 2022-05-03 | 长沙智能驾驶研究院有限公司 | 数据解码方法、数据编码方法、装置及终端设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0104785D0 (en) * | 2001-02-27 | 2001-04-18 | Pace Micro Tech Plc | MPEG decoder video in the form of cue and/or review streams of data |
CN101120592A (zh) * | 2005-02-16 | 2008-02-06 | 汤姆逊许可公司 | 敏捷解码器 |
-
2008
- 2008-03-18 CN CN 200810084318 patent/CN101242538B/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101662677B (zh) * | 2008-08-29 | 2011-08-10 | 华为终端有限公司 | 码流转换系统及方法、码流识别单元和方案确定单元 |
CN102045461A (zh) * | 2009-10-09 | 2011-05-04 | 杭州华三通信技术有限公司 | 语音信号的混音方法和装置 |
CN102045461B (zh) * | 2009-10-09 | 2013-07-24 | 杭州华三通信技术有限公司 | 语音信号的混音方法和装置 |
CN101917391B (zh) * | 2009-12-17 | 2013-03-06 | 新奥特(北京)视频技术有限公司 | 一种网络视频的播放方法及一种网络视频播放系统 |
CN102938908A (zh) * | 2012-10-30 | 2013-02-20 | 深圳市路友网络科技有限公司 | 一种移动设备网络流量优化方法、装置及设备 |
CN107592554A (zh) * | 2017-09-20 | 2018-01-16 | 武汉斗鱼网络科技有限公司 | 直播视频转发方法及装置 |
CN107592554B (zh) * | 2017-09-20 | 2019-08-02 | 武汉斗鱼网络科技有限公司 | 直播视频转发方法及装置 |
CN112019847A (zh) * | 2019-05-28 | 2020-12-01 | 杭州海康威视数字技术股份有限公司 | 解码方法及电子设备 |
CN114430307A (zh) * | 2020-10-14 | 2022-05-03 | 长沙智能驾驶研究院有限公司 | 数据解码方法、数据编码方法、装置及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN101242538B (zh) | 2010-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101242538B (zh) | 一种码流解码方法和装置 | |
CA2693389C (en) | Simultaneous processing of media and redundancy streams for mitigating impairments | |
US8804845B2 (en) | Non-enhancing media redundancy coding for mitigating transmission impairments | |
JP5378227B2 (ja) | チャネルスイッチングのためのシステムと方法 | |
CN101068210B (zh) | 多媒体数据传输方法 | |
CN102630040A (zh) | 利用带宽优化的快速频道改变伴流解决方案 | |
KR20100106959A (ko) | 에프이씨 인코딩 및 디코딩을 위한 방법 및 장치 | |
JP2010516102A5 (zh) | ||
TWI423674B (zh) | 視訊接收器上之抹消方法以及利用視訊伺服器傳輸連流至接收器之方法 | |
KR20100008006A (ko) | 트랜스포트 스트림으로부터 프로그램 스트림으로의 변환 | |
CN101695134B (zh) | 一种弱信号环境下提高终端播放性能的终端、系统及方法 | |
US9294808B2 (en) | Transmission concept for an access unit stream | |
CN101064841A (zh) | 网络电视机顶盒、网络电视系统及其流媒体提供方法 | |
US8718131B2 (en) | Method and apparatus for generating and processing packet in MPEG-2 transport stream | |
CN100425068C (zh) | 将闭路字幕数据从广播dtv代码转换成dvd的方法和系统 | |
CN105898295A (zh) | 一种播放器解码方法和装置 | |
US20060280428A1 (en) | Method for clipping video assisted by clip identifier | |
JP2005518164A (ja) | 不均一誤り保護を用いるデータストリームの符号化 | |
JP4731343B2 (ja) | 復号装置 | |
CN101098486A (zh) | 利用封包取代机制以处理错误封包的接收系统和相关方法 | |
EP1961215A1 (en) | Closed caption data processing system and method | |
WO2007003836A3 (fr) | Procede et dispositif de codage video | |
CN101483757B (zh) | 一种网络互动点播的跳转方法、系统及服务器 | |
CN101578873A (zh) | 用于在多视图编码视频中利用高级语法的视频错误隐藏的方法与装置 | |
CN101742326A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100602 Termination date: 20170318 |