亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? intframe.h

?? JMVM MPEG MVC/3DAV 測(cè)試平臺(tái) 國(guó)際通用標(biāo)準(zhǔn)
?? H
字號(hào):
/*
********************************************************************************

NOTE - One of the two copyright statements below may be chosen
       that applies for the software.

********************************************************************************

This software module was originally developed by

Heiko Schwarz    (Fraunhofer HHI),
Tobias Hinz      (Fraunhofer HHI),
Karsten Suehring (Fraunhofer HHI)

in the course of development of the ISO/IEC 14496-10:2005 Amd.1 (Scalable Video
Coding) for reference purposes and its performance may not have been optimized.
This software module is an implementation of one or more tools as specified by
the ISO/IEC 14496-10:2005 Amd.1 (Scalable Video Coding).

Those intending to use this software module in products are advised that its
use may infringe existing patents. ISO/IEC have no liability for use of this
software module or modifications thereof.

Assurance that the originally developed software module can be used
(1) in the ISO/IEC 14496-10:2005 Amd.1 (Scalable Video Coding) once the
ISO/IEC 14496-10:2005 Amd.1 (Scalable Video Coding) has been adopted; and
(2) to develop the ISO/IEC 14496-10:2005 Amd.1 (Scalable Video Coding): 

To the extent that Fraunhofer HHI owns patent rights that would be required to
make, use, or sell the originally developed software module or portions thereof
included in the ISO/IEC 14496-10:2005 Amd.1 (Scalable Video Coding) in a
conforming product, Fraunhofer HHI will assure the ISO/IEC that it is willing
to negotiate licenses under reasonable and non-discriminatory terms and
conditions with applicants throughout the world.

Fraunhofer HHI retains full right to modify and use the code for its own
purpose, assign or donate the code to a third party and to inhibit third
parties from using the code for products that do not conform to MPEG-related
ITU Recommendations and/or ISO/IEC International Standards. 

This copyright notice must be included in all copies or derivative works.
Copyright (c) ISO/IEC 2005. 

********************************************************************************

COPYRIGHT AND WARRANTY INFORMATION

Copyright 2005, International Telecommunications Union, Geneva

The Fraunhofer HHI hereby donate this source code to the ITU, with the following
understanding:
    1. Fraunhofer HHI retain the right to do whatever they wish with the
       contributed source code, without limit.
    2. Fraunhofer HHI retain full patent rights (if any exist) in the technical
       content of techniques and algorithms herein.
    3. The ITU shall make this code available to anyone, free of license or
       royalty fees.

DISCLAIMER OF WARRANTY

These software programs are available to the user without any license fee or
royalty on an "as is" basis. The ITU disclaims any and all warranties, whether
express, implied, or statutory, including any implied warranties of
merchantability or of fitness for a particular purpose. In no event shall the
contributor or the ITU be liable for any incidental, punitive, or consequential
damages of any kind whatsoever arising from the use of these programs.

This disclaimer of warranty extends to the user of these programs and user's
customers, employees, agents, transferees, successors, and assigns.

The ITU does not represent or warrant that the programs furnished hereunder are
free of infringement of any third-party patents. Commercial implementations of
ITU-T Recommendations, including shareware, may be subject to royalty fees to
patent holders. Information regarding the ITU-T patent policy is available from 
the ITU Web site at http://www.itu.int.

THIS IS NOT A GRANT OF PATENT RIGHTS - SEE THE ITU-T PATENT POLICY.

********************************************************************************
*/




#if !defined(AFX_INTFRAME_H__98AFB9AC_5EE3_45A9_B09B_859511AC9090__INCLUDED_)
#define AFX_INTFRAME_H__98AFB9AC_5EE3_45A9_B09B_859511AC9090__INCLUDED_



#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


#include "H264AVCCommonLib/IntYuvPicBuffer.h"


H264AVC_NAMESPACE_BEGIN


class QuarterPelFilter;
class MbDataCtrl;
class DPBUnit;
class RecPicBufUnit;


class H264AVCCOMMONLIB_API IntFrame
{
public:
	IntFrame                ( YuvBufferCtrl&    rcYuvFullPelBufferCtrl,
                            YuvBufferCtrl&    rcYuvHalfPelBufferCtrl );
	virtual ~IntFrame       ();

  ErrVal  init            ( Bool              bHalfPel = false );
  ErrVal  initHalfPel     ();
  ErrVal  uninit          ();
  ErrVal  uninitHalfPel   ();

  ErrVal  load            ( PicBuffer*        pcPicBuffer );
  ErrVal  store           ( PicBuffer*        pcPicBuffer );
  ErrVal  extendFrame     ( QuarterPelFilter* pcQuarterPelFilter );

  Void      setDPBUnit      ( DPBUnit*  pcDPBUnit ) { m_pcDPBUnit = pcDPBUnit; }
  DPBUnit*  getDPBUnit      ()                      { return m_pcDPBUnit; }

  Void            setRecPicBufUnit( RecPicBufUnit* pcUnit ) { m_pcDPBUnit = (DPBUnit*)(Void*)pcUnit; }
  RecPicBufUnit*  getRecPicBufUnit()                        { return (RecPicBufUnit*)(Void*)m_pcDPBUnit; }
  
  ErrVal clip()
  {
    RNOK( getFullPelYuvBuffer()->clip() );
    return Err::m_nOK;
  }
  
  ErrVal prediction       ( IntFrame* pcMCPFrame, IntFrame* pcSrcFrame )
  {
    RNOK( getFullPelYuvBuffer()->prediction       ( pcSrcFrame->getFullPelYuvBuffer(), pcMCPFrame->getFullPelYuvBuffer() ) );
    return Err::m_nOK;
  }
  
  ErrVal update           ( IntFrame* pcMCPFrame, IntFrame* pcSrcFrame, UInt uiShift )
  {
    RNOK( getFullPelYuvBuffer()->update           ( pcSrcFrame->getFullPelYuvBuffer(), pcMCPFrame->getFullPelYuvBuffer(), uiShift ) );
    return Err::m_nOK;
  }
  
  ErrVal inverseUpdate    ( IntFrame* pcMCPFrame, IntFrame* pcSrcFrame, UInt uiShift )
  {
    RNOK( getFullPelYuvBuffer()->inverseUpdate    ( pcSrcFrame->getFullPelYuvBuffer(), pcMCPFrame->getFullPelYuvBuffer(), uiShift ) );
    return Err::m_nOK;
  }


  ErrVal update           ( IntFrame* pcMCPFrame0, IntFrame* pcMCPFrame1, IntFrame* pcSrcFrame )
  {
    RNOK( getFullPelYuvBuffer()->update           ( pcSrcFrame->getFullPelYuvBuffer(), pcMCPFrame0->getFullPelYuvBuffer(), pcMCPFrame1->getFullPelYuvBuffer() ) );
    return Err::m_nOK;
  }
  
  ErrVal inverseUpdate    ( IntFrame* pcMCPFrame0, IntFrame* pcMCPFrame1, IntFrame* pcSrcFrame )
  {
		if (pcMCPFrame0 && pcMCPFrame1){
			RNOK( getFullPelYuvBuffer()->inverseUpdate    ( pcSrcFrame->getFullPelYuvBuffer(), pcMCPFrame0->getFullPelYuvBuffer(), pcMCPFrame1->getFullPelYuvBuffer() ) );
		}else if (pcMCPFrame0){
			RNOK( getFullPelYuvBuffer()->inverseUpdate    ( pcSrcFrame->getFullPelYuvBuffer(), pcMCPFrame0->getFullPelYuvBuffer(), (IntYuvPicBuffer*)NULL ) );
		}else{
			RNOK( getFullPelYuvBuffer()->inverseUpdate    ( pcSrcFrame->getFullPelYuvBuffer(), (IntYuvPicBuffer*)NULL, pcMCPFrame1->getFullPelYuvBuffer() ) );
		}
    return Err::m_nOK;
  }

  ErrVal inversePrediction( IntFrame* pcMCPFrame, IntFrame* pcSrcFrame )
  {
    RNOK( getFullPelYuvBuffer()->inversePrediction( pcSrcFrame->getFullPelYuvBuffer(), pcMCPFrame->getFullPelYuvBuffer() ) );
    return Err::m_nOK;
  }



  ErrVal  copyAll     ( IntFrame* pcSrcFrame )
  {
// JVT-Q065 EIDR{
	  if(!m_bUnusedForRef)
	  {
		  m_bUnusedForRef = pcSrcFrame->getUnusedForRef();
	  }
// JVT-Q065 EIDR}
    m_iPOC        = pcSrcFrame->m_iPOC;
    RNOK( m_cFullPelYuvBuffer.copy( &pcSrcFrame->m_cFullPelYuvBuffer ) );
  
    return Err::m_nOK;
  }

  ErrVal  copy        ( IntFrame* pcSrcFrame )
  {
	m_bUnusedForRef = pcSrcFrame->getUnusedForRef();// JVT-Q065 EIDR

    RNOK( getFullPelYuvBuffer()->copy( pcSrcFrame->getFullPelYuvBuffer()) );
    return Err::m_nOK;
  }
//	TMM_EC {{
	ErrVal  copy        ( Frame* pcSrcFrame )
  {
    RNOK( getFullPelYuvBuffer()->copy( pcSrcFrame->getFullPelYuvBuffer()) );
    return Err::m_nOK;
  }
//TMM_EC }}  
  
  ErrVal  subtract    ( IntFrame* pcSrcFrame0, IntFrame* pcSrcFrame1 )
  {
    RNOK( getFullPelYuvBuffer()->subtract( pcSrcFrame0->getFullPelYuvBuffer(), pcSrcFrame1->getFullPelYuvBuffer() ) );
    return Err::m_nOK;
  }
  
  ErrVal  add         ( IntFrame* pcSrcFrame )
  {
    RNOK( getFullPelYuvBuffer()->add ( pcSrcFrame->getFullPelYuvBuffer()) );
    return Err::m_nOK;
  }
  
  ErrVal  setZero     ()
  {
    getFullPelYuvBuffer()->setZero();
    return Err::m_nOK;
  }

  ErrVal  setNonZeroFlags( UShort* pusNonZeroFlags, UInt uiStride )
  {
    return getFullPelYuvBuffer()->setNonZeroFlags( pusNonZeroFlags, uiStride );
  }

  ErrVal getSSD( Double& dSSDY, Double& dSSDU, Double& dSSDV, PicBuffer* pcOrgPicBuffer )
  {
    RNOK( m_cFullPelYuvBuffer.getSSD( dSSDY, dSSDU, dSSDV, pcOrgPicBuffer ) );
    return Err::m_nOK;
  }

  ErrVal dump( FILE* pFile, Int uiBandType, MbDataCtrl* pcMbDataCtrl )
  {
    if( uiBandType != 0 )
    {
      RNOK( getFullPelYuvBuffer()->dumpHPS( pFile, pcMbDataCtrl ) );
    }
    else
    {
      RNOK( getFullPelYuvBuffer()->dumpLPS( pFile ) );
    }
    return Err::m_nOK;
  }


  ErrVal loadFromFile8BitAndFillMargin( FILE* pFILE )
  {
    RNOK( getFullPelYuvBuffer()->loadFromFile8Bit( pFILE ) );
    RNOK( getFullPelYuvBuffer()->fillMargin      () );
    return Err::m_nOK;
  }

// TMM_ESS {
	ErrVal upsample     ( DownConvert& rcDownConvert, ResizeParameters* pcParameters, Bool bClip )
  {
    RNOK( getFullPelYuvBuffer()->upsample( rcDownConvert, pcParameters, bClip ) );
    return Err::m_nOK;
  }

  ErrVal upsampleResidual ( DownConvert& rcDownConvert, ResizeParameters* pcParameters, MbDataCtrl* pcMbDataCtrl, Bool bClip )
  {
    RNOK( getFullPelYuvBuffer()->upsampleResidual( rcDownConvert, pcParameters, pcMbDataCtrl, bClip ) );
    return Err::m_nOK;
  }
// TMM_ESS }


  IntYuvPicBuffer*  getFullPelYuvBuffer     ()        { return &m_cFullPelYuvBuffer; }
  IntYuvPicBuffer*  getHalfPelYuvBuffer     ()        { return &m_cHalfPelYuvBuffer; }

  Int   getPOC()          const   { return m_iPOC; }
  Void  setPOC( Int iPoc)         { m_iPOC = iPoc; }

//JVT-S036 lsj{
  Int	getFrameNum()	  const		{ return m_iFrameNum; }
  Void  setFrameNum( Int iNum )		{ m_iFrameNum = iNum; }
//JVT-S036 }

// JVT-Q065 EIDR{
  Bool	getUnusedForRef()			  { return m_bUnusedForRef; }
  Void	setUnusedForRef( Bool b )	  { m_bUnusedForRef = b; }
// JVT-Q065 EIDR}

  Bool  isHalfPel()   { return m_bHalfPel; }

  Bool  isExtended () { return m_bExtended; }
  Void  clearExtended() { m_bExtended = false; }

  UInt  getViewId()      const   { return m_uiViewId; }
  Void  setViewId( UInt uiViewId ) { m_uiViewId = uiViewId; }


  // JVT-R057 LA-RDO{
  Void   initChannelDistortion();
  Void   uninitChannelDistortion()  { 
	  if(m_piChannelDistortion) 
		  delete[] m_piChannelDistortion; 
  }
  UInt*   getChannelDistortion()   { return  m_piChannelDistortion;}
  Void   copyChannelDistortion(IntFrame*p1);
  Void   zeroChannelDistortion();
  Void   setChannelDistortion(IntFrame*p1) { if(p1) m_piChannelDistortion=p1->m_piChannelDistortion; else m_piChannelDistortion=NULL;}
  // JVT-R057 LA-RDO}  
protected:
  IntYuvPicBuffer m_cFullPelYuvBuffer;
  IntYuvPicBuffer m_cHalfPelYuvBuffer;
  
  Int             m_iPOC;
  Bool            m_bHalfPel;
  Bool            m_bExtended;

  DPBUnit*        m_pcDPBUnit;

  Bool			  m_bUnusedForRef; // JVT-Q065 EIDR
  // JVT-R057 LA-RDO{
  UInt*            m_piChannelDistortion;
  // JVT-R057 LA-RDO}

    Int			  m_iFrameNum; //JVT-S036 
  UInt            m_uiViewId;

};


H264AVC_NAMESPACE_END


#endif // !defined(AFX_INTFRAME_H__98AFB9AC_5EE3_45A9_B09B_859511AC9090__INCLUDED_)

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区喷汁尤物| 亚洲成av人影院在线观看网| 日韩av中文在线观看| 北条麻妃一区二区三区| 国产精品久久一级| 极品少妇一区二区三区精品视频 | av福利精品导航| 国产精品网曝门| 99久久精品国产麻豆演员表| 亚洲欧美日韩人成在线播放| 91国产丝袜在线播放| 调教+趴+乳夹+国产+精品| 欧美一区二区三区在线电影| 国产原创一区二区三区| 亚洲一区精品在线| 欧美三级电影精品| 奇米影视在线99精品| 久久影视一区二区| jvid福利写真一区二区三区| 亚洲欧美一区二区不卡| 91麻豆精品国产| 国产一区二区三区精品视频| 欧美国产精品v| 一本大道久久a久久综合婷婷| 亚洲成人7777| 精品国产电影一区二区| 9i在线看片成人免费| 天堂蜜桃91精品| 久久久亚洲综合| 91麻豆swag| 韩国一区二区三区| 一区二区三区鲁丝不卡| 欧美精品aⅴ在线视频| 国产又黄又大久久| 亚洲在线视频网站| 日韩精品一区二区三区四区| 91老司机福利 在线| 日本视频一区二区三区| 中文字幕中文字幕在线一区 | 成人h精品动漫一区二区三区| 中文字幕一区二区三区不卡在线| 欧美丰满少妇xxxxx高潮对白| 国内成人免费视频| 亚洲精品成人少妇| 日韩欧美一级片| 91色.com| 国产一区二区三区| 亚洲资源中文字幕| 久久综合久久99| 欧美在线看片a免费观看| 国产不卡在线播放| 日韩高清不卡在线| 一区二区三区在线高清| 国产精品超碰97尤物18| 精品欧美一区二区在线观看| 在线观看视频欧美| 成人美女视频在线观看| 日韩精品亚洲专区| 一区二区三区四区在线播放| 久久久精品黄色| 欧美第一区第二区| 欧美日高清视频| 国产在线精品免费| 男人的j进女人的j一区| 亚洲综合色成人| 中文字幕一区二区不卡| 日本一区二区三区电影| 精品99一区二区三区| 欧美精品久久久久久久多人混战 | 精品欧美乱码久久久久久1区2区| 丁香婷婷综合色啪| 成人黄色在线看| 9191久久久久久久久久久| 日韩欧美国产三级电影视频| 丁香亚洲综合激情啪啪综合| 欧美私人免费视频| 秋霞电影网一区二区| 亚洲自拍偷拍图区| 成人欧美一区二区三区1314 | 婷婷久久综合九色综合伊人色| 国产精品美女久久久久aⅴ| 久久精品欧美一区二区三区麻豆| 欧美一区二区私人影院日本| 日韩午夜精品电影| 日韩精品影音先锋| 26uuu国产在线精品一区二区| 精品国产91久久久久久久妲己| 日韩一区二区三区av| 精品少妇一区二区三区在线视频| 欧美成人欧美edvon| 精品美女在线观看| 久久婷婷国产综合精品青草| 国产三级精品在线| 亚洲欧洲日产国码二区| 一区二区视频在线看| 亚洲图片欧美综合| 蜜臀av一级做a爰片久久| 麻豆传媒一区二区三区| 国产精品香蕉一区二区三区| 成人黄色大片在线观看| 91首页免费视频| 欧美久久一区二区| 精品国产成人系列| 中文字幕电影一区| 一区在线播放视频| 五月婷婷激情综合| 国产一区二区三区免费观看| 国产成人自拍网| 成人av动漫在线| 欧美日韩精品电影| 欧美mv和日韩mv国产网站| 国产精品伦理在线| 亚洲人亚洲人成电影网站色| 午夜精品久久一牛影视| 国产伦精品一区二区三区视频青涩| 成人午夜激情视频| 欧美日韩一级片网站| 久久久精品影视| 亚洲一区二区高清| 国产精品夜夜嗨| 欧美午夜影院一区| 2021久久国产精品不只是精品| 综合激情网...| 日韩电影一二三区| 99久久精品国产毛片| 欧美大片在线观看| 亚洲另类在线一区| 国产一区二区三区电影在线观看| 91激情在线视频| 国产欧美一区二区三区网站| 午夜不卡av在线| 成人午夜短视频| 欧美sm极限捆绑bd| 亚洲影视在线观看| 大桥未久av一区二区三区中文| 91.xcao| 亚洲免费看黄网站| 国产伦精品一区二区三区视频青涩| 欧美私模裸体表演在线观看| 国产亚洲欧美日韩俺去了| 亚洲成av人影院在线观看网| 成人久久18免费网站麻豆 | 欧美亚洲国产一卡| 国产亚洲综合在线| 看片的网站亚洲| 97se亚洲国产综合在线| 久久蜜桃av一区精品变态类天堂| 天天亚洲美女在线视频| 91蜜桃在线免费视频| 欧美国产精品一区二区| 久久99精品久久久久久国产越南| 欧美日韩亚洲国产综合| 亚洲男人都懂的| 成人h精品动漫一区二区三区| 欧美精品一区二区不卡 | **性色生活片久久毛片| 国产高清不卡一区| 26uuu精品一区二区在线观看| 日本美女一区二区三区视频| 欧美日韩国产另类不卡| 亚洲综合色噜噜狠狠| 在线亚洲一区观看| 成人欧美一区二区三区在线播放| 国产乱对白刺激视频不卡| 久久一区二区视频| 全国精品久久少妇| 337p亚洲精品色噜噜| 亚洲成人免费电影| 欧美理论电影在线| 亚洲男人电影天堂| 欧美影院一区二区三区| 亚洲黄色小说网站| 色先锋资源久久综合| 中文字幕日韩一区| 成人99免费视频| 亚洲精品国产成人久久av盗摄 | 亚洲激情在线激情| 色婷婷亚洲一区二区三区| 亚洲伦理在线精品| 精品视频在线视频| 免费在线看成人av| 精品国产一区a| 国产91富婆露脸刺激对白| 中文一区一区三区高中清不卡| 成人免费视频视频| 亚洲精品成人少妇| 欧美日韩视频专区在线播放| 免费在线观看一区二区三区| 亚洲精品一区二区在线观看| 国产a视频精品免费观看| 亚洲国产精品精华液ab| 色婷婷激情久久| 亚洲成a人在线观看| 日韩无一区二区| 成人中文字幕合集| 亚洲视频网在线直播| 99久久99久久免费精品蜜臀| 国产精品久久久久久妇女6080| 国产精品91xxx| 久久久精品天堂|