CN105323587B - 视频的图像输出管理方法及装置、传输视频码流的方法 - Google Patents
视频的图像输出管理方法及装置、传输视频码流的方法 Download PDFInfo
- Publication number
- CN105323587B CN105323587B CN201410253964.7A CN201410253964A CN105323587B CN 105323587 B CN105323587 B CN 105323587B CN 201410253964 A CN201410253964 A CN 201410253964A CN 105323587 B CN105323587 B CN 105323587B
- Authority
- CN
- China
- Prior art keywords
- output
- image
- sequence
- frame
- poi
- 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
本发明公开了视频的图像输出管理方法及装置、传输视频码流的方法,其中,视频的图像输出管理方法包括:从码流中确定当前解码的序列的输出延时的帧数D,结合序列的帧率,确定序列的第N个图像输出检测时间点t(N);N>=1;令序列下一个要输出的帧的显示顺序POI_output的初始值POI_output_initial等于序列第一帧的显示顺序POI(1)减1;在第N个图像输出检测时间点t(N);N>=1;令POI_output=POI_output_initial+N;如果解码图像缓冲区中显示顺序最小的未输出的帧的显示顺序小于等于POI_output,则输出该图像;否则不输出任何图像。该方法不需要很多语法元素,编码代价低,但是能正确管理跳帧和非跳帧情况下图像输出。
Description
技术领域
本发明属于视频解码技术领域,特别涉及一种视频的图像输出管理方法及装置、传输视频码流的方法。
背景技术
在视频解码的过程中,如何管理解码图像的输出,一直是一个重要的问题,合理的图像输出方法应使得图像按照显示顺序的大小从小到大依次输出,同时还应该在合理的时间输出,即需要使用这一帧的数据的时候再输出。由于实际情况中,解码器解码一帧的时间是无法准确估计的,因此在图像输出管理的方法中,都假设解码器为理想的瞬时解码器。
在H.264和HEVC标准中,图像的输出是由SEI picture timing()中的pic_dpb_output_delay,pic_dpb_output_du_delay以及decoding_unit_info()中的pic_spt_dpb_output_du_delay管理的。三个语法元素都用于表示一个解码图像进入解码图像缓冲区之后经过多少个时钟周期可以输出。通过该管理机制,能使解码图像按照显示顺序,在合理的时间点上输出,但是缺点在于每帧都需要传输一个输出延时,这将会是一个不小的开销。
AVS2的CD文档上也提出一种管理图像输出的方法。将解码图像缓冲区分成参考图像缓冲区和重排序图像缓冲区,其中重排序缓冲区用于存放未输出的帧:
(1)从码流中获取序列输出第一帧时已经解码的帧数output_reorder_delay;
(2)解码完一帧后:如果序列已解码帧数大于output_reorder_delay,则输出重排序图像缓冲区中显示顺序最小一帧
(3)在视频序列结束码之后,依照显示顺序的大小从小到大输出未输出的帧。
该方法的特点为,解码一帧输出一帧,其中当存在解码顺序与显示顺序不一致时,输出的帧并不等于解码的那一帧。当没有发生跳帧时,该方法能很好地管理图像输出。当发生跳帧时这样的输出方式与实际应用不符合。
以图1中的GOP=8的编码码结构为例,序列的output_reorder_delay=3:
图2为按照AVS2的CD文档的图像输出方法的输出结果。
由于第9帧其实是没有编码的。输出的时候,必须将第9帧的位置空出来,将B10及显示顺序在其之后的帧都延时1个时间点输出,而不是将B10帧紧接在P8帧之后。
针对H.264,HEVC虽然图像输出管理灵活度高,但编码代价也高以及AVS2虽然编码代价低,但是无法很好地管理跳帧时图像输出的问题。本发明提出一种编码代价低,但是能正确管理跳帧和非跳帧情况下图像输出的方法。
发明内容
针对H.264,HEVC虽然图像输出管理灵活度高,但编码代价也高以及AVS2虽然编码代价低,但是无法很好地管理跳帧时图像输出的问题,本发明提出一种编码代价低,但是能正确管理跳帧和非跳帧情况下图像输出的方法及装置。本发明的第一目的在于提出一种视频的图像输出管理方法,其包括:
(1)从码流中确定当前解码的序列的输出延时的帧数D;
(2)根据帧率和当前解码的序列的输出延时的帧数D确定第N个图像输出检测时间点t(N),N>=1;假设解码器为理想的瞬时解码器;序列的第一个时间输出点t(1)等于序列第D帧解码完的时间;序列第n个图像输出检测时间点t(n)=t(n‐1)+帧率倒数,n>1;
(3)令序列下一个要输出的帧的显示顺序POI_output的初始值POI_output_initial等于序列第一帧的显示顺序POI(1)减1;
(4)在第N个图像输出检测时间点t(N),N>=1,令POI_output=POI_output_initial+N;如果解码图像缓冲区中显示顺序最小的未输出的帧的显示顺序小于等于POI_output,则输出该图像;否则不输出任何图像。
本发明的第二目的在于提出一种视频的图像输出管理装置,其至少包括序列的输出延时的帧数确定单元,图像输出检测时间点生成单元,序列下一个要输出的帧的显示顺序计算单元,图像输出控制单元;其中,
(1)序列的输出延时的帧数确定单元用于从码流中确定当前解码的序列的输出延时的帧数D;
(2)图像输出检测时间点生成单元根据帧率和当前解码的序列的输出延时的帧数D生成第N个图像输出检测时间点t(N),N>=1;假设解码器为理想的瞬时解码器;序列的第一个时间输出点t(1)等于序列第D帧解码完的时间;序列第n个图像输出检测时间点t(n)=t(n‐1)+帧率倒数,n>1;
(3)序列下一个要输出的帧的显示顺序计算单元用于计算序列下一个要输出的帧的显示顺序POI_output;POI_output初始化的值POI_output_initial为序列第一帧的显示顺序POI(1)减1;在第N个图像输出检测时间点t(N),N>=1,令POI_output=POI_output_initial+N;
(4)图像输出控制单元用于管理在第N个图像输出检测时间点t(N)解码图像如何输出,N>=1;如果解码图像缓冲区中显示顺序最小的未输出的帧的显示顺序小于等于POI_output,则输出该图像;否则不输出任何图像。
本发明的第三目的在于提出一种视频码流,码流中传输了当前解码的序列的输出延时的帧数D。
本发明的有益效果在于不需要很多语法元素,编码代价低,但是能正确管理跳帧和非跳帧情况下图像输出。
附图说明
图1为一种GOP=8的编码结构示意图;
图2为一种GOP=8的编码结构按照AVS2的CD文档的图像输出方法的输出结果示意图;
图3为本发明实施例提供的一种视频的图像输出管理方法示意图;
图4为本发明实施例提供的一种视频的图像输出管理装置的组成结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图及实施例,对本发明作进一步详细说明。
本发明的主要思想在于提供一种编码代价低,但是能正确管理跳帧和非跳帧情况下图像输出的方法。
实施例1:
如图3所示,本实施例提供一种视频的图像输出管理方法,包括:
步骤101:确定当前解码的序列的输出延时的帧数D;
具体而言,可以从码流中获取确定当前解码的序列的输出延时的帧数D。例如,在AVS2的CD文档中。下列语法元素即为当前解码的序列的输出延时的帧数D。
图像重排序延迟output_reorder_delay
5位无符号整数。由于图像编解码顺序与显示顺序不一致带来的重排序延迟,以解码图像为单位。由于一幅解码图像的显示时间和progressive_sequence、progressive_frame、repeat_first_field、picture_structure等语法元素的值有关,所以这段时间的绝对长度是不固定的,但是在这段时间内显示的解码图像数是固定的。low_delay值为‘0’时,OutputReorderDelay的值等于output_reorder_delay的值;low_delay值为‘1’时,OutputReorderDelay的值为0。OutputReorderDelay的值不应大于MAX_REORDER_BUFFER_SIZE的值。
步骤102:根据帧率和当前解码的序列的输出延时的帧数D确定第N个图像输出检测时间点t(N);N>=1;
具体而言,假设解码器为理想的瞬时解码器;
序列的第一个时间输出点t(1)等于序列第D帧解码完的时间;
序列第n个图像输出检测时间点t(n)=t(n-1)+帧率倒数;n>1;
步骤103:令序列下一个要输出的帧的显示顺序POI_output的初始值POI_output_initial等于序列第一帧的显示顺序POI(1)减1;
步骤104:在第N个图像输出检测时间点t(N);N>=1;令POI_output=POI_output_initial+N;如果解码图像缓冲区中显示顺序最小的未输出的帧的显示顺序小于等于POI_output,则输出该图像;否则不输出任何图像。
步骤101必须在步骤102之前,步骤101、102、103必须在步骤104之前。
实施例2:
如图4所示,本实施例提供一种视频的图像输出管理装置,其特征在于,至少包括序列的输出延时的帧数确定单元(装置201),图像输出检测时间点生成单元(装置202),序列下一个要输出的帧的显示顺序计算单元(装置203),图像输出控制单元(装置204)。
装置201:序列的输出延时的帧数确定单元用于确定当前解码的序列的输出延时的帧数D;
具体而言,可以从码流中获取确定当前解码的序列的输出延时的帧数D。例如,在AVS2的CD文档中。下列语法元素即为当前解码的序列的输出延时的帧数D。
图像重排序延迟output_reorder_delay
5位无符号整数。由于图像编解码顺序与显示顺序不一致带来的重排序延迟,以解码图像为单位。由于一幅解码图像的显示时间和progressive_sequence、progressive_frame、repeat_first_field、picture_structure等语法元素的值有关,所以这段时间的绝对长度是不固定的,但是在这段时间内显示的解码图像数是固定的。low_delay值为‘0’时,OutputReorderDelay的值等于output_reorder_delay的值;low_delay值为‘1’时,OutputReorderDelay的值为0。OutputReorderDelay的值不应大于MAX_REORDER_BUFFER_SIZE的值。
装置202:图像输出检测时间点生成单元根据帧率和当前解码的序列的输出延时的帧数D生成第N个图像输出检测时间点t(N);N>=1;
具体而言,假设解码器为理想的瞬时解码器;
序列的第一个时间输出点t(1)等于序列第D帧解码完的时间;
序列第n个图像输出检测时间点t(n)=t(n-1)+帧率倒数;n>1;
装置203:序列下一个要输出的帧的显示顺序计算单元用于计算序列下一个要输出的帧的显示顺序;
具体而言,序列下一个要输出的帧的显示顺序POI_output初始化的值POI_output_initial为序列第一帧的显示顺序POI(1)减1;
在在第N个图像输出检测时间点t(N);N>=1;令POI_output=POI_output_initial+N;
装置204:图像输出控制单元用于管理在第N个图像输出检测时间点t(N)解码图像如何输出,N>=1。
具体而言,如果解码图像缓冲区中显示顺序最小的未输出的帧的显示顺序小于等于POI_output,则输出该图像;否则不输出任何图像。
实施例3:
本实施例提供了一种视频码流及传输视频码流的方法。其中,一种视频码流,其特征在于:码流中传输了当前解码的序列的输出延时的帧数D。
具体而言,在AVS2的CD文档中。下列语法元素即为当前解码的序列的输出延时的帧数D。
图像重排序延迟output_reorder_delay
5位无符号整数。由于图像编解码顺序与显示顺序不一致带来的重排序延迟,以解码图像为单位。由于一幅解码图像的显示时间和progressive_sequence、progressive_frame、repeat_first_field、picture_structure等语法元素的值有关,所以这段时间的绝对长度是不固定的,但是在这段时间内显示的解码图像数是固定的。low_delay值为‘0’时,OutputReorderDelay的值等于output_reorder_delay的值;low_delay值为‘1’时,OutputReorderDelay的值为0。OutputReorderDelay的值不应大于MAX_REORDER_BUFFER_SIZE的值。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (2)
1.一种视频的图像输出管理方法,其特征在于,包括:
(1)从码流中确定当前解码的序列的输出延时的帧数D;
(2)根据帧率和当前解码的序列的输出延时的帧数D确定第N个图像输出检测时间点t(N),N>=1;假设解码器为理想的瞬时解码器;序列的第一个图像输出检测时间点t(1)等于序列第D帧解码完的时间;序列第n个图像输出检测时间点t(n)=t(n-1)+帧率倒数,n>1;
(3)令序列下一个要输出的帧的显示顺序POI_output的初始值POI_output_initial等于序列第一帧的显示顺序POI(1)减1;
(4)在第N个图像输出检测时间点t(N),N>=1,令POI_output=POI_output_initial+N;如果解码图像缓冲区中显示顺序最小的未输出的帧的显示顺序小于等于POI_output,则输出该图像;否则不输出任何图像。
2.一种视频的图像输出管理装置,其特征在于,至少包括序列的输出延时的帧数确定单元,图像输出检测时间点生成单元,序列下一个要输出的帧的显示顺序计算单元,图像输出控制单元;其中,
(1)序列的输出延时的帧数确定单元用于从码流中确定当前解码的序列的输出延时的帧数D;
(2)图像输出检测时间点生成单元根据帧率和当前解码的序列的输出延时的帧数D生成第N个图像输出检测时间点t(N),N>=1;假设解码器为理想的瞬时解码器;序列的第一个图像输出检测时间点t(1)等于序列第D帧解码完的时间;序列第n个图像输出检测时间点t(n)=t(n-1)+帧率倒数,n>1;
(3)序列下一个要输出的帧的显示顺序计算单元用于计算序列下一个要输出的帧的显示顺序POI_output;POI_output初始化的值POI_output_initial为序列第一帧的显示顺序POI(1)减1;在第N个图像输出检测时间点t(N),N>=1,令POI_output=POI_output_initial+N;
(4)图像输出控制单元用于管理在第N个图像输出检测时间点t(N)解码图像如何输出,N>=1;如果解码图像缓冲区中显示顺序最小的未输出的帧的显示顺序小于等于POI_output,则输出该图像;否则不输出任何图像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410253964.7A CN105323587B (zh) | 2014-06-09 | 2014-06-09 | 视频的图像输出管理方法及装置、传输视频码流的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410253964.7A CN105323587B (zh) | 2014-06-09 | 2014-06-09 | 视频的图像输出管理方法及装置、传输视频码流的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105323587A CN105323587A (zh) | 2016-02-10 |
CN105323587B true CN105323587B (zh) | 2018-08-28 |
Family
ID=55250057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410253964.7A Active CN105323587B (zh) | 2014-06-09 | 2014-06-09 | 视频的图像输出管理方法及装置、传输视频码流的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105323587B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713927B (zh) * | 2016-11-14 | 2019-08-13 | 珠海格力电器股份有限公司 | 一种图像输出装置、方法及解码器 |
CN108876700B (zh) * | 2018-06-01 | 2022-09-16 | 瑞芯微电子股份有限公司 | 一种提升vr显示效果的方法和电路 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1497941A (zh) * | 2002-10-03 | 2004-05-19 | 株式会社Ntt都科摩 | 视频编码方法、视频译码方法、视频编码设备、视频译码设备、视频编码程序和视频译码程序 |
CN102497552A (zh) * | 2011-12-07 | 2012-06-13 | 北京大学 | 一种包含构造图像的视频位流的解码缓冲区管理控制方法 |
CN103716638A (zh) * | 2013-12-30 | 2014-04-09 | 上海国茂数字技术有限公司 | 表示视频图像显示顺序的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060104356A1 (en) * | 2004-11-15 | 2006-05-18 | Microsoft Corporation | Timing for decoder buffer examination |
-
2014
- 2014-06-09 CN CN201410253964.7A patent/CN105323587B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1497941A (zh) * | 2002-10-03 | 2004-05-19 | 株式会社Ntt都科摩 | 视频编码方法、视频译码方法、视频编码设备、视频译码设备、视频编码程序和视频译码程序 |
CN102497552A (zh) * | 2011-12-07 | 2012-06-13 | 北京大学 | 一种包含构造图像的视频位流的解码缓冲区管理控制方法 |
CN103716638A (zh) * | 2013-12-30 | 2014-04-09 | 上海国茂数字技术有限公司 | 表示视频图像显示顺序的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105323587A (zh) | 2016-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101674845B1 (ko) | 서브픽처 버퍼 파라미터를 시그널링하기 위한 전자 장치 | |
SA515360724B1 (ar) | إرسال إشارات حساب ترتيب صورة لعلاقات معلومات موقوتة لميقات فيديو في تشفير الفيديو | |
HRP20191066T1 (hr) | Postupak za entropijsko dekodiranje segmenata odsječka | |
JP6233984B2 (ja) | マルチビュー・ビデオ符号化のための仮想参照デコーダ | |
JP2017513332A5 (zh) | ||
RU2015146961A (ru) | Устройство, способ и компьютерная программа для кодирования и декодирования видеоинформации | |
KR101992764B1 (ko) | 예측 코딩/디코딩 방법 및 상응한 코더/디코더와 전자 설비 | |
JP2015527756A5 (zh) | ||
RU2016125119A (ru) | Сигнализация опорных изображений | |
RU2013158832A (ru) | Сокращение задержки при кодировании и декодировании видео | |
BR122021000264B1 (pt) | Codificação de entropia das diferenças do vetor de movimento | |
RU2014116243A (ru) | Управление буфером декодированных изображений | |
MX2022004026A (es) | Metodos y aparatos de codificacion residual y de coeficiente. | |
BR112012012020B1 (pt) | Métodos de codificação programada e de decodificação programada em um controlador em um dispositivo, dispositivo codificador, e, dispositivo decodificador, e, sistema programado em um controlador em um dispositivo | |
RU2014153876A (ru) | Сигнализация данных для долгосрочных эталонных изображений для кодирования видео | |
EP2908518A1 (en) | Encoding/decoding method, video sequence stream encoding/decoding method, and device corresponding thereto | |
RU2015153140A (ru) | Устройство кодирования, устройство передачи и устройство приема | |
CN105323587B (zh) | 视频的图像输出管理方法及装置、传输视频码流的方法 | |
KR101710290B1 (ko) | 디코더 및 디코딩 방법 | |
US20140301641A1 (en) | Tile-Based Compression and Decompression for Graphic Applications | |
US9712848B2 (en) | Frame buffer compression using separate aggregation of fixed-length and variable-length components of codewords | |
WO2016003130A1 (ko) | 제한된 캐리 연산에 의한 산술 코딩을 수행하기 위한 방법 및 장치 | |
CN103716638B (zh) | 表示视频图像显示顺序的方法 | |
WO2014154074A1 (zh) | 一种深度信息编解码方法、装置及视频处理播放设备 | |
US11025910B2 (en) | Video encoder, video decoder, and video system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |