CN101873498B - 一种视频解码方法、装置及视音频播放系统 - Google Patents

一种视频解码方法、装置及视音频播放系统 Download PDF

Info

Publication number
CN101873498B
CN101873498B CN 201010205177 CN201010205177A CN101873498B CN 101873498 B CN101873498 B CN 101873498B CN 201010205177 CN201010205177 CN 201010205177 CN 201010205177 A CN201010205177 A CN 201010205177A CN 101873498 B CN101873498 B CN 101873498B
Authority
CN
China
Prior art keywords
buffering area
module
video
frame
output queue
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 - Fee Related
Application number
CN 201010205177
Other languages
English (en)
Other versions
CN101873498A (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.)
World (Shanghai) Technology Development Co., Ltd.
Original Assignee
Shenzhen Temobi Science and Technology 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 Shenzhen Temobi Science and Technology Co Ltd filed Critical Shenzhen Temobi Science and Technology Co Ltd
Priority to CN 201010205177 priority Critical patent/CN101873498B/zh
Publication of CN101873498A publication Critical patent/CN101873498A/zh
Application granted granted Critical
Publication of CN101873498B publication Critical patent/CN101873498B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开一种视频解码方法、装置及视音频播放系统,通过在视频解码模块、音频解码模块中设置输出帧队列缓冲区,以空间换取时间,使得回显模块和解码模块能异步地工作,具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待解码器输出,而是直接根据播放速度从缓冲队列取数据回显。由于视频I帧的解码会耖时较长,为了保证此时回显模块不会因分配不到CPU而停止,本发明在视频解码过程中的熵解码和运动补偿后通过调度CPU,保证回显模块能及时调度到CPU,从而保证播放的流畅平滑。这样,就能使得当处理器能提供的计算解码资源相对勉强满足时,能消除视音频播放不均衡或卡的现象,提供平滑、流畅的播放效果和更精准的音视频同步。

Description

一种视频解码方法、装置及视音频播放系统
技术领域
本发明涉及音视频编解码领域,尤其涉及一种视频解码方法、装置及视音频播放系统。
背景技术
从ITU-T(ITU-T for ITU Telecommunication Standardization Sector,国际电信联盟远程通信标准化组)发布H261视频编码标准以来,任何兼容H261/263/264,MPEG-1/2/4和JPEG(Joint Photographic Experts Group,联合图象专家组规范)的视频CODEC(coder-decoder,编译码器)都必须实现如下关于功能:运动估计、运动补偿、系数变换、量化和熵编码,这些视频标准都于基于同一个视频CODEC抽象模型:DPCM/DCT(差值编码/离散余弦变换)混合CODEC模型。
如图1所示是现有技术视音频播放系统基本结构图,所述视音频播放系统包括:播放控制模块101、输入接口102、音频解码模块103、视频解码模块104、回显接口105、第一缓冲区106、第二缓冲区107。所述输入接口102、音频解码模块103、视频解码模块104、回显接口105分别于播放控制模块101相连接,所述第一缓冲区106与所述输入接口102连接,所述第二缓冲区107分别与所述视频解码模块104、回显接口107和所述音频解码模块103连接,所述视频解码模块104还与回显接口105连接。其中,现有技术中,也有不设第二缓冲区的视音频播放系统,回显接口直接根据音频解码器和视频解码器传输的解码后的数据地址,进行音视频的效果的呈现。
如图2所述是图1中视音频播放系统中的视频解码模块结构图,所述视频解码模块包括:
熵解码模块1041,用于对输入的编码流进行熵解码,提取出各宏块的变换系数、运动矢量和图信息;
运行层解码和重排序模块1042,用于对运行层解码和重排序,得到量化和变换后的子宏块;
反量化模块1043,用于对所述子宏块进行反量化;
反离散余弦变换模块1044,用于对所述反量化后的子宏块进行反离散余弦变换,生成残差;
运动补偿模块1045,用于对运动矢量和参考帧图像进行运动补偿预测,生成预测宏块,其中参考帧为当前帧的前一帧;
宏块重构模块1046,用于将所述预测宏块加到残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧解码图像;
检测模块1047,用于检测当前帧图像的全部宏块重构完毕后,标明当前帧解码图像生成完毕,可用于输出或下一次解码预测。
现有技术中,视频解码模块每次解码输出一帧,解码后的视频帧raw数据(如YUV图像数据)都是存放在视频解码模块的帧输出缓冲区(图2中未示出),这是一个完全由视频解码模块使用和管理的区域,它仅能存放当前解码输出的一帧图像raw数据,当视频解码模块开始新的一次解码时,会先清空所述帧输出缓冲区。也就是说,不论是视音频播放系统(如图1所示)中的第二缓冲区107还是回显接口105,在一次访问视频解码模块104和音频解码模块105时,必须把所述帧输出缓冲区中的数据全部拷贝到第二缓冲区107或者是全部回显完毕(针对回显接口)。这个拷贝动作会导致所有播放数据都会被多复制一次,极大的浪费了紧张的CPU资源;而没有第二缓冲区107的视音播放系统在I帧解码时,如果CPU分配的计算资源不宽松,播放视频时常常会出现全屏拉伸、画面与声音停顿、等待等情况。
发明内容
本发明实施例的目的在于提出一种视频解码装置,旨在解决现有技术中播放视频时常常会出现全屏拉伸、画面与声音停顿、等待等问题。
本发明的实施例是这样实现的,一种视频解码装置,包括熵解码模块,用于对输入的编码流进行熵解码,提取出各宏块的变换系数、运动矢量和头信息;运行层解码和重排序模块,用于对运行层解码和重排序,得到量化和变换后的子宏块;反量化模块,用于对所述子宏块进行反量化;反离散余弦变换模块,用于对所述反量化后的子宏块进行反离散余弦变换,生成残差;运动补偿模块,用于对运动矢量和参考帧图像进行运动补偿预测,生成预测宏块;宏块重构模块,用于将所述预测宏块加到所述残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧解码图像;检测模块,用于检测当前帧图像的全部宏块重构完毕后,标明当前帧解码图像生成完毕,可用于输出或下一次解码预测,其中,所述装置还包括:
第一调度模块,用于实现熵解码后,调度CPU进入睡眠状态;
第二调度模块,用于实现运动补偿预测后,调度CPU进入睡眠状态。
本发明实施例的目的在于提出一种视频解码方法,所述方法包括以下步骤:
对输入的编码流进行熵解码,提取出各宏块的变换系数、运动矢量和头信息;
判断当前帧是I帧;
调度CPU进入睡眠状态;
对运行层解码和重排序,从而获取量化和变换后的子宏块;
对所述子宏块进行反量化;
对所述反量化后的子宏块进行反离散余弦变换,生成残差;
对运动矢量和参考帧图像进行运动补偿预测,生成预测宏块;
判断当前帧是I帧;
调度CPU进入睡眠状态;
将所述预测宏块加到所述残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧解码图像;
判断当前帧图像的全部宏块重构完毕后,生成当前帧帧解码图像。
本发明实施例的目的在于提出一种包括所述视频解码装置的视音频播放系统,所述系统包括播放控制模块、输入接口、音频解码模块、视频解码装置、回显接口、第一缓冲区;所述输入接口、音频解码模块、视频解码装置、回显接口分别与播放控制模块相连接,第一缓冲区与输入接口相连接;播放控制模块用于发出命令,选中要播放的文件或媒体数据位置链接地址,通过操作系统文件输入输出接口将媒体数据读入第一缓冲区,其中,
所述视频解码装置还包括第三输出队列缓冲区,所述视频解码装置用于通过输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行视频解码,存入第三输出队列缓冲区,并用于创建全局的互斥锁来保证对所述第三输出队列缓冲区的输出队列的互斥访问,所述第三输出队列缓冲区用于存储所述视频解码模块所解码后的数据,并形成输出队列以使所述回显接口和所述视频解码装置能异步地工作;
所述音频解码模块还包括第二输出队列缓冲区,所述音频解码模块用于通过输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行音频解码,存入第二输出队列缓冲区,并用于创建全局的互斥锁来保证对所述第二输出队列缓冲区的输出队列的互斥访问,所述第二输出队列缓冲区用于存储所述音频解码模块所解码后的数据,并形成输出队列以使所述回显接口和所述音频解码模块能异步地工作;
回显接口,用于按一定时序,根据所述第二输出队列缓冲区、第三输出队列缓冲区中所存储的视音频解码后的数据地址,进行视音频的效果呈现。
本发明实施例的目的在于提出一种包括所述视频解码装置的视音频播放系统,所述系统包括播放控制模块、输入接口、音频解码模块、视频解码装置、回显接口、第一缓冲区;所述输入接口、音频解码模块、视频解码装置、回显接口分别与播放控制模块相连接,第一缓冲区与输入接口相连接;播放控制模块用于发出命令,选中要播放的文件或媒体数据位置链接地址,通过操作系统文件输入输出接口将媒体数据读入第一缓冲区,其中,
所述视音频播放系统还包括第四缓冲区,所述第四缓冲区与所述音频解码模块和所述回显接口相连接,用于存储所述音频解码模块的帧输出缓冲区输出的解码后的帧数据并形成输出队列,并用于提供访问地址给所述回显接口访问;
所述视频解码装置还包括第三输出队列缓冲区,所述视频解码装置用于通过输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行视频解码,存入第三输出队列缓冲区,并用于创建全局的互斥锁来保证对所述第三输出队列缓冲区的输出队列互斥访问,所述第三输出队列缓冲区用于存储所述视频解码模块所解码后的数据,并形成输出队列以使所述回显接口和所述视频解码装置能异步地工作;
所述音频解码模块还与所述第四缓冲区相连接,用于通过所述输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行音频解码,每次解码输出一帧,将解码后的视频帧raw数据存放在所述音频解码模块的帧输出缓冲区;
回显接口,用于按一定时序,根据第三输出队列缓冲区中所存储的视频解码后的数据地址和第四缓冲区存储的音频解码后的数据地址进行视音频的效果呈现。
本发明实施例通过在视频解码模块、音频解码模块中设置输出帧队列缓冲区,以空间换取时间,使得回显模块和解码模块能异步地(准并行)工作,具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待解码器输出,而是直接根据播放速度从缓冲队列取数据回显。由于视频I帧的解码会耖时较长(常常远大于40ms),为了保证此时回显模块不会因分配不到CPU而停止,本发明在视频解码过程中的熵解码和运动补偿后通过调度CPU,保证回显模块能及时调度到CPU,从而保证播放的流畅平滑。这样,就能使得当处理器能提供的计算解码资源相对勉强满足(例如单项视频解码测试时平均36ms每帧)时,能消除视音频播放不均衡或卡的现象,提供平滑、流畅的播放效果和更精准的音视频同步。
附图说明
图1是现有技术视音频播放系统基本结构图;
图2是图1中视音频播放系统中的视频解码模块结构图;
图3是本发明实施例视音频播放系统结构图;
图4是图3中视音频播放系统中的视频解码模块结构图;
图5是本发明实施例视频解码方法流程图;
图6是本发明另一实施例视音频播放系统结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对本发明进行进一步详细说明,为了便于说明,仅示出了与本发明实施例相关的部分。应当理解,此处所描写的具体实施例,仅仅用于解释本发明,并不用以限制本发明。
本发明实施例通过在视频解码模块、音频解码模块中设置输出帧队列缓冲区,以空间换取时间,使得回显接口模块和解码模块能异步地(准并行)工作,具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待解码器输出,而是直接根据播放速度从缓冲队列取数据回显。由于视频I帧的解码会耖时较长(常常远大于40ms),为了保证此时回显模块不会因分配不到CPU而停止,本发明在视频解码过程中的熵解码和运动补偿后通过调度CPU,保证回显模块能及时调度到CPU,从而保证播放的流畅平滑。这样,就能使得当处理器能提供的计算解码资源相对勉强满足(例如单项视频解码测试时平均36ms每帧)时,能消除视音频播放不均衡或卡的现象,提供平滑、流畅的播放效果和更精准的音视频同步。
如图3所示,为本发明实施例视音频播放系统结构图。所述系统包括:播放控制模块101、输入接口102、音频解码模块103、视频解码模块104、回显接口105、第一缓冲区106,其中音频解码模块103包括第二输出队列缓冲区1031、视频解码模块104包括第三输出队列缓冲区1048。所述输入接口102、音频解码模块103、视频解码模块104、回显接口105分别与播放控制模块101相连接,第一缓冲区106与输入接口102相连接。
播放控制模块101,用于发出命令,选中要播放的文件或媒体数据位置链接地址,通过操作系统文件输入输出接口(图3中未示出),将媒体数据读入第一缓冲区106;
音频解码模块103,用于通过输入接口102获取第一缓冲区106中的要播放的文件或媒体数据,并进行音频解码,存入第二输出队列缓冲区1031,并用于创建全局的互斥锁来保证对所述第二输出队列缓冲区1031的输出队列互斥访问,所述第二输出队列缓冲区1031用于存储所述音频解码模块103所解码后的数据,并形成输出队列以使回显接口105和音频解码模块103能异步地(准并行)工作(具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待音频解码模块103输出,而是直接根据播放速度从输出队列取数据回显)。
视频解码模块104,用于通过输入接口102获取第一缓冲区106中的要播放的文件或媒体数据,并进行视频解码,存入第三输出队列缓冲区1048,并用于创建全局的互斥锁来保证对所述第三输出队列缓冲区1048的输出队列互斥访问,所述第三缓冲区1048用于存储所述视频解码模块104所解码后的数据,并形成输出队列以使回显接口105和视频解码模块1048能异步地(准并行)工作(具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待视频解码模块104输出,而是直接根据播放速度从输出队列取数据回显)。
回显接口105,用于按一定时序,根据所述第二输出队列缓冲区1031和第三输出队列缓冲区1048中所存储的视音频解码后的数据地址,进行视音频的效果呈现。
其中所述回显接口105与音频解码模块和视频解码模块在不同的线程运行。
如图4所示为图3中视音频播放系统中的视频解码模块结构图。所述视频解码模块包括:
熵解码模块1041,用于对输入的编码流进行熵解码,提取出各宏块的变换系数、运动矢量和头信息;
第一调度模块1049,用于实现熵解码后,调度CPU进入睡眠状态以保证回显模块能及时调度到CPU,其中所述睡眠状态的时间小于一个CPU时钟Tick。;
运行层解码和重排序模块1042,用于对运行层解码和重排序,得到量化和变换后的子宏块;
反量化模块1043,用于对所述子宏块进行反量化;
反离散余弦变换模块1044,用于对所述反量化后的子宏块进行反离散余弦变换,生成残差;
运动补偿模块1045,用于对运动矢量和参考帧图像进行运动补偿预测,生成预测宏块,其中,所述参考帧为当前帧的前一帧;
第二调度模块1040,用于实现运动补偿预测后实现调度CPU进入睡眠状态以保证回显模块能及时调度到CPU,其中所述睡眠状态的时间小于一个CPU时钟Tick;
宏块重构模块1046,用于将所述预测宏块加到所述残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧解码图像;
检测模块1047,用于检测当前帧图像的全部宏块重构完毕后,标明当前帧解码图像生成完毕,可用于输出或下一次解码预测。
本发明实施例通过在视频解码模块、音频解码模块中设置输出帧队列缓冲区,以空间换取时间,使得回显接口模块和解码模块能异步地(准并行)工作,具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待解码器输出,而是直接根据播放速度从缓冲队列取数据回显。由于视频I帧的解码会耖时较长(常常远大于40ms),为了保证此时回显模块不会因分配不到CPU而停止,本发明在视频解码过程中的熵解码和运动补偿后通过调度CPU,保证回显模块能及时调度到CPU,从而保证播放的流畅平滑。这样,就能使得当处理器能提供的计算解码资源相对勉强满足(例如单项视频解码测试时平均36ms每帧)时,能消除视音频播放不均衡或卡的现象,提供平滑、流畅的播放效果和更精准的音视频同步。
如图5所示为本发明实施例视频解码方法流程图。所述方法包括以下步骤:
S501,对输入的编码流进行熵解码,提取出各宏块的变换系数、运动矢量和头信息;
S513,判断当前帧是否为I帧,是则进入步骤S502,否则进入步骤S503;
S502,调度CPU进入睡眠状态(其中所述睡眠状态的时间小于一个CPU时钟Tick);
S503,对运行层解码和重排序,从而获取量化和变换后的子宏块;
S504,对所述子宏块进行反量化;
S505,对所述反量化后的子宏块进行反离散余弦变换,生成残差;
S506,对运动矢量和参考帧图像进行运动补偿预测,生成预测宏块,其中,所述参考帧为当前帧的前一帧;
S514,判断当前帧是否为I帧,是则进入步骤S507,否则进入步骤S508;
S507,调度CPU进睡眠状态(其中所述睡眠状态的时间小于一个CPU时钟Tick);
S508,将所述预测宏块加到所述残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧帧解码图像;
S509,判断当前帧图像的全部宏块是否重构完毕后,是则进入步骤S510,否则返回步骤S501;
S510,生成当前帧帧解码图像。
由于视频I帧的解码会耖时较长(常常远大于40ms),为了保证此时回显模块不会因分配不到CPU而停止,本发明实施例在视频解码过程中的熵解码和运动补偿后通过调度CPU,保证回显模块能及时调度到CPU,从而保证播放的流畅平滑,这样,就能使得当处理器能提供的计算解码资源相对勉强满足(例如单项视频解码测试时平均36ms每帧)时,能消除视音频播放不均衡或卡的现象,提供平滑、流畅的播放效果和更精准的音视频同步。
图6为本发明另一实施例视音频播放系统结构图,其与图3的区别在于,所述音频解码模块103并不包括输出队列缓冲区,只是在视频解码模块中设有第三输出队列缓冲区1048,所示系统包括:
播放控制模块101、输入接口102、音频解码模块103、视频解码模块104、回显接口105、第一缓冲区106,其中,视频解码模块104包括第三输出队列缓冲区1048。所述输入接口102、音频解码模块103、视频解码模块104、回显接口105分别与播放控制模块101相连接,第一缓冲区106与输入接口102相连接,所述视音频播放系统还包括第四缓冲区108,所述第四缓冲区108与所述音频解码模块和所述回显接口相连接。
播放控制模块101,用于发出命令,选中要播放的文件或媒体数据位置链接地址,通过操作系统文件输入输出接口(图6中未示出),将媒体数据读入第一缓冲区106;
音频解码模块103,用于通过输入接口102获取第一缓冲区106中的要播放的文件或媒体数据,并进行音频解码,每次解码输出一帧,将解码后的视频帧raw数据存放在音频解码模块103的帧输出缓冲区(图6中未示出);
第四缓冲区108,用于存储所述音频解码模块103的帧输出缓冲区输出的解码后的帧数据并形成输出队列,并用于提供访问地址给所述回显接口105访问;
视频解码模块104,用于通过输入接口102获取第一缓冲区106中的要播放的文件或媒体数据,并进行视频解码,存入第三输出队列缓冲区1048,并用于创建全局的互斥锁来保证对所述第三输出队列缓冲区1048的输出队列互斥访问,所述第三队列缓冲区1048用于存储所述视频解码模块104解码后的数据,并形成输出队列以使回显接口105和视频解码模块104能异步地(准并行)工作(具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待音频解码模块103输出,而是直接根据播放速度从输出队列取数据回显);
回显接口105,用于按一定时序,根据第三输出队列缓冲区1048中所存储的视频解码后的数据地址和第四缓冲区存储的音频解码后的数据地址,进行视音频的效果呈现。
其中所述回显接口105与音频解码模块和视频解码模块在不同的线程运行。
所述图6中的视音频播放系统中的解码模块的内部结构和工作原理如实施例一中所述,在此不在赘述。
本发明实施例通过在视频解码模块、音频解码模块中设置输出帧队列缓冲区,以空间换取时间,使得回显接口模块和解码模块能异步地(准并行)工作,具体说,如果帧队列缓冲中有视音频帧数据,回显时不用等待解码器输出,而是直接根据播放速度从缓冲队列取数据回显。由于视频I帧的解码会耖时较长(常常远大于40ms),为了保证此时回显模块不会因分配不到CPU而停止,本发明在视频解码过程中的熵解码和运动补偿后通过调度CPU,保证回显模块能及时调度到CPU,从而保证播放的流畅平滑。这样,就能使得当处理器能提供的计算解码资源相对勉强满足(例如单项视频解码测试时平均36ms每帧)时,能消除视音频播放不均衡或卡的现象,提供平滑、流畅的播放效果和更精准的音视频同步。
本领域的普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序指令相关硬件来完成的,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质可以为ROM、RAM、磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种视频解码装置,包括熵解码模块,用于对输入的编码流进行熵解码,提取出各宏块的变换系数、运动矢量和头信息;运行层解码和重排序模块,用于对运行层解码和重排序,得到量化和变换后的子宏块;反量化模块,用于对所述子宏块进行反量化;反离散余弦变换模块,用于对所述反量化后的子宏块进行反离散余弦变换,生成残差;运动补偿模块,用于对运动矢量和参考帧图像进行运动补偿预测,生成预测宏块;宏块重构模块,用于将所述预测宏块加到所述残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧解码图像;检测模块,用于检测当前帧图像的全部宏块重构完毕后,标明当前帧解码图像生成完毕,可用于输出或下一次解码预测,其特征在于,所述装置还包括:
第一调度模块,用于实现熵解码后,调度CPU进入睡眠状态;
第二调度模块,用于实现运动补偿预测后,调度CPU进入睡眠状态;
所述视频解码装置还包括第三输出队列缓冲区,所述视频解码装置用于通过输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行视频解码,存入第三输出队列缓冲区,并用于创建全局的互斥锁来保证对所述第三输出队列缓冲区的输出队列的互斥访问,所述第三输出队列缓冲区用于存储所述视频解码装置所解码后的数据,并形成输出队列以使所述回显接口和所述视频解码装置能异步地工作;
所述“使所述回显接口和所述视频解码装置能异步地工作”,具体为:如果帧队列缓冲中有视音频帧数据,回显时不用等待解码装置输出,而是直接根据播放速度从缓冲队列取数据回显。
2.如权利要求1所述的视频解码装置,其特征在于:所述参考帧为所述当前帧的前一帧。
3.如权利要求1所述的视频解码装置,其特征在于:所述睡眠状态的时间小于一个CPU时钟Tick。
4.一种视频解码方法,其特征在于,所述方法包括以下步骤:
对输入的编码流进行熵解码,提取出各宏块的变换系数、运动矢量和头信息;
判断当前帧是I帧;
调度CPU进入睡眠状态;
对运行层解码和重排序,从而获取量化和变换后的子宏块;
对所述子宏块进行反量化;
对所述反量化后的子宏块进行反离散余弦变换,生成残差;
对运动矢量和参考帧图像进行运动补偿预测,生成预测宏块;
判断当前帧是I帧;
调度CPU进入睡眠状态;
将所述预测宏块加到所述残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧解码图像;
判断当前帧图像的全部宏块重构完毕后,生成当前帧帧解码图像;
其中,所述视频解码方法还包括:获取要播放的文件或媒体数据,并进行视频解码,存入输出队列缓冲区,并创建全局的互斥锁来保证对所述输出队列缓冲区的输出队列的互斥访问。
5.如权利要求4所述的视频解码方法,其特征在于,所述方法还包括:
第一次判断当前帧不是I帧时,进入步骤“对运行层解码和重排序,从而获取量化和变换后的子宏块”。
6.如权利要求4所述的视频解码方法,其特征在于,所述方法还包括:
第二次判断当前帧不是I帧时,进入步骤“将所述预测宏块加到所述残差上生成重构的宏块,并用于当前帧图像的全部宏块重构完毕后,直接生成当前帧解码图像”。
7.如权利要求4所述的视频解码方法,其特征在于:所述参考帧为所述当前帧的前一帧。
8.如权利要求4所述的视频解码方法,其特征在于:所述睡眠状态的时间小于一个CPU时钟Tick。
9.一种包括如权利要求1所述视频解码装置的视音频播放系统,所述系统包括播放控制模块、输入接口、音频解码模块、视频解码装置、回显接口、第一缓冲区;所述输入接口、音频解码模块、视频解码装置、回显接口分别与播放控制模块相连接,第一缓冲区与输入接口相连接;播放控制模块用于发出命令,选中要播放的文件或媒体数据位置链接地址,通过操作系统文件输入输出接口将媒体数据读入第一缓冲区,其特征在于:
所述视频解码装置用于通过输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行视频解码,存入第三输出队列缓冲区,并用于创建全局的互斥锁来保证对所述第三输出队列缓冲区的输出队列的互斥访问;
所述音频解码模块还包括第二输出队列缓冲区,所述音频解码模块用于通过输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行音频解码,存入第二输出队列缓冲区,并用于创建全局的互斥锁来保证对所述第二输出队列缓冲区的输出队列的互斥访问,所述第二输出队列缓冲区用于存储所述音频解码模块所解码后的数据,并形成输出队列以使所述回显接口和所述音频解码模块能异步地工作;
回显接口,用于按一定时序,根据所述第二输出队列缓冲区、第三输出队列缓冲区中所存储的视音频解码后的数据地址,进行视音频的效果呈现。
10.一种包括如权利要求1所述视频解码装置的视音频播放系统,所述系统包括播放控制模块、输入接口、音频解码模块、视频解码装置、回显接口、第一缓冲区;所述输入接口、音频解码模块、视频解码装置、回显接口分别与播放控制模块相连接,第一缓冲区与输入接口相连接;播放控制模块用于发出命令,选中要播放的文件或媒体数据位置链接地址,通过操作系统文件输入输出接口将媒体数据读入第一缓冲区,其特征在于:
所述视音频播放系统还包括第四缓冲区,所述第四缓冲区与所述音频解码模块和所述回显接口相连接,用于存储所述音频解码模块的帧输出缓冲区输出的解码后的帧数据并形成输出队列,并用于提供访问地址给所述回显接口访问;
所述视频解码装置用于通过输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行视频解码,存入第三缓冲区输出队列,并用于创建全局的互斥锁来保证对所述第三输出队列缓冲区的输出队列的互斥访问;
所述音频解码模块还与所述第四缓冲区相连接,用于通过所述输入接口获取第一缓冲区中的要播放的文件或媒体数据,并进行音频解码,每次解码输出一帧,将解码后的视频帧原始图像数据存放在所述音频解码模块的帧输出缓冲区;
回显接口,用于按一定时序,根据所述第三输出队列缓冲区中所存储的视频解码后的数据地址和第四缓冲区存储的音频解码后的数据地址进行视音频的效果呈现。
CN 201010205177 2010-06-22 2010-06-22 一种视频解码方法、装置及视音频播放系统 Expired - Fee Related CN101873498B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010205177 CN101873498B (zh) 2010-06-22 2010-06-22 一种视频解码方法、装置及视音频播放系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010205177 CN101873498B (zh) 2010-06-22 2010-06-22 一种视频解码方法、装置及视音频播放系统

Publications (2)

Publication Number Publication Date
CN101873498A CN101873498A (zh) 2010-10-27
CN101873498B true CN101873498B (zh) 2013-05-08

Family

ID=42998117

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010205177 Expired - Fee Related CN101873498B (zh) 2010-06-22 2010-06-22 一种视频解码方法、装置及视音频播放系统

Country Status (1)

Country Link
CN (1) CN101873498B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102769715B (zh) * 2012-03-31 2017-12-29 新奥特(北京)视频技术有限公司 一种码流剪辑的方法及系统
CN102883218B (zh) * 2012-09-21 2015-04-01 北京君正集成电路股份有限公司 一种解码多个视频文件的方法及设备
CN104125493A (zh) * 2013-04-24 2014-10-29 鸿富锦精密工业(深圳)有限公司 影音同步系统及方法
CN114640875A (zh) * 2020-12-15 2022-06-17 晶晨半导体(深圳)有限公司 控制终端显示的方法和电子设备
CN112995532B (zh) * 2021-02-03 2023-06-13 上海哔哩哔哩科技有限公司 视频处理方法及装置
CN114630170B (zh) * 2022-03-24 2023-10-31 抖音视界有限公司 一种音视频同步方法、装置、电子设备及存储介质
CN115474063B (zh) * 2022-10-27 2023-01-10 中诚华隆计算机技术有限公司 一种流媒体后端解码方法、装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6262776B1 (en) * 1996-12-13 2001-07-17 Microsoft Corporation System and method for maintaining synchronization between audio and video
CN1589014A (zh) * 2004-07-30 2005-03-02 联合信源数字音视频技术(北京)有限公司 一种视频解码控制方法及装置
CN1588985A (zh) * 2004-07-30 2005-03-02 联合信源数字音视频技术(北京)有限公司 数字视音频解码器
CN101312519A (zh) * 2008-07-04 2008-11-26 深圳华为通信技术有限公司 数据帧处理方法和装置
CN101442586A (zh) * 2008-12-31 2009-05-27 中兴通讯股份有限公司 一种多媒体播放方法及播放终端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6262776B1 (en) * 1996-12-13 2001-07-17 Microsoft Corporation System and method for maintaining synchronization between audio and video
CN1589014A (zh) * 2004-07-30 2005-03-02 联合信源数字音视频技术(北京)有限公司 一种视频解码控制方法及装置
CN1588985A (zh) * 2004-07-30 2005-03-02 联合信源数字音视频技术(北京)有限公司 数字视音频解码器
CN101312519A (zh) * 2008-07-04 2008-11-26 深圳华为通信技术有限公司 数据帧处理方法和装置
CN101442586A (zh) * 2008-12-31 2009-05-27 中兴通讯股份有限公司 一种多媒体播放方法及播放终端

Also Published As

Publication number Publication date
CN101873498A (zh) 2010-10-27

Similar Documents

Publication Publication Date Title
CN101873498B (zh) 一种视频解码方法、装置及视音频播放系统
US9224187B2 (en) Wavefront order to scan order synchronization
US8213518B1 (en) Multi-threaded streaming data decoding
US9336558B2 (en) Wavefront encoding with parallel bit stream encoding
CN1937773B (zh) 外部存储装置、存储图像数据的方法及图像处理器
US9392292B2 (en) Parallel encoding of bypass binary symbols in CABAC encoder
CN100562114C (zh) 视频解码方法与解码装置
CN105721880A (zh) 降低视频编码和解码中的延迟
WO2020140915A1 (zh) 视频处理方法和装置
CN102447906A (zh) 低延时视频解码
CN101518089A (zh) 编/解码方法、编/解码器及寻找最佳匹配块的方法及装置
CN101453640A (zh) 一种软硬件联合解码的avs视频解码器
TWI247546B (en) A video encoding method which carries out the encoding of P frame or B frame by utilizing I frame
Li et al. Architecture and bus-arbitration schemes for MPEG-2 video decoder
US10313683B2 (en) Video encoder with context switching
CN101883276A (zh) 软硬件联合解码的多格式高清视频解码器结构
WO1995001053A1 (en) Image processor
KR100891116B1 (ko) 대역폭 인식 움직임 보상 장치 및 그 방법
CN102595193A (zh) 视频处理装置与视频处理方法
TWI304303B (en) Apparatus for image encoding and the method thereof
CN100576917C (zh) 逆扫描频率系数的方法和系统
Ling et al. A real-time video decoder for digital HDTV
CN114339249B (zh) 视频解码方法、可读介质及其电子设备
WO2021143678A1 (zh) 视频编解码中的运动信息列表构建方法、装置及设备
Kawakami et al. Power and memory bandwidth reduction of an H. 264/AVC HDTV decoder LSI with elastic pipeline architecture

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
C56 Change in the name or address of the patentee

Owner name: SHENZHEN RONGCHANG TIANXIA TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: SHENZHEN TEMOBI SCIENCE + TECHNOLOGY CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 19, building 18, Changhong technology building, 518057 South twelve Road, South tech Zone, Nanshan District hi tech Zone, Guangdong, Shenzhen

Patentee after: SHENZHEN TEMOBI TECHNOLOGY CO., LTD.

Address before: 19, building 18, Changhong technology building, 518057 South twelve Road, South tech Zone, Nanshan District hi tech Zone, Guangdong, Shenzhen

Patentee before: Shenzhen Temobi Science & Tech Development Co.,Ltd.

ASS Succession or assignment of patent right

Owner name: RONGCHUANG TIANXIA (SHANGHAI) TECHNOLOGY DEVELOPME

Free format text: FORMER OWNER: SHENZHEN RONGCHANG TIANXIA TECHNOLOGY CO., LTD.

Effective date: 20150610

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150610

Address after: 200433 Shanghai City, Yangpu District Wei Road No. 6 room 502-8

Patentee after: World (Shanghai) Technology Development Co., Ltd.

Address before: 19, building 18, Changhong technology building, 518057 South twelve Road, South tech Zone, Nanshan District hi tech Zone, Guangdong, Shenzhen

Patentee before: SHENZHEN TEMOBI TECHNOLOGY CO., LTD.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130508

Termination date: 20190622

CF01 Termination of patent right due to non-payment of annual fee