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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? createrh264avcdecoder.h

?? JMVM MPEG MVC/3DAV 測試平臺 國際通用標準
?? H
字號:
/*
********************************************************************************

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_CREATERH264AVCDECODER_H__0366BFA9_45D9_4834_B404_8DE3914C1E58__INCLUDED_)
#define AFX_CREATERH264AVCDECODER_H__0366BFA9_45D9_4834_B404_8DE3914C1E58__INCLUDED_

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


#include "H264AVCCommonLib/Sei.h"
#include "../../test/H264AVCDecoderLibTest/DecoderParameter.h"
#define MAX_ROI_NUM	5

class H264AVCDecoder;
class ControlMngH264AVCDecoder;
class SliceReader;
class SliceDecoder;
class UvlcReader;
class MbParser;
class MbDecoder;
class NalUnitParser;
class BitReadBuffer;
class CabacReader;
class CabaDecoder;

class MbData;
class Frame;
class FrameMng;
class LoopFilter;
class Transform;
class IntraPrediction;
class MotionCompensation;
class YuvBufferCtrl;
class QuarterPelFilter;
class SampleWeighting;
class ParameterSetMng;
class PocCalculator;

//class DecodedPicBuffer;
//class MCTFDecoder;
class ReconstructionBypass;
class RQFGSDecoder;


H264AVC_NAMESPACE_BEGIN

class H264AVCDECODERLIB_API CreaterH264AVCDecoder
{
protected:
	CreaterH264AVCDecoder();
	virtual ~CreaterH264AVCDecoder();

public:
  static ErrVal create( CreaterH264AVCDecoder*& rpcCreaterH264AVCDecoder );

  H264AVCDecoder *getH264AVCDecoder() const { return m_pcH264AVCDecoder; } //JVT-S036 lsj
  ErrVal destroy    ();
  ErrVal init       (Bool bOpenTrace, DecoderParameter* Dec_Param); 


  NalUnitParser* getNalUnitParser() const {return m_pcNalUnitParser;}

  //JVT-V054
  UInt* getViewCodingOrder();

  ErrVal uninit     ( Bool bCloseTrace );
  Bool	DecideDecodeView();             //SEI  
  Bool getActiveViewFlag( UInt ViewId );//SEI  
  ErrVal process    ( PicBuffer*        pcPicBuffer,
                      PicBufferList&    rcPicBufferOutputList,
                      PicBufferList&    rcPicBufferUnusedList,
                      PicBufferList&    rcPicBufferReleaseList );
  ErrVal initPacket ( BinDataAccessor*  pcBinDataAccessor,
	                    UInt&             ruiNalUnitType,
	                    UInt&             uiMbX,
	                    UInt&             uiMbY,
	                    UInt&             uiSize
						//,UInt&				uiNonRequiredPic //NonRequired JVT-Q066
                        //JVT-P031
	                    ,Bool              bPreParseHeader //FRAG_FIX
	                    , Bool			bConcatenated //FRAG_FIX_3
                      ,Bool&             rbStartDecoding,
                      UInt&             ruiStartPos,
                      UInt&             ruiEndPos,
                      Bool&              bFragmented,
                      Bool&              bDiscardable
                      //~JVT-P031
                      ); 

//JVT-S036  start
  ErrVal initPacketSuffix( BinDataAccessor*  pcBinDataAccessor,
								                  UInt&             ruiNalUnitType,
								         		  Bool             bPreParseHeader, 
								                  Bool			bConcatenated, 
												  Bool&			 rbStarDecoding
												  ,CreaterH264AVCDecoder*   pcH264AVCDecoder
												  ,Bool&		SuffixEnable
						 ); 
//JVT-S036  end

  //JVT-P031
  ErrVal initPacket ( BinDataAccessor*  pcBinDataAccessor);
  Void decreaseNumOfNALInAU();
  Void    setDependencyInitialized(Bool b);
  UInt    getNumOfNALInAU();
  Void    initNumberOfFragment();
  //~JVT-P031
  Void    setFGSRefInAU(Bool &b); //JVT-T054
  ErrVal  checkSliceLayerDependency ( BinDataAccessor*  pcBinDataAccessor,
                                      Bool&             bFinishChecking );

  UInt isNonRequiredPic();	//NonRequired JVT-Q066	
  Bool isRedundantPic();  // JVT-Q054 Red. Picture
  ErrVal  checkRedundantPic();  // JVT-Q054 Red. Picture

//	TMM_EC {{
  ErrVal  checkSliceGap ( BinDataAccessor*  pcBinDataAccessor,
                          MyList<BinData*>&	cVirtualSliceList );
	ErrVal	setec( UInt uiErrorConceal);
//  TMM_EC }}

	Void setAVCFlag ( Bool aFlag ) { UnitAVCFlag = aFlag; } //JVT-S036 

  Void	  RoiDecodeInit();

protected:
  ErrVal xCreateDecoder();

protected:
  H264AVCDecoder*         m_pcH264AVCDecoder;
  RQFGSDecoder*           m_pcRQFGSDecoder;
//  DecodedPicBuffer*       m_apcDecodedPicBuffer     [MAX_LAYERS];
  //MCTFDecoder*            m_apcMCTFDecoder          [MAX_LAYERS];
  FrameMng*               m_pcFrameMng;
  ParameterSetMng*        m_pcParameterSetMng;
  PocCalculator*          m_apcPocCalculator        [MAX_LAYERS];
  SliceReader*            m_pcSliceReader;
  NalUnitParser*          m_pcNalUnitParser;
  SliceDecoder*           m_pcSliceDecoder;
  ControlMngH264AVCDecoder*  m_pcControlMng;
  BitReadBuffer*          m_pcBitReadBuffer;
  UvlcReader*             m_pcUvlcReader;
  MbParser*               m_pcMbParser;
  LoopFilter*             m_pcLoopFilter;
  MbDecoder*              m_pcMbDecoder;
  Transform*              m_pcTransform;
  IntraPrediction*        m_pcIntraPrediction;
  MotionCompensation*     m_pcMotionCompensation;
  YuvBufferCtrl*          m_apcYuvFullPelBufferCtrl [MAX_LAYERS];
  QuarterPelFilter*       m_pcQuarterPelFilter;
  CabacReader*            m_pcCabacReader;
  SampleWeighting*        m_pcSampleWeighting;
  ReconstructionBypass*   m_pcReconstructionBypass;

  Bool					  UnitAVCFlag;    //JVT-S036 
};







struct PacketDescription
{
  Bool  ParameterSet;
  Bool  Scalable;
  UInt  Layer;
//SEI {
  UInt  ViewId;
  Bool  bSvcMvcFlag;
  Bool  bAnchorPicFlag;
//SEI }
  UInt  Level;
  UInt  FGSLayer;
  Bool  ApplyToNext;
  UInt  NalUnitType; 
  UInt  SPSid;
  UInt  PPSid;
  UInt  SPSidRefByPPS[256];
  //{{Quality level estimation and modified truncation- JVTO044 and m12007
  //France Telecom R&D-(nathalie.cammas@francetelecom.com)
  UInt auiDeltaBytesRateOfLevelQL[MAX_NUM_RD_LEVELS];
  UInt auiQualityLevelQL[MAX_NUM_RD_LEVELS];
  UInt uiNumLevelsQL;
  //}}Quality level estimation and modified truncation- JVTO044 and m12007
  UInt uiPId;
  Bool bDiscardable;//JVT-P031
  Bool bFragmentedFlag;//JVT-P031
  UInt NalRefIdc;

  //-- 2006.0604
  UInt uiFirstMb;
  Bool  bEnableQLTruncation; //JVT-T054
};



class H264AVCDECODERLIB_API H264AVCPacketAnalyzer
{
protected:
	H264AVCPacketAnalyzer();
	virtual ~H264AVCPacketAnalyzer();

public:
  static ErrVal create  ( H264AVCPacketAnalyzer*&  rpcH264AVCPacketAnalyzer );
  ErrVal        destroy ();
  ErrVal        init    ();
  ErrVal        uninit  ();
  ErrVal        process ( BinData*              pcBinData,
                          PacketDescription&    rcPacketDescription,
                          SEI::SEIMessage*&     pcScalableSEIMessage );
  ErrVal	      processSEIAndMVC ( BinData*				pcBinData,	SEI::ViewScalabilityInfoSei*&		pcSEIMessage );//SEI  //fix Nov. 30
  ErrVal        isMVCProfile( BinData*				pcBinData, Bool & b);// fix Nov. 30 
  SEI::NonRequiredSei*	getNonRequiredSEI()	{return m_pcNonRequiredSEI;}
  UInt					getNonRequiredSeiFlag() { return m_uiNonRequiredSeiFlag;}

  int m_uiNum_layers; //
  int m_ID_ROI[MAX_SCALABLE_LAYERS];
  int m_ID_Dependency[MAX_SCALABLE_LAYERS];
  int m_silceIDOfSubPicLayer[MAX_SCALABLE_LAYERS];
  int m_layer_id;//


  // ROI ICU/ETRI DS
  UInt Num_Related_ROI[MAX_NUM_LAYER]; 
  UInt m_uiNumSliceGroupsMinus1;
  UInt addrFirstMB;
  UInt uiaAddrFirstMBofROIs[256][MAX_ROI_NUM];  
  UInt uiaAddrLastMBofROIs[256][MAX_ROI_NUM];  


protected:
  ErrVal        xCreate ();

protected:
  BitReadBuffer*    m_pcBitReadBuffer;
  UvlcReader*       m_pcUvlcReader;
  NalUnitParser*    m_pcNalUnitParser;
  UInt              m_auiDecompositionStages[MAX_LAYERS];
  UInt              m_uiStdAVCOffset;

/*  UInt              m_uiTemporalLevelList[1 << PRI_ID_BITS];
  UInt              m_uiDependencyIdList [1 << PRI_ID_BITS];
  UInt              m_uiQualityLevelList [1 << PRI_ID_BITS];
JVT-S036  */
  SEI::NonRequiredSei*  m_pcNonRequiredSEI;
  UInt					m_uiNonRequiredSeiFlag;
  UInt					m_uiPrevPicLayer;
  UInt					m_uiCurrPicLayer;

  Bool					m_bAVCCompatible;//BUG FIX Kai Zhang
};



H264AVC_NAMESPACE_END


#endif // !defined(AFX_CREATERH264AVCDECODER_H__0366BFA9_45D9_4834_B404_8DE3914C1E58__INCLUDED_)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
狠狠狠色丁香婷婷综合激情| 欧美色男人天堂| 91香蕉视频污| 91精品国产麻豆国产自产在线| 日韩免费一区二区三区在线播放| 欧美精品一区二区三区四区 | 国产精品高潮呻吟| 亚洲一区二区在线免费看| 人人爽香蕉精品| 成人黄色小视频| 欧美日韩国产高清一区二区三区 | 一区二区成人在线| 国产老女人精品毛片久久| 欧美自拍偷拍一区| 精品国产免费视频| 亚洲超碰精品一区二区| 国产成人av电影在线播放| 欧美乱妇15p| 中文字幕视频一区| 激情图片小说一区| 欧美电影影音先锋| 国产精品第四页| 国产一区在线精品| 制服丝袜亚洲播放| 一区二区三区欧美在线观看| 成人午夜av在线| 日本在线观看不卡视频| 色丁香久综合在线久综合在线观看| 精品国产一区二区国模嫣然| 欧洲精品一区二区三区在线观看| 国产精品三级视频| 国产高清不卡一区| 日韩精品一区二区三区中文精品| 亚洲国产视频网站| 欧美影视一区在线| 亚洲人吸女人奶水| 成人性色生活片免费看爆迷你毛片| 日韩一区二区在线观看视频播放| 亚洲国产欧美日韩另类综合| 91激情在线视频| 一区二区三区产品免费精品久久75| 9i看片成人免费高清| 中文字幕一区在线观看| gogogo免费视频观看亚洲一| 1024精品合集| 日本道精品一区二区三区| 亚洲一区二区高清| 欧美一级生活片| 国产一区二区三区| 亚洲国产精品精华液2区45| 国产a视频精品免费观看| 国产色一区二区| 日本韩国精品在线| 日本特黄久久久高潮| 日韩免费高清av| 成人黄页毛片网站| 亚洲高清在线精品| 日韩精品一区二区三区在线播放| 精品一区二区三区蜜桃| 亚洲欧洲在线观看av| 678五月天丁香亚洲综合网| 六月丁香婷婷久久| 一区免费观看视频| 欧美一区二区三区思思人| 国产黄色91视频| 亚洲高清一区二区三区| 久久美女高清视频| 欧美探花视频资源| 国产v日产∨综合v精品视频| 日本免费在线视频不卡一不卡二| 日本一区二区三区免费乱视频| 91国偷自产一区二区三区观看| 久久er精品视频| 一区二区三区在线免费视频 | 韩国欧美一区二区| 午夜精品一区二区三区免费视频 | 紧缚奴在线一区二区三区| 亚洲成人免费观看| 亚洲欧洲av一区二区三区久久| 日韩美女天天操| 欧美日韩国产电影| 91麻豆精东视频| 成人毛片视频在线观看| 国产精品99久久久久久似苏梦涵| 亚洲成年人网站在线观看| 亚洲一二三四在线| 亚洲激情自拍偷拍| 国产成人aaaa| 麻豆精品一区二区三区| 天堂va蜜桃一区二区三区漫画版| 一区二区三区免费| 一区二区三区丝袜| 一区二区日韩电影| 亚洲一区二区三区自拍| 亚洲mv大片欧洲mv大片精品| 亚洲综合精品久久| 亚洲欧美另类图片小说| 欧美一区三区二区| 91精彩视频在线观看| 成人免费视频网站在线观看| 国产精品一区二区x88av| 视频一区在线播放| 亚洲一区二区三区四区在线观看| 亚洲男同1069视频| 亚洲综合一区二区三区| 亚洲高清免费观看高清完整版在线观看| 中文成人av在线| 日韩毛片精品高清免费| 亚洲日本免费电影| 亚洲女女做受ⅹxx高潮| 亚洲一区影音先锋| 午夜精品免费在线观看| 日韩不卡一二三区| 老司机一区二区| 丁香婷婷综合网| 色婷婷av一区二区三区软件| 在线观看亚洲精品视频| 欧美一激情一区二区三区| 久久中文字幕电影| 亚洲欧美综合色| 亚洲一区二区三区影院| 天天综合色天天综合色h| 国产精品一二三区| 99久久99久久免费精品蜜臀| 欧美系列一区二区| 日韩天堂在线观看| 亚洲欧洲av在线| 亚洲欧美日韩国产手机在线 | 国产乱人伦偷精品视频不卡| 91亚洲资源网| 精品免费国产一区二区三区四区| 国产精品美日韩| 青娱乐精品视频在线| 91免费在线看| 欧美草草影院在线视频| 亚洲精品va在线观看| 精品一区二区三区视频| 一本色道亚洲精品aⅴ| 26uuu国产一区二区三区| 亚洲国产美女搞黄色| 成人一区二区视频| 欧美白人最猛性xxxxx69交| 最近中文字幕一区二区三区| 韩国女主播成人在线观看| 欧美一区二区三区日韩| 国产精品情趣视频| 国产成人在线影院| 日韩精品一区二区三区视频 | 亚洲第一成年网| 色综合久久久久| 久久久久久久久久久久久女国产乱| 午夜精品久久久久久久久久久| 99久久伊人精品| 国产精品久久久久久户外露出 | 成人激情校园春色| 欧美成人伊人久久综合网| 五月综合激情日本mⅴ| 欧美日韩一区二区电影| 亚洲综合成人在线视频| 欧美吻胸吃奶大尺度电影| 亚洲午夜久久久久久久久久久| 欧美在线你懂的| 日韩专区在线视频| 9191久久久久久久久久久| 婷婷久久综合九色国产成人| 3d动漫精品啪啪1区2区免费| 亚洲成人免费在线| 精品久久免费看| 国产精品一区一区三区| 国产精品福利影院| 日本高清无吗v一区| 午夜电影久久久| 欧美mv日韩mv国产网站| 国产99久久久国产精品| 亚洲你懂的在线视频| 欧美精品三级日韩久久| 免费看日韩精品| 欧美国产视频在线| 一本大道久久精品懂色aⅴ | 久久综合网色—综合色88| 粉嫩av一区二区三区| 亚洲成av人片在线| 久久免费视频色| 欧美亚洲动漫另类| 爽好久久久欧美精品| 久久久www免费人成精品| 欧美一区二区三区思思人| 美国十次综合导航| 亚洲国产精品一区二区久久恐怖片| 国产日韩精品久久久| 久久综合久色欧美综合狠狠| 在线日韩一区二区| 国产成人av福利| 六月婷婷色综合| 亚洲一区在线看| 国产精品久久久久一区二区三区共| 欧美电视剧免费全集观看| jlzzjlzz亚洲日本少妇| 亚洲另类在线一区| 欧美国产精品一区二区|