这篇教程C++ FreeMediaType函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中FreeMediaType函数的典型用法代码示例。如果您正苦于以下问题:C++ FreeMediaType函数的具体用法?C++ FreeMediaType怎么用?C++ FreeMediaType使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了FreeMediaType函数的25个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: IEnumMediaTypesImpl_Resetstatic HRESULT WINAPI IEnumMediaTypesImpl_Reset(IEnumMediaTypes * iface){ ULONG i; AM_MEDIA_TYPE amt; IEnumMediaTypesImpl *This = impl_from_IEnumMediaTypes(iface); TRACE("(%p)->()/n", iface); for (i = 0; i < This->enumMediaDetails.cMediaTypes; i++) FreeMediaType(&This->enumMediaDetails.pMediaTypes[i]); CoTaskMemFree(This->enumMediaDetails.pMediaTypes); i = 0; while (This->enumMediaFunction(This->basePin, i, &amt) == S_OK) i++; This->enumMediaDetails.cMediaTypes = i; This->enumMediaDetails.pMediaTypes = CoTaskMemAlloc(sizeof(AM_MEDIA_TYPE) * i); for (i = 0; i < This->enumMediaDetails.cMediaTypes; i++) { This->enumMediaFunction(This->basePin, i,&amt); if (FAILED(CopyMediaType(&This->enumMediaDetails.pMediaTypes[i], &amt))) { while (i--) FreeMediaType(&This->enumMediaDetails.pMediaTypes[i]); CoTaskMemFree(This->enumMediaDetails.pMediaTypes); return E_OUTOFMEMORY; } } This->currentVersion = This->mediaVersionFunction(This->basePin); This->uIndex = 0; return S_OK;}
开发者ID:mvardan,项目名称:ros-svn-mirror,代码行数:34,
示例2: ACMWrapper_SetMediaTypestatic HRESULT WINAPI ACMWrapper_SetMediaType(TransformFilter *tf, PIN_DIRECTION dir, const AM_MEDIA_TYPE * pmt){ ACMWrapperImpl* This = impl_from_TransformFilter(tf); MMRESULT res; TRACE("(%p)->(%i %p)/n", This, dir, pmt); if (dir != PINDIR_INPUT) return S_OK; /* Check root (GUID w/o FOURCC) */ if ((IsEqualIID(&pmt->majortype, &MEDIATYPE_Audio)) && (!memcmp(((const char *)&pmt->subtype)+4, ((const char *)&MEDIATYPE_Audio)+4, sizeof(GUID)-4)) && (IsEqualIID(&pmt->formattype, &FORMAT_WaveFormatEx))) { HACMSTREAM drv; WAVEFORMATEX *wfx = (WAVEFORMATEX*)pmt->pbFormat; AM_MEDIA_TYPE* outpmt = &This->tf.pmt; if (!wfx || wfx->wFormatTag == WAVE_FORMAT_PCM || wfx->wFormatTag == WAVE_FORMAT_EXTENSIBLE) return VFW_E_TYPE_NOT_ACCEPTED; FreeMediaType(outpmt); This->pWfIn = (LPWAVEFORMATEX)pmt->pbFormat; /* HACK */ /* TRACE("ALIGN = %d/n", pACMWrapper->pWfIn->nBlockAlign); */ /* pACMWrapper->pWfIn->nBlockAlign = 1; */ /* Set output audio data to PCM */ CopyMediaType(outpmt, pmt); outpmt->subtype.Data1 = WAVE_FORMAT_PCM; This->pWfOut = (WAVEFORMATEX*)outpmt->pbFormat; This->pWfOut->wFormatTag = WAVE_FORMAT_PCM; This->pWfOut->wBitsPerSample = 16; This->pWfOut->nBlockAlign = This->pWfOut->wBitsPerSample * This->pWfOut->nChannels / 8; This->pWfOut->cbSize = 0; This->pWfOut->nAvgBytesPerSec = This->pWfOut->nChannels * This->pWfOut->nSamplesPerSec * (This->pWfOut->wBitsPerSample/8); if (!(res = acmStreamOpen(&drv, NULL, This->pWfIn, This->pWfOut, NULL, 0, 0, 0))) { This->has = drv; TRACE("Connection accepted/n"); return S_OK; } else FIXME("acmStreamOpen returned %d/n", res); FreeMediaType(outpmt); TRACE("Unable to find a suitable ACM decompressor/n"); } TRACE("Connection refused/n"); return VFW_E_TYPE_NOT_ACCEPTED;}
开发者ID:AmesianX,项目名称:wine,代码行数:56,
示例3: msg_DbgCapturePin::~CapturePin(){#ifdef DEBUG_DSHOW msg_Dbg( p_input, "CapturePin::~CapturePin" );#endif for( size_t c=0; c<media_type_count; c++ ) { FreeMediaType(media_types[c]); } FreeMediaType(cx_media_type);}
开发者ID:cmassiot,项目名称:vlc-broadcast,代码行数:11,
示例4: ATLTRACESampleCapturePin::~SampleCapturePin(){#ifdef DEBUG_DSHOW ATLTRACE( "SampleCapturePin::~SampleCapturePin" );#endif for( size_t c=0; c<media_type_count; c++ ) { FreeMediaType(media_types[c]); } free(media_types); media_types = NULL; FreeMediaType(cx_media_type); DeleteCriticalSection(&m_mylock);}
开发者ID:mason105,项目名称:red5cpp,代码行数:14,
示例5: GetFrameSizeHRESULT __fastcall GetFrameSize(IPin* pPin, LONG* plWidth, LONG* plHeight){HRESULT hr; if(!pPin || !plWidth || !plHeight) return E_POINTER; *plWidth = *plHeight = 0; AM_MEDIA_TYPE mt; hr = pPin->ConnectionMediaType(&mt); if(SUCCEEDED(hr)) { if(FORMAT_VideoInfo==mt.formattype) { VIDEOINFOHEADER *pVih = reinterpret_cast<VIDEOINFOHEADER*>(mt.pbFormat); if(pVih) { *plWidth = pVih->bmiHeader.biWidth; *plHeight = pVih->bmiHeader.biHeight; } } else { hr = VFW_E_UNSUPPORTED_STREAM; } FreeMediaType(mt); } return hr;}
开发者ID:Erls-Corporation,项目名称:webinaria-source,代码行数:28,
示例6: _Tvoid CTextInfoForm::DoPinDetails(GraphStudio::Pin *pin, int level, int offset){ CString ofs, t, f; for (int i=0; i<offset; i++) ofs += _T(" "); AM_MEDIA_TYPE mt; HRESULT hr = pin->pin->ConnectionMediaType(&mt); if (SUCCEEDED(hr)) { GraphStudio::NameGuid(mt.majortype, f); t = _T("Major: ") + f; Echo(ofs+t); GraphStudio::NameGuid(mt.subtype, f); t = _T("Subtype: ") + f; Echo(ofs+t); // parse one level deeper if (level > 1) { DoMediaTypeDetails(&mt, level, offset+4); } GraphStudio::NameGuid(mt.formattype, f); t = _T("Format: ") + f; Echo(ofs+t); if (level > 2) { // parse format if (mt.formattype == FORMAT_WaveFormatEx) DoWaveFormatEx(&mt, level, offset); else if (mt.formattype == FORMAT_VideoInfo2) DoVideoInfo2(&mt, level, offset); else if (mt.formattype == FORMAT_VideoInfo) DoVideoInfo(&mt, level, offset); else if (mt.formattype == FORMAT_MPEG2_VIDEO) DoMPEG2VideoInfo(&mt, level, offset); } Echo(_T("")); FreeMediaType(mt); }}
开发者ID:CyberShadow,项目名称:graphstudio,代码行数:33,
示例7: InitCaptureGraphBuilderHRESULT CCaptureVideo::Open(int iDeviceID,int iPress){ HRESULT hr; hr = InitCaptureGraphBuilder(); if (FAILED(hr)){ return hr; } // Bind Device Filter. We know the device because the id was passed in if(!BindVideoFilter(iDeviceID, &m_pBF)) return S_FALSE; hr = m_pGB->AddFilter(m_pBF, L"Capture Filter"); // create a sample grabber hr = CoCreateInstance( CLSID_SampleGrabber, NULL, CLSCTX_INPROC_SERVER, IID_ISampleGrabber, (void**)&m_pGrabber ); if(FAILED(hr)){ return hr; } CComQIPtr< IBaseFilter, &IID_IBaseFilter > pGrabBase( m_pGrabber );//设置视频格式 AM_MEDIA_TYPE mt; ZeroMemory(&mt, sizeof(AM_MEDIA_TYPE)); mt.majortype = MEDIATYPE_Video; mt.subtype = MEDIASUBTYPE_RGB24; // MEDIASUBTYPE_RGB24 ; hr = m_pGrabber->SetMediaType(&mt); if( FAILED( hr ) ){ return hr; } hr = m_pGB->AddFilter( pGrabBase, L"Grabber" ); if( FAILED( hr ) ){ return hr; }// try to render preview/capture pin hr = m_pCapture->RenderStream(&PIN_CATEGORY_PREVIEW, &MEDIATYPE_Video,m_pBF,pGrabBase,NULL); if( FAILED( hr ) ) hr = m_pCapture->RenderStream(&PIN_CATEGORY_CAPTURE, &MEDIATYPE_Video,m_pBF,pGrabBase,NULL); if( FAILED( hr ) ){ return hr; } hr = m_pGrabber->GetConnectedMediaType( &mt ); if ( FAILED( hr) ){ return hr; }VIDEOINFOHEADER * vih = (VIDEOINFOHEADER*) mt.pbFormat; mCB.lWidth = vih->bmiHeader.biWidth; mCB.lHeight = vih->bmiHeader.biHeight; mCB.bGrabVideo = FALSE ; //mCB.frame_handler = NULL ; FreeMediaType(mt); hr = m_pGrabber->SetBufferSamples( FALSE ); hr = m_pGrabber->SetOneShot( FALSE ); //设置视频捕获回调函数 也就是如果有视频数据时就会调用这个类的BufferCB函数 //返回OnTimer hr = m_pGrabber->SetCallback( &mCB, 1 ); //设置视频捕捉窗口 m_hWnd = CreateWindow("#32770", /* Dialog */ "", WS_POPUP, 0, 0, 0, 0, NULL, NULL, NULL, NULL); SetupVideoWindow(); hr = m_pMC->Run();//开始视频捕捉 if(FAILED(hr)){ //AfxMessageBox("Couldn’t run the graph!");return hr; } return S_OK;}
开发者ID:Fluray,项目名称:gh0st-----,代码行数:60,
示例8: FreeMediaTypeHRESULT VideoCapture::GetMediaType(){ AM_MEDIA_TYPE mt; HRESULT hr = m_pGrabber->GetConnectedMediaType(&mt); if (FAILED(hr)) { FreeMediaType(mt); return hr; } memcpy(&m_BmiHeader, &((VIDEOINFOHEADER *)mt.pbFormat)->bmiHeader, sizeof(BITMAPINFOHEADER)); if (m_pFrameData != 0) delete[] m_pFrameData; m_pFrameData = new BYTE[m_BmiHeader.biSizeImage]; FreeMediaType(mt); return hr;}
开发者ID:dunghand,项目名称:msrds,代码行数:16,
示例9: DSoundRender_PrepareReceivestatic HRESULT WINAPI DSoundRender_PrepareReceive(BaseRenderer *iface, IMediaSample *pSample){ DSoundRenderImpl *This = impl_from_BaseRenderer(iface); HRESULT hr; AM_MEDIA_TYPE *amt; if (IMediaSample_GetMediaType(pSample, &amt) == S_OK) { AM_MEDIA_TYPE *orig = &This->renderer.pInputPin->pin.mtCurrent; WAVEFORMATEX *origfmt = (WAVEFORMATEX *)orig->pbFormat; WAVEFORMATEX *newfmt = (WAVEFORMATEX *)amt->pbFormat; if (origfmt->wFormatTag == newfmt->wFormatTag && origfmt->nChannels == newfmt->nChannels && origfmt->nBlockAlign == newfmt->nBlockAlign && origfmt->wBitsPerSample == newfmt->wBitsPerSample && origfmt->cbSize == newfmt->cbSize) { if (origfmt->nSamplesPerSec != newfmt->nSamplesPerSec) { hr = IDirectSoundBuffer_SetFrequency(This->dsbuffer, newfmt->nSamplesPerSec); if (FAILED(hr)) return VFW_E_TYPE_NOT_ACCEPTED; FreeMediaType(orig); CopyMediaType(orig, amt); IMediaSample_SetMediaType(pSample, NULL); } } else return VFW_E_TYPE_NOT_ACCEPTED; } return S_OK;}
开发者ID:reactos,项目名称:reactos,代码行数:34,
示例10: CoTaskMemAllocbool Misc::SetStreamConfigData(AM_MEDIA_TYPE *pMT, BYTE *pMediaHex, int inMediaSize, BYTE *pVideoHeaderHex, int inVideoHeaderSize){ int mediaSize = inMediaSize / 2; int videoHeaderSize = inVideoHeaderSize / 2; if (mediaSize != sizeof AM_MEDIA_TYPE) return false; LPVOID pNewVideoHeader = NULL; if (videoHeaderSize > 0) { pNewVideoHeader = CoTaskMemAlloc(videoHeaderSize); if (pNewVideoHeader) { Make8Bit((char *) pVideoHeaderHex, (char *) pNewVideoHeader, inVideoHeaderSize); } else return false; } // Release any previously allocated format tag FreeMediaType(*pMT); Make8Bit((char *) pMediaHex, (char *) pMT, inMediaSize); pMT->pbFormat = (BYTE *) pNewVideoHeader; // may be NULL under certain circumstances return true;}
开发者ID:identity0815,项目名称:os45,代码行数:28,
示例11: Parser_OutputPin_Releasestatic ULONG WINAPI Parser_OutputPin_Release(IPin * iface){ Parser_OutputPin *This = (Parser_OutputPin *)iface; ULONG refCount = InterlockedDecrement(&This->pin.pin.refCount); TRACE("(%p)->() Release from %d/n", iface, refCount + 1); if (!refCount) { FreeMediaType(This->pmt); CoTaskMemFree(This->pmt); FreeMediaType(&This->pin.pin.mtCurrent); CoTaskMemFree(This); return 0; } return refCount;}
开发者ID:mgriepentrog,项目名称:wine,代码行数:17,
示例12: COutputPin_Destroy/** * /brief COutputPin destructor * * /param[in] This pointer to COutputPin class * */static void COutputPin_Destroy(COutputPin* This){ free(This->mempin->vt); free(This->mempin); free(This->vt); FreeMediaType(&(This->type)); free(This);}
开发者ID:Newbleeto,项目名称:mplayer2,代码行数:14,
示例13: Clear inline void Clear() { if (ptr) { FreeMediaType(*ptr); CoTaskMemFree(ptr); ptr = nullptr; } }
开发者ID:devgopher,项目名称:Isotoxin,代码行数:8,
示例14: DeleteMediaTypevoid DeleteMediaType(AM_MEDIA_TYPE *pmt){ if (pmt) { FreeMediaType(*pmt); CoTaskMemFree(pmt); }}
开发者ID:eaglezhao,项目名称:tracnghiemweb,代码行数:8,
示例15: CheckPointerHRESULT RtspSourcePin::GetMediaType(CMediaType* pMediaType){ // We only support one MediaType - the one that is streamed CheckPointer(pMediaType, E_POINTER); CAutoLock cAutoLock(m_pFilter->pStateLock()); FreeMediaType(*pMediaType); return CopyMediaType(pMediaType, &_mediaType);}
开发者ID:allweax,项目名称:RtspSourceFilter,代码行数:8,
示例16: FreeMediaTypeCMediaType&CMediaType::operator=(const AM_MEDIA_TYPE& rt){ if (&rt != this) { FreeMediaType(*this); CopyMediaType(this, &rt); } return *this;}
开发者ID:DragonZX,项目名称:fdm2,代码行数:9,
示例17: ACMWrapper_ConnectInputstatic HRESULT ACMWrapper_ConnectInput(TransformFilterImpl* pTransformFilter, const AM_MEDIA_TYPE * pmt){ ACMWrapperImpl* This = (ACMWrapperImpl*)pTransformFilter; MMRESULT res; TRACE("(%p)->(%p)/n", This, pmt); if ((IsEqualIID(&pmt->majortype, &MEDIATYPE_Audio)) && (!memcmp(((char*)&pmt->subtype)+4, ((char*)&MEDIATYPE_Audio)+4, sizeof(GUID)-4)) && /* Check root (GUID w/o FOURCC) */ (IsEqualIID(&pmt->formattype, &FORMAT_WaveFormatEx))) { HACMSTREAM drv; AM_MEDIA_TYPE* outpmt = &((OutputPin*)This->tf.ppPins[1])->pin.mtCurrent; This->pWfIn = (LPWAVEFORMATEX)pmt->pbFormat; /* HACK */ /* TRACE("ALIGN = %d/n", pACMWrapper->pWfIn->nBlockAlign); */ /* pACMWrapper->pWfIn->nBlockAlign = 1; */ /* Set output audio data to PCM */ CopyMediaType(outpmt, pmt); outpmt->subtype.Data1 = WAVE_FORMAT_PCM; This->pWfOut = (WAVEFORMATEX*)outpmt->pbFormat; This->pWfOut->wFormatTag = WAVE_FORMAT_PCM; This->pWfOut->wBitsPerSample = 16; This->pWfOut->nBlockAlign = 4; This->pWfOut->cbSize = 0; This->pWfOut->nAvgBytesPerSec = This->pWfOut->nChannels * This->pWfOut->nSamplesPerSec * (This->pWfOut->wBitsPerSample/8); if (!(res = acmStreamOpen(&drv, NULL, This->pWfIn, This->pWfOut, NULL, 0, 0, 0))) { This->has = drv; if ((res = acmStreamSize(drv, OUTPUT_BUFFER_SIZE, &This->max_size, ACM_STREAMSIZEF_DESTINATION))) { ERR("Cannot retrieve input buffer size error %d!/n", res); This->max_size = INPUT_BUFFER_SIZE; } TRACE("input buffer size %ld/n", This->max_size); /* Update buffer size of media samples in output */ ((OutputPin*)This->tf.ppPins[1])->allocProps.cbBuffer = OUTPUT_BUFFER_SIZE; TRACE("Connection accepted/n"); return S_OK; } else FIXME("acmStreamOpen returned %d/n", res); FreeMediaType(outpmt); TRACE("Unable to find a suitable ACM decompressor/n"); } TRACE("Connection refused/n"); return S_FALSE;}
开发者ID:howard5888,项目名称:wineT,代码行数:56,
示例18: CMediaSample_Destroy/** * /brief CMediaSample destructor * * /param[in] This pointer to CMediaSample object * */void CMediaSample_Destroy(CMediaSample* This){ Debug printf("CMediaSample_Destroy(%p) called (ref:%d)/n", This, This->refcount); free(This->vt); free(This->own_block); if(((CMediaSample*)This)->type_valid) FreeMediaType(&(This->media_type)); free(This);}
开发者ID:Gamer125,项目名称:wiibrowser,代码行数:16,
示例19: SetInputMediaTypeBOOL SetInputMediaType(ASF_FILE_INFO* pInfo){ WAVEFORMATEX* pwf; DMO_MEDIA_TYPE mt ={0}; if (InitMediaType(&mt, pInfo->dwFormat) != S_OK) return FALSE; pwf = (WAVEFORMATEX*)pInfo->pbFormat; memcpy(mt.pbFormat, pInfo->pbFormat, pInfo->dwFormat); mt.majortype = MEDIATYPE_Audio; mt.subtype = MEDIASUBTYPE_AudioBase; mt.subtype.Data1 = pwf->wFormatTag; mt.formattype = FORMAT_WaveFormatEx; mt.bTemporalCompression = 0; mt.bFixedSizeSamples = 1; mt.lSampleSize = 0; if (pInfo->pMediaObject->SetInputType(0, &mt, 0) != S_OK) {#ifdef _WIN32_WCE // from TCPMP if (pwf->wFormatTag == WAVE_FORMAT_WMA8 && pwf->cbSize == 10) { LPBYTE pb = mt.pbFormat + sizeof(WAVEFORMATEX); memset(pb, 0, pwf->cbSize); memcpy(pb + 2, pwf + 1, 6); if (pInfo->pMediaObject->SetInputType(0, &mt, 0) != S_OK) { FreeMediaType(&mt); return FALSE; } } else { FreeMediaType(&mt); return FALSE; }#else FreeMediaType(&mt); return FALSE;#endif } FreeMediaType(&mt); return TRUE;}
开发者ID:dps123,项目名称:nitrogenS100,代码行数:42,
示例20: DeleteMediaTypevoid WINAPI DeleteMediaType(AM_MEDIA_TYPE *pmt){ // allow NULL pointers for coding simplicity if (pmt == NULL) { return; } FreeMediaType(*pmt); CoTaskMemFree((PVOID)pmt);}
开发者ID:9crk,项目名称:EasyClient,代码行数:11,
示例21: SetOutputMediaTypeBOOL SetOutputMediaType(ASF_FILE_INFO* pInfo){ WAVEFORMATEX* pwfIn; WAVEFORMATEX* pwfOut; DMO_MEDIA_TYPE mt; if (InitMediaType(&mt, sizeof(WAVEFORMATEX)) != S_OK) return FALSE; pwfIn = (WAVEFORMATEX*)pInfo->pbFormat; pwfOut = (WAVEFORMATEX*)mt.pbFormat; pwfOut->wFormatTag = WAVE_FORMAT_PCM; pwfOut->nChannels = pwfIn->nChannels; pwfOut->nSamplesPerSec = pwfIn->nSamplesPerSec; pwfOut->wBitsPerSample = pwfIn->wBitsPerSample; pwfOut->nAvgBytesPerSec = pwfOut->wBitsPerSample * pwfOut->nSamplesPerSec * pwfOut->nChannels / 8; pwfOut->nBlockAlign = pwfOut->wBitsPerSample * pwfOut->nChannels / 8; pwfOut->cbSize = 0; mt.majortype = MEDIATYPE_Audio; mt.subtype = MEDIASUBTYPE_PCM; mt.formattype = FORMAT_WaveFormatEx; mt.bTemporalCompression = 0; mt.bFixedSizeSamples = 1; mt.lSampleSize = 0; if (pInfo->pMediaObject->SetOutputType(0, &mt, 0) != S_OK) { FreeMediaType(&mt); return FALSE; } pInfo->pmbOut = new CMediaBuffer(pwfOut->nAvgBytesPerSec * 2); if (!pInfo->pmbOut) { FreeMediaType(&mt); return FALSE; } FreeMediaType(&mt); return TRUE;}
开发者ID:dps123,项目名称:nitrogenS100,代码行数:40,
示例22: FreeMediaTypeHRESULTCMediaType::Set(const AM_MEDIA_TYPE& rt){ if (&rt != this) { FreeMediaType(*this); HRESULT hr = CopyMediaType(this, &rt); if (FAILED(hr)) { return E_OUTOFMEMORY; } } return S_OK; }
开发者ID:9crk,项目名称:EasyClient,代码行数:13,
示例23: StdMediaSample2_SetMediaTypestatic HRESULT WINAPI StdMediaSample2_SetMediaType(IMediaSample2 * iface, AM_MEDIA_TYPE * pMediaType){ StdMediaSample2 *This = (StdMediaSample2 *)iface; TRACE("(%p)/n", pMediaType); if (This->props.pMediaType) FreeMediaType(This->props.pMediaType); else if (!(This->props.pMediaType = CoTaskMemAlloc(sizeof(AM_MEDIA_TYPE)))) return E_OUTOFMEMORY; return CopyMediaType(This->props.pMediaType, pMediaType);}
开发者ID:howard5888,项目名称:wineT,代码行数:13,
示例24: CMediaSample_SetMediaType/** * /brief IMediaType::SetMediaType (specifies media type for sample) * * /param[in] This pointer to CMediaSample object * /param[in] pMediaType pointer to AM_MEDIA_TYPE specifies new media type * * /return S_OK success * /return E_OUTOFMEMORY insufficient memory * */static HRESULT STDCALL CMediaSample_SetMediaType(IMediaSample * This, AM_MEDIA_TYPE *pMediaType){ AM_MEDIA_TYPE* t; Debug printf("CMediaSample_SetMediaType(%p) called/n", This); if (!pMediaType) return E_INVALIDARG; t = &((CMediaSample*)This)->media_type; if(((CMediaSample*)This)->type_valid) FreeMediaType(t); CopyMediaType(t,pMediaType); ((CMediaSample*) This)->type_valid=1; return 0;}
开发者ID:Gamer125,项目名称:wiibrowser,代码行数:25,
示例25: FreeMediaTypeSTDMETHODIMP CapturePin::QueryAccept(const AM_MEDIA_TYPE *pmt){ if(pmt->majortype != expectedMajorType) return S_FALSE; if(!IsValidMediaType(pmt)) return S_FALSE; if(connectedPin) { FreeMediaType(connectedMediaType); CopyMediaType(&connectedMediaType, pmt); } return S_OK;}
开发者ID:wwllww,项目名称:LiveStream_MultiIntance,代码行数:15,
注:本文中的FreeMediaType函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ FreeNode函数代码示例 C++ FreeLibrary函数代码示例 |