www.pudn.com > filterasfmuxer_2008_01_23.rar > CAudioInputPin.cpp


// 
// CAudioInputPin.cpp 
// 
/** 
 ** Copyright (C) 2005 EnjoyView Inc., all rights reserved. 
 **           Your View, Our Passion. Just Enjoy It! 
 ** 
 **            http://spaces.msn.com/members/jemylu 
 ** 
 **/ 
 
/*************************************************************************/ 
 
#include  
#include "CAudioInputPin.h" 
#include "CFilterASFMuxer.h" 
 
//////////////////////////////////////////////////////////////////////////// 
CAudioInputPin::CAudioInputPin(CFilterASFMuxer *pFilter , HRESULT *phr,  
							   LPCWSTR pPinName) : 
CXRenderedPin(pFilter, phr, pPinName, NAME("Audio Input")) 
{ 
} 
 
CAudioInputPin::~CAudioInputPin() 
{ 
} 
 
HRESULT CAudioInputPin::ReceiveXSample(IMediaSample * pSample) 
{ 
	return mFilter->ReceiveAudio(pSample); 
} 
 
HRESULT CAudioInputPin::CheckMediaType(const CMediaType * inMediaType) 
{ 
	CheckPointer(inMediaType,E_POINTER); 
	 
	if (inMediaType->majortype == MEDIATYPE_Audio && 
		inMediaType->formattype == FORMAT_WaveFormatEx) 
	{ 
		return S_OK; 
	} 
	return E_FAIL; 
} 
 
HRESULT CAudioInputPin::CompleteConnect(IPin *pReceivePin) 
{ 
	HRESULT hr = mFilter->XCompleteConnect(PIN_Audio); 
	if (FAILED(hr))  
	{ 
		return hr; 
	} 
 
	return CRenderedInputPin::CompleteConnect(pReceivePin); 
}