CN101389033B - 帧场自适应解码模式下解码器缓存控制方法 - Google Patents
帧场自适应解码模式下解码器缓存控制方法 Download PDFInfo
- Publication number
- CN101389033B CN101389033B CN 200810305297 CN200810305297A CN101389033B CN 101389033 B CN101389033 B CN 101389033B CN 200810305297 CN200810305297 CN 200810305297 CN 200810305297 A CN200810305297 A CN 200810305297A CN 101389033 B CN101389033 B CN 101389033B
- Authority
- CN
- China
- Prior art keywords
- frame
- image
- present
- decoder
- field
- 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
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及图像解码技术,特别涉及帧场自适应解码模式下解码器缓存控制方法。本发明针对现有技术在帧场自适应解码模式下,存储器利用率低,需要较大的存储空间,解码器成本高的缺点,公开了一种帧场自适应解码模式下解码器缓存控制方法,以克服上述缺陷。本发明的技术方案是,帧场自适应解码模式下解码器缓存控制方法,包括以下步骤:a、在解码器存储空间中划分一个图像缓存区;b、根据当前图像的编码模式,预设存取当前图像和参考图像数据的跨度;c、图像解码过程中,帧和场的空间共享所述图像缓存区。本发明用于解码器缓存控制,能够有效提高存储空间的利用率,节省缓存空间,提高解码器的执行效率。
Description
技术领域
本发明涉及图像解码技术,特别涉及帧场自适应解码模式下解码器缓存控制方法。
背景技术
目前,一些流行的视频压缩标准,为了获得较高的压缩性能,都采用了帧间预测的方法。帧间预测就是用当前图像前后相邻的一帧或几帧参考图像来预测当前图像。在帧场自适应解码模式下,解码器需要为帧和场分别开辟一段独立的存储空间,用于存放当前帧、参考帧、当前场和参考场的数据。如果当前图像编码模式为帧且需要用作参考,在当前帧解码完成后,需要将当前帧分离为两场。如果当前图像编码模式为场且需要用作参考,在当前图像的两场解码完成后,需要将两场合并为帧。现有技术中存储器的这种分配模式,存储器的利用率低,解码器需要较大的存储空间,不利于解码器成本的降低。而且帧场的分离、合并操作也降低了解码效率。
发明内容
本发明所要解决的技术问题,就是针对现有技术在帧场自适应解码模式下,存储器利用率低,需要较大的存储空间,解码器成本高的缺点,提供一种帧场自适应解码模式下解码器缓存控制方法,以克服上述缺陷。
本发明解决所述就是问题,采用的技术方案是,帧场自适应解码模式下解码器缓存控制方法,包括以下步骤:
a、在解码器存储空间中划分一个图像缓存区,所述图像缓存区与n+1帧图像大小相当;其中n为解码器所需最多参考帧的数目;
b、根据当前图像的编码模式,预设存取当前图像和参考图像数据的跨度:如果当前图像编码模式为帧,所述跨度设为图像宽度;如果当前图像编码模式为场,所述跨度设为图像宽度的2倍;其中,当涉及到存取当前图像和参考图像数据跨行的情况时依据所述跨度来进行;
c、图像解码过程中,帧和场的空间共享所述图像缓存区:如果当前编码模式为帧,将当前图像的指针指向当前帧缓存的地址,将n帧参考帧的指针分别指向对应参考帧的缓存的地址;如果当前编码模式为场,且当前图像为顶场,将当前图像的指针指向当前帧缓存的地址,将2*n帧参考场的指针分别指向对应参考场的缓存的地址;如果当前编码模式为场,且当前图像为底场,将当前图像的指针指向当前帧缓存的地址加上图像宽度,将2*n帧参考场的指针分别指向对应参考场的缓存的地址。
本发明的有益效果是,能够有效提高存储空间的利用率,节省缓存空间,不需要再为存储场的数据开辟独立的存储空间,即帧和场共享存储空间。在当前图像解码完成后,不需要做帧和场的合并或分离操作,能有效提高解码器的执行效率。
具体实施方式
下面结合实施例,详细描述本发明的技术方案。
本发明的技术方案是,帧场自适应解码模式下解码器缓存控制方法,包括以下步骤:
a.在解码器存储空间中划分一个图像缓存区,其大小与n+1帧图像大小相当,n为解码器所需最多参考帧的数目;
b.定义一全局变量,用于表示存取当前图像和参考图像数据时的跨度,假设为s;解码器在整个解码活动中,凡是涉及到存取当前图像和参考图像数据跨 行的情况都依据跨度s进行;如果当前图像编码模式为帧,将跨度s设为图像宽度;如果当前图像编码模式为场,将跨度s设为图像宽度的2倍;
c.图像解码过程中,帧和场的空间共享所述图像缓存区。
下面描述存储器地址空间分配方法:
设pReference[0],pReference[1],…,pReference[n-1]分别表示n帧参考帧缓存的地址,pImage表示当前帧缓存的地址。
用pCurImage表示当前图像(帧或场)指针,用pRef[0],pRef[1],…,pRef[2*n-1]分别表示参考图像(帧或场)的指针,imgWidth表示图像宽度s。
如果当前编码模式为帧,将当前图像的指针指向当前帧缓存的地址,将n帧参考帧的指针分别指向对应参考帧的缓存的地址,即将pImage赋值给pCurImage,将pReference[0]赋值给pRef[0],将pReference[1]赋值给pRef[1],依此类推,直到将pReference[n-1]赋值给pRef[n-1]。
如果当前编码模式为场,且当前图像为顶场,将当前图像的指针指向当前帧缓存的地址,将2*n帧参考场的指针分别指向对应参考场的缓存的地址,即将pImage赋值给pCurImage,将pReference[0]加上imgWidth赋值给pRef[0],将pReference[0]赋值给pRef[1],将pReference[1]加上imgWidth赋值给pRef[2],将pReference[1]赋值给pRef[3],依此类推,直到将pReference[n-1]加上imgWidth赋值给pRef[2*n-2],直到将pReference[n-1]赋值给pRef[2*n-1]。
如果当前编码模式为场,且当前图像为底场(假设允许用当前图像顶场作为参考),将当前图像的指针指向当前帧缓存的地址加上imgWidth,将2*n帧参考场的指针分别指向对应参考场的缓存的地址,即将pImage加上imgWidth赋值给pCurImage,将pImage赋值给pRef[0],将pReference[0]加上imgWidth 赋值给pRef[1],将pReference[0]赋值给pRef[2],将pReference[1]加上imgWidth赋值给pRef[3],依此类推,直到将pReference[n-2]赋值给pRef[2*n-2],直到将pReference[n-1]加上imgWidth赋值给pRef[2*n-1]。
实施例
假设解码器参考帧数目为2,当前图像顶场允许作为参考。
a.在解码器存储空间开辟三帧图像的缓存;
b.定义一全局变量s;
如果当前图像编码模式为帧,将s设为图像宽度;如果当前图像编码模式为场,将跨度s设为图像宽度的2倍;在整个解码活动中,凡是涉及到存取当前图像和参考图像数据跨行的情况都依据跨度s进行;
设置当前图像和参考图像的指针:
pImage表示当前帧缓存的地址,pReference[0],pReference[1]分别表示2帧参考帧缓存的地址;用pCurImage表示当前图像(帧或场)指针,用pRef[0],pRef[1],pRef[2],pRef[3]分别表示参考图像(帧或场)的指针,imgWidth表示图像宽度。
如果当前编码模式为帧,
pCurImage=pImage;
pRef[0]=pReference[0];
pRef[1]=pReference[1];
如果当前编码模式为场,且当前图像为顶场,
pCurImage=pImage;
pRef[0]=pReference[0]+imgWidth;
pRef[1]=pReference[0];
pRef[2]=pReference[1]+imgWidth;
pRef[3]=pReference[1];
如果当前编码模式为场,且当前图像为底场,
pCurImage=pImage+imgWidth;
pRef[0]=pImage;
pRef[1]=pReference[0]+imgWidth;
pRef[2]=pReference[0];
pRef[3]=pReference[1]+imgWidth。
Claims (1)
1.帧场自适应解码模式下解码器缓存控制方法,包括以下步骤:
a、在解码器存储空间中划分一个图像缓存区,所述图像缓存区与n+1帧图像大小相当;其中n为解码器所需最多参考帧的数目;
b、根据当前图像的编码模式,预设存取当前图像和参考图像数据的跨度:如果当前图像编码模式为帧,所述跨度设为图像宽度;如果当前图像编码模式为场,所述跨度设为图像宽度的2倍;其中,当涉及到存取当前图像和参考图像数据跨行的情况时依据所述跨度来进行;
c、图像解码过程中,帧和场的空间共享所述图像缓存区:如果当前编码模式为帧,将当前图像的指针指向当前帧缓存的地址,将n帧参考帧的指针分别指向对应参考帧的缓存的地址;如果当前编码模式为场,且当前图像为顶场,将当前图像的指针指向当前帧缓存的地址,将2*n帧参考场的指针分别指向对应参考场的缓存的地址;如果当前编码模式为场,且当前图像为底场,将当前图像的指针指向当前帧缓存的地址加上图像宽度,将2*n帧参考场的指针分别指向对应参考场的缓存的地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810305297 CN101389033B (zh) | 2008-10-30 | 2008-10-30 | 帧场自适应解码模式下解码器缓存控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810305297 CN101389033B (zh) | 2008-10-30 | 2008-10-30 | 帧场自适应解码模式下解码器缓存控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101389033A CN101389033A (zh) | 2009-03-18 |
CN101389033B true CN101389033B (zh) | 2011-09-28 |
Family
ID=40478159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810305297 Active CN101389033B (zh) | 2008-10-30 | 2008-10-30 | 帧场自适应解码模式下解码器缓存控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101389033B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102883166A (zh) * | 2011-07-14 | 2013-01-16 | 富士通株式会社 | 像素数据分发方法和系统 |
JP5972687B2 (ja) * | 2012-07-02 | 2016-08-17 | 株式会社Nttドコモ | 動画像予測符号化装置、動画像予測符号化方法、動画像予測符号化プログラム、動画像予測復号装置、動画像予測復号方法及び動画像予測復号プログラム |
CN105681815B (zh) * | 2015-12-12 | 2018-12-25 | 中国航空工业集团公司西安航空计算技术研究所 | 提高去块效应滤波模块重构数据存储速度的方法 |
CN111787330B (zh) * | 2020-06-16 | 2022-03-08 | 眸芯科技(上海)有限公司 | 支持解码压缩帧缓存自适应分配的编码方法及应用 |
-
2008
- 2008-10-30 CN CN 200810305297 patent/CN101389033B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101389033A (zh) | 2009-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2760425C (en) | Method and system for parallel encoding of a video | |
KR100668302B1 (ko) | 비디오 디코더/엔코더에서의 메모리 맵핑 장치 및 그 방법 | |
US8650364B2 (en) | Processing system with linked-list based prefetch buffer and methods for use therewith | |
CN103310820A (zh) | 一种对多媒体播放器进行优化的方法 | |
CN101389033B (zh) | 帧场自适应解码模式下解码器缓存控制方法 | |
US20140086309A1 (en) | Method and device for encoding and decoding an image | |
EP1917812B1 (en) | Video encoding and decoding preserving cache localities | |
CN100446573C (zh) | 基于avs的去块效应滤波器vlsi实现装置 | |
WO2012008073A1 (ja) | 共有メモリシステム及びその制御方法 | |
CN101453640A (zh) | 一种软硬件联合解码的avs视频解码器 | |
CN101635849B (zh) | 一种环路滤波方法及环路滤波器 | |
Bonatto et al. | Multichannel SDRAM controller design for H. 264/AVC video decoder | |
CN101304528B (zh) | 视频处理器视频数据与存储器存储空间的映射方法 | |
CN100428799C (zh) | 视频解码图像存储空间管理方法 | |
CN103957419A (zh) | 一种双缓冲存储器结构的视频解码器及控制方法 | |
CN102833541B (zh) | 用于mpeg-2视频解码的sdram控制系统 | |
Sanghvi | 2D cache architecture for motion compensation in a 4K ultra-HD AVC and HEVC video codec system | |
CN105530517B (zh) | 一种解码器及有损解码视频图像的方法 | |
KR20110122412A (ko) | 멀티 스레드 기반의 비디오 디코더 및 디코딩 방법 | |
KR101484101B1 (ko) | 동영상 변환 장치 | |
CN102075759A (zh) | 视频解码应用中动态存储器的低功耗编码方法 | |
CN1929606A (zh) | 视频解码系统 | |
CN102723086B (zh) | 一种智能图文动画更新播放的方法 | |
Stancu et al. | AVid: Annotation driven video decoding for hybrid memories | |
Siqueira et al. | Ddr sdram memory controller for digital tv decoders |
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 |