Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Как правильно задать аргументы


Автор: AndreySol 18.10.2008, 09:31
Есть такая ф-ция у интерфейса IBDA_TIF_REGISTRATION
HRESULT RegisterTIFEx(
    IPin *pTIFInputPin,
    ULONG *ppvRegistrationContext,
    IUnknown **ppMpeg2DataControl
);
Parameters:

pTIFInputPin
[in]  Pointer to the IPin interface of the input pin on the TIF.

ppvRegistrationContext
[in, out]  Pointer to a variable that receives a token identifying the connection. Pass this token in the UnregisterTIF method when the TIF unregisters itself.

ppMpeg2DataControl
[in, out]  Address of a variable that receives a pointer to an IUnknown interface, which the TIF queries for the IMPEG2PIDMap interface. It uses the IMPEG2PIDMap to map and unmap PID values.

Пробую так использовать:
Код

IPin* pInputPin; // получаю ранее от TIF, проверял - указатель нормальный
IMPEG2PIDMap* pMPEG2PIDMap; // получаю ранее от MPEG-2 Demultiplexer, проверял - указатель нормальный

ULONG ulTIFRegistration;
HRESULT hr = pBDA_TIF_Reg->RegisterTIFEx(pInputPin, &ulTIFRegistration, reinterpret_cast <IUnknown **> (pMPEG2PIDMap));
if(hr == S_OK)
{

}
получаю ошибку "Аргументы заданы неправильно". Скорее всего неполадки с pMPEG2PIDMap - как его правильно передать в эту ф-цию ?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)