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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? createrh264avcdecoder.cpp

?? JMVM MPEG MVC/3DAV 測試平臺(tái) 國際通用標(biāo)準(zhǔn)
?? CPP
?? 第 1 頁 / 共 3 頁
字號(hào):
                                          m_pcControlMng ) );
  RNOK( m_pcMbParser              ->init( m_pcTransform  ) );
  RNOK( m_pcLoopFilter            ->init( m_pcControlMng , m_pcReconstructionBypass  ) );
     
  RNOK( m_pcIntraPrediction       ->init() );
  RNOK( m_pcMotionCompensation    ->init( m_pcQuarterPelFilter,
                                          m_pcTransform,
                                          m_pcSampleWeighting ) );
  RNOK( m_pcMbDecoder             ->init( m_pcTransform,
                                          m_pcIntraPrediction,
                                          m_pcMotionCompensation,
                                          m_pcFrameMng ) );

  RNOK( m_pcH264AVCDecoder           ->init( //m_apcMCTFDecoder,
                                          m_pcSliceReader,
                                          m_pcSliceDecoder,
                                          m_pcRQFGSDecoder,
                                          m_pcFrameMng,
                                          m_pcNalUnitParser,
                                          m_pcControlMng,
                                          m_pcLoopFilter,
                                          m_pcUvlcReader,
                                          m_pcParameterSetMng,
                                          m_apcPocCalculator[0],
                                          m_pcMotionCompensation) );

  RNOK( m_pcRQFGSDecoder          ->init( m_apcYuvFullPelBufferCtrl,
                                          m_pcTransform,
                                          m_pcMbParser,
                                          m_pcMbDecoder,
                                          m_pcUvlcReader,
                                          m_pcCabacReader) );
  
  RNOK( m_pcReconstructionBypass  ->init() );

  for( UInt uiLayer = 0; uiLayer < MAX_LAYERS; uiLayer++ )
  {
    /*RNOK( m_apcDecodedPicBuffer[uiLayer]->init ( m_apcYuvFullPelBufferCtrl [uiLayer],
                                                 uiLayer ) );*/
    /*RNOK( m_apcMCTFDecoder     [uiLayer]->init ( m_pcH264AVCDecoder,
                                                 m_pcSliceReader, 
                                                 m_pcSliceDecoder, 
                                                 m_pcRQFGSDecoder,
                                                 m_pcNalUnitParser, 
                                                 m_pcControlMng, 
                                                 m_pcLoopFilter, 
                                                 m_pcUvlcReader, 
                                                 m_pcParameterSetMng, 
                                                 m_apcPocCalculator        [uiLayer],
                                                 m_apcYuvFullPelBufferCtrl [uiLayer],
                                                 m_apcDecodedPicBuffer     [uiLayer],
                                                 m_pcMotionCompensation,
                                                 m_pcQuarterPelFilter ) );*/
  }

  RNOK( m_pcControlMng            ->init( m_pcFrameMng,
                                          m_pcParameterSetMng,
                                          m_apcPocCalculator,
                                          m_pcSliceReader,
                                          m_pcNalUnitParser,
                                          m_pcSliceDecoder,
                                          m_pcBitReadBuffer,
                                          m_pcUvlcReader,
                                          m_pcMbParser,
                                          m_pcLoopFilter,
                                          m_pcMbDecoder,
                                          m_pcTransform,
                                          m_pcIntraPrediction,
                                          m_pcMotionCompensation,
                                          m_apcYuvFullPelBufferCtrl,
                                          m_pcQuarterPelFilter,
                                          m_pcCabacReader,
                                          m_pcSampleWeighting,
                                          //m_apcMCTFDecoder,
                                          m_pcH264AVCDecoder ) );


  return Err::m_nOK;
}




ErrVal CreaterH264AVCDecoder::uninit( Bool bCloseTrace )
{
  RNOK( m_pcSampleWeighting       ->uninit() );
  RNOK( m_pcQuarterPelFilter      ->uninit() );
  RNOK( m_pcFrameMng              ->uninit() );
  RNOK( m_pcParameterSetMng       ->uninit() );
  RNOK( m_pcSliceDecoder          ->uninit() );
  RNOK( m_pcSliceReader           ->uninit() );
  RNOK( m_pcBitReadBuffer         ->uninit() );
  RNOK( m_pcUvlcReader            ->uninit() );
  RNOK( m_pcMbParser              ->uninit() );
  RNOK( m_pcLoopFilter            ->uninit() );
  RNOK( m_pcMbDecoder             ->uninit() );
  RNOK( m_pcIntraPrediction       ->uninit() );
  RNOK( m_pcMotionCompensation    ->uninit() );
  RNOK( m_pcCabacReader           ->uninit() );
  RNOK( m_pcH264AVCDecoder        ->uninit() );
  RNOK( m_pcRQFGSDecoder          ->uninit() );
  RNOK( m_pcControlMng            ->uninit() );
  RNOK( m_pcReconstructionBypass  ->uninit() );

  for( UInt uiLayer = 0; uiLayer < MAX_LAYERS; uiLayer++ )
  {
    //RNOK( m_apcDecodedPicBuffer    [uiLayer] ->uninit() );
    //RNOK( m_apcMCTFDecoder         [uiLayer] ->uninit() );
    RNOK( m_apcYuvFullPelBufferCtrl[uiLayer] ->uninit() );
  }


  if( bCloseTrace )
  {
    CLOSE_DTRACE;
  }

  return Err::m_nOK;
}



















H264AVCPacketAnalyzer::H264AVCPacketAnalyzer()
: m_pcBitReadBuffer       ( NULL )
, m_pcUvlcReader          ( NULL )
, m_pcNalUnitParser       ( NULL )
, m_pcNonRequiredSEI	  ( NULL )
, m_uiStdAVCOffset         ( 0 )
, m_bAVCCompatible			(false)//BUG FIX Kai Zhang
{
	for(int iLayer=0;iLayer<MAX_SCALABLE_LAYERS;iLayer++)
	{
		m_silceIDOfSubPicLayer[iLayer] = -1;
	}
}



H264AVCPacketAnalyzer::~H264AVCPacketAnalyzer()
{
}



ErrVal
H264AVCPacketAnalyzer::process( BinData*            pcBinData,
                                PacketDescription&  rcPacketDescription,
                                SEI::SEIMessage*&   pcScalableSEIMessage )
{
 
			
  pcScalableSEIMessage      = 0;
  UChar       ucByte        = (pcBinData->data())[0];
  NalUnitType eNalUnitType  = NalUnitType ( ucByte  & 0x1F );
  NalRefIdc   eNalRefIdc    = NalRefIdc   ( ucByte >> 5 );
  UInt        uiLayer       = 0;
  UInt        uiLevel       = 0;
  UInt        uiFGSLayer    = 0;
  Bool        bApplyToNext  = false;
  //{{Variable Lengh NAL unit header data with priority and dead substream flag
  //France Telecom R&D- (nathalie.cammas@francetelecom.com)
  UInt		  uiSimplePriorityId = 0;
  Bool		  bDiscardableFlag = false;
  Bool		  bReservedZeroBit = false; //JVT-S036 
//SEI {
  Bool		  bSvcMvcFlag = false;
  Bool		  bAnchorPicFlag = false;
  UInt		  uiViewId = 0;
//SEI 
  Bool bFragmentedFlag = false; //JVT-P031
  UInt uiFragmentOrder = 0; //JVT-P031
  Bool bLastFragmentFlag = false; //JVT-P031
  rcPacketDescription.uiNumLevelsQL = 0;
  
	for(UInt ui = 0; ui < MAX_NUM_RD_LEVELS; ui++)
	{
		rcPacketDescription.auiDeltaBytesRateOfLevelQL[ui] = 0;
		rcPacketDescription.auiQualityLevelQL[ui] = 0;
	}
  //}}Quality level estimation and modified truncation- JVTO044 and m12007
  Bool        bScalable     = ( eNalUnitType == NAL_UNIT_CODED_SLICE_IDR_SCALABLE ||
                                eNalUnitType == NAL_UNIT_CODED_SLICE_SCALABLE       );
  UInt        uiSPSid       = 0;
  UInt        uiPPSid       = 0;
  Bool        bParameterSet = ( eNalUnitType == NAL_UNIT_SPS                      ||
                                eNalUnitType == NAL_UNIT_PPS                        );


  if( eNalUnitType == NAL_UNIT_CODED_SLICE_SCALABLE     ||
      eNalUnitType == NAL_UNIT_CODED_SLICE_IDR_SCALABLE   )
  {
    //{{Variable Lengh NAL unit header data with priority and dead substream flag
    //France Telecom R&D- (nathalie.cammas@francetelecom.com)
    ucByte             = (pcBinData->data())[1];
	  uiSimplePriorityId = ( ucByte >> 2);
	  bDiscardableFlag	 = ( ucByte >> 1) & 1;
 //JVT-S036  start
//SEI {
	bSvcMvcFlag = ( ( ucByte >> 7 ) !=0);
	if( bSvcMvcFlag )
	{
	  uiSimplePriorityId = ( ucByte >> 1 ) & 63;
	  uiLevel = ( ucByte ) & 1;

	  ucByte  = pcBinData->data()[2];
	  uiLevel = uiLevel*4 + (ucByte >> 6);
	  bAnchorPicFlag = ( ucByte >> 5 ) & 1;
	  uiViewId = ( ucByte ) & 31;

	  ucByte  = pcBinData->data()[3];
	  uiViewId = uiViewId * (2^5) + ( ucByte >> 3 );
	}
	else
	{
	  uiSimplePriorityId = ( ucByte >> 1) & 63;
	  bDiscardableFlag	 = ( ucByte ) & 1;
	  ucByte      = pcBinData->data()[2];
	  bReservedZeroBit   = ( ucByte     ) & 1; 
  	  uiLevel     = ( ucByte >> 4 ) & 7;
	  uiLayer     = ( ucByte >> 1 ) & 7;
	  uiFGSLayer  = ( ucByte      ) & 1;
	  ucByte      = pcBinData->data()[3];
	  uiFGSLayer  = uiFGSLayer*2 + ( ucByte >> 7);
	}
/*	  bReservedZeroBit   = ( ucByte     ) & 1; 
	 
		    ucByte      = pcBinData->data()[2];
		    uiLevel     = ( ucByte >> 5 );
		    uiLayer     = ( ucByte >> 2 ) & 7;
		    uiFGSLayer  = ( ucByte      ) & 3;*/
//SEI }
	 /* }
	  else
	  {
        // Look up simple priority ID in mapping table (J. Ridge, Y-K. Wang @ Nokia)
        uiLevel    = m_uiTemporalLevelList[uiSimplePriorityId];
        uiLayer    = m_uiDependencyIdList [uiSimplePriorityId];
        uiFGSLayer = m_uiQualityLevelList [uiSimplePriorityId];
	  }*/
//JVT-S036  end
    //}}Variable Lengh NAL unit header data with priority and dead substream flag
  }
  else if( eNalUnitType == NAL_UNIT_CODED_SLICE     ||
           eNalUnitType == NAL_UNIT_CODED_SLICE_IDR   )
  {
    uiLevel     = ( eNalRefIdc > 0 ? 0 : 1+m_uiStdAVCOffset);
	m_bAVCCompatible=true;//BUG FIX Kai Zhang
  }
  else if( eNalUnitType == NAL_UNIT_SEI )
  {
    ULong*  pulData = (ULong*)( pcBinData->data() + 1 );
    UInt    uiSize  =     8 * ( pcBinData->size() - 1 ) - 1;
    RNOK( m_pcBitReadBuffer->initPacket( pulData, uiSize ) );

    uiSize = pcBinData->byteSize();
    BinData cBinData( new UChar[uiSize], uiSize );
    memcpy( cBinData.data(), pcBinData->data(), uiSize );
    BinDataAccessor cBinDataAccessor;
    cBinData.setMemAccessor( cBinDataAccessor );

    UInt uiNumBytesRemoved; //FIX_FRAG_CAVLC
    RNOK( m_pcNalUnitParser->initNalUnit( &cBinDataAccessor, NULL, uiNumBytesRemoved ) ); //FIX_FRAG_CAVLC
    SEI::MessageList cMessageList;
    //RNOK( SEI::read( m_pcUvlcReader, cMessageList ) );

	/* SEI JVT-W060 */
	RNOK( SEI::read( m_pcUvlcReader, cMessageList /*, Save_NumViewsMinus1*/ ) ); // Nov. 30
	/* ~SEI JVT-W060 */
   
    SEI::MessageList::iterator iter = cMessageList.begin();
    while( ! cMessageList.empty() )
    {
      SEI::SEIMessage* pcSEIMessage = cMessageList.popBack();

      switch( pcSEIMessage->getMessageType() )
      {
	  case SEI::VIEW_SCALABILITY_INFO_SEI:
		{
		 
		  pcScalableSEIMessage = pcSEIMessage;

          bApplyToNext = true;
          break;
        }
      case SEI::SUB_SEQ_INFO:
        {
          SEI::SubSeqInfo* pcSubSeqInfo = (SEI::SubSeqInfo*) pcSEIMessage;
          uiLevel       = pcSubSeqInfo->getSubSeqLayerNum();
          uiLayer       = 0;
          bApplyToNext  = true;
          delete pcSEIMessage;
          break;
        }
      case SEI::SCALABLE_SEI:
			{
				uiLevel = 0;
				uiLayer = 0;
				pcScalableSEIMessage = pcSEIMessage;
				{
					//====set parameters used for further parsing =====
					SEI::ScalableSei* pcSEI		= (SEI::ScalableSei*)pcSEIMessage;
					UInt uiNumScalableLayers  = pcSEI->getNumLayersMinus1() + 1;
					for(UInt uiIndex = 0; uiIndex < uiNumScalableLayers; uiIndex++ )
					{
						if( pcSEI->getDependencyId( uiIndex ) == 0 )
						{
// BUG_FIX liuhui{
							m_uiStdAVCOffset = pcSEI->getTemporalLevel( uiIndex );
							pcSEI->setStdAVCOffset( m_uiStdAVCOffset );
							break;
// BUG_FIX liuhui}
						}
						else
							break;
					}
				}

			    SEI::ScalableSei* pcSEI		= (SEI::ScalableSei*)pcSEIMessage;
			    m_uiNum_layers = pcSEI->getNumLayersMinus1() + 1;   		
			    for(int i=0; i< m_uiNum_layers; i++)
				{				  
				  m_ID_ROI[i] = pcSEI->getRoiId(i);
				  m_ID_Dependency[i] = pcSEI->getDependencyId(i);
				}
				break;
			}

		case SEI::MOTION_SEI:
		  {
			  SEI::MotionSEI* pcSEI           = (SEI::MotionSEI*)pcSEIMessage;

			  m_silceIDOfSubPicLayer[m_layer_id] = pcSEI->m_slice_group_id[0];
			  break;
		  }

// JVT-S080 LMI {
	  case SEI::SCALABLE_SEI_LAYERS_NOT_PRESENT:
      case SEI::SCALABLE_SEI_DEPENDENCY_CHANGE:
		  {
			  pcScalableSEIMessage = pcSEIMessage;
			  break;
		  }
// JVT-S080 LMI }
      case SEI::SUB_PIC_SEI:
		  {
			  SEI::SubPicSei* pcSEI    = (SEI::SubPicSei*)pcSEIMessage;
			  m_layer_id					= pcSEI->getLayerId();
			  bApplyToNext  = true;
              break;
		  }
      //{{Quality level estimation and modified truncation- JVTO044 and m12007
      //France Telecom R&D-(nathalie.cammas@francetelecom.com)
      case SEI::QUALITYLEVEL_SEI:
		  {
			UInt uiNum = 0;
			UInt uiDeltaBytesRateOfLevel = 0;
			UInt uiQualityLevel = 0;
			SEI::QualityLevelSEI* pcSEI           = (SEI::QualityLevelSEI*)pcSEIMessage;
			uiNum = pcSEI->getNumLevel();
			rcPacketDescription.uiNumLevelsQL = uiNum;
			for(UInt ui = 0; ui < uiNum; ui++)
			{
				uiQualityLevel = pcSEI->getQualityLevel(ui);
				uiDeltaBytesRateOfLevel = pcSEI->getDeltaBytesRateOfLevel(ui);
				rcPacketDescription.auiQualityLevelQL[ui] = uiQualityLevel;
				rcPacketDescription.auiDeltaBytesRateOfLevelQL[ui] = uiDeltaBytesRateOfLevel;
			}
      uiLayer = pcSEI->getDependencyId();
			bApplyToNext = true;
			break;
		  }
      //}}Quality level estimation and modified truncation- JVTO044 and m12007
  	  case SEI::NON_REQUIRED_SEI: 
		  {
			  m_pcNonRequiredSEI = (SEI::NonRequiredSei*) pcSEIMessage;
			  m_uiNonRequiredSeiFlag = 1;  
			  break;
		  }
//SEI {
      case SEI::SCALABLE_NESTING_SEI:
      {
        Bool bAllPicturesInAuFlag;
        UInt uiNumPicturesMinus1;
        UInt *puiPicId, uiTemporalId;
        SEI::ScalableNestingSei* pcSEI = (SEI::ScalableNestingSei*)pcSEIMessage;
        bAllPicturesInAuFlag = pcSEI->getAllPicturesInAuFlag();
        if( bAllPicturesInAuFlag == 0 )
        {
          uiNumPicturesMinus1 = pcSEI->getNumPicturesMinus1();
          puiPicId = new UInt[uiNumPicturesMinus1+1];
          for( UInt uiIndex = 0; uiIndex <= uiNumPicturesMinus1; uiIndex++ )
          {
            puiPicId[uiIndex] = pcSEI->getPicId(uiIndex);
          }

		  uiTemporalId = pcSEI->getTemporalId();

          delete puiPicId;
        }
              bApplyToNext = true;
        break;
      }

	  case SEI::ACTIVE_VIEWINFO_SEI:
      {
		Bool bOpPresentFlag;
        UInt uiOperationPointId;
		UInt uiNumActiveViewsMinus1;
		UInt *uiViewId;

		SEI::ActiveViewInfoSei* pcSEI = (SEI::ActiveViewInfoSei*)pcSEIMessage;
		bOpPresentFlag = pcSEI->getOpPresentFlag();
        if( bOpPresentFlag )

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区日韩二区| 国产精品麻豆久久久| 99久久伊人久久99| 天天射综合影视| 中文字幕在线观看一区二区| 欧美精品色综合| 成人国产精品免费观看动漫| 免费高清在线一区| 亚洲午夜久久久久久久久电影院 | 亚洲男人的天堂av| 久久精品欧美一区二区三区麻豆| 欧美在线视频你懂得| 成人av动漫在线| 韩国欧美国产一区| 丝袜国产日韩另类美女| 中文字幕亚洲精品在线观看| 精品剧情v国产在线观看在线| 欧美日韩在线一区二区| www.日韩av| 国产精品一级在线| 极品美女销魂一区二区三区 | 欧美aaaaaa午夜精品| 玉足女爽爽91| 国产精品初高中害羞小美女文| 日韩免费性生活视频播放| 欧美视频第二页| 色呦呦网站一区| 99久久综合国产精品| 成人三级伦理片| 国产河南妇女毛片精品久久久| 蜜臀av一区二区三区| 亚洲二区视频在线| 亚洲在线视频网站| 亚洲图片欧美视频| 亚洲成人黄色小说| 亚洲一区二区欧美日韩| 亚洲综合图片区| 亚洲一区二区在线免费观看视频| 亚洲欧美日韩久久| 亚洲欧美乱综合| 亚洲国产视频直播| 亚洲成a人v欧美综合天堂| 亚洲综合网站在线观看| 亚洲一二三区视频在线观看| 亚洲高清在线精品| 日韩激情av在线| 美日韩一级片在线观看| 热久久一区二区| 韩国在线一区二区| 成人免费毛片aaaaa**| 97久久超碰精品国产| 日本韩国欧美国产| 欧美日韩一区二区三区免费看| 欧美视频完全免费看| 91精品国产综合久久小美女| 日韩欧美综合一区| wwww国产精品欧美| 国产精品美女一区二区在线观看| 国产精品免费aⅴ片在线观看| 综合在线观看色| 亚洲激情第一区| 日本不卡视频一二三区| 久久精品国产亚洲一区二区三区| 国产在线播放一区三区四| 国产成人综合自拍| 色婷婷久久久久swag精品 | 欧美va亚洲va香蕉在线| 国产日韩欧美在线一区| 亚洲欧洲av色图| 香蕉成人伊视频在线观看| 激情综合网最新| www..com久久爱| 欧美剧情片在线观看| 337p粉嫩大胆噜噜噜噜噜91av| 欧美极品另类videosde| 亚洲精品国产成人久久av盗摄| 午夜欧美一区二区三区在线播放| 麻豆高清免费国产一区| 成人看片黄a免费看在线| 欧美日韩一区二区三区不卡| 精品久久人人做人人爱| 亚洲欧美日韩一区二区| 免费人成黄页网站在线一区二区| 国产精品一卡二卡在线观看| 在线亚洲欧美专区二区| 日韩一区二区精品葵司在线| 日本一区二区成人在线| 亚洲bt欧美bt精品| 国产成人啪免费观看软件| 色婷婷亚洲综合| 久久综合九色综合欧美亚洲| 亚洲免费观看高清完整版在线观看熊 | 成人av在线一区二区三区| 欧美酷刑日本凌虐凌虐| 亚洲欧美综合另类在线卡通| 日韩中文欧美在线| 97se亚洲国产综合自在线| 日韩一区二区三| 一区二区三区自拍| 国产精品一区二区免费不卡| 欧美日韩视频在线观看一区二区三区| 久久久.com| 麻豆久久久久久久| 欧美性受xxxx黑人xyx性爽| 国产午夜精品一区二区三区视频| 天堂久久一区二区三区| 色综合天天综合色综合av| 久久久亚洲高清| 男女男精品网站| 欧美视频一二三区| 国产精品福利一区| 韩国精品久久久| 在线播放/欧美激情| 一区二区在线观看免费视频播放| 国产高清视频一区| 26uuu久久综合| 喷水一区二区三区| 欧美日韩中文字幕精品| 亚洲女人小视频在线观看| 国产91精品一区二区麻豆网站| 日韩欧美中文字幕精品| 天天综合天天做天天综合| 在线观看一区二区精品视频| 亚洲图片你懂的| 粉嫩在线一区二区三区视频| 久久久久九九视频| 国产一区三区三区| 久久亚洲影视婷婷| 国产剧情一区在线| 欧美精品一区二区三区蜜桃| 欧美a级理论片| 日韩欧美自拍偷拍| 久久精品国产秦先生| 日韩色在线观看| 美女网站一区二区| 日韩三级在线免费观看| 久久成人av少妇免费| 日韩精品一区二区三区在线播放| 免费看精品久久片| 欧美va在线播放| 国产精华液一区二区三区| 国产精品视频一二三| 成人高清在线视频| 日韩一区中文字幕| 91麻豆国产香蕉久久精品| 亚洲精品国产品国语在线app| 91久久奴性调教| 亚洲香蕉伊在人在线观| 91麻豆精品国产91久久久久久| 蜜桃精品在线观看| 26uuu亚洲综合色| 成人小视频在线观看| 18涩涩午夜精品.www| 欧美这里有精品| 奇米影视在线99精品| 日韩免费电影网站| 国产一区二区三区在线观看免费视频 | 日韩写真欧美这视频| 日韩精品乱码免费| 日韩欧美中文字幕公布| 久国产精品韩国三级视频| 精品国产不卡一区二区三区| 久久国产三级精品| 国产精品视频观看| 成人午夜电影久久影院| 亚洲女女做受ⅹxx高潮| 国产成人精品亚洲日本在线桃色| 国产欧美精品一区| 成人av网址在线观看| 亚洲欧美区自拍先锋| 99精品视频在线播放观看| 亚洲成人av中文| 日韩一级欧美一级| 国产在线一区观看| 国产日韩精品一区二区三区在线| 成人免费视频视频在线观看免费| 国产精品二三区| 在线观看视频欧美| 韩国成人在线视频| ...xxx性欧美| 欧美日韩大陆在线| 天天操天天色综合| 欧美激情一区二区三区四区| 99re亚洲国产精品| 亚洲高清中文字幕| 国产欧美日韩久久| 欧美三级电影网| 九九九精品视频| 国产嫩草影院久久久久| 欧美日韩三级在线| 激情五月播播久久久精品| 国产精品国产三级国产三级人妇| 欧美男同性恋视频网站| 国产精品自拍毛片| 伊人一区二区三区| 欧美日韩国产欧美日美国产精品| 国产69精品久久777的优势| 亚洲图片一区二区| 欧美韩国日本一区| 欧美一级高清片在线观看|