Externe apparaatinterfaces voor DV-recorders
[De functie die is gekoppeld aan deze pagina, DirectShow, is een verouderde functie. Het is vervangen door MediaPlayer, IMFMediaEngineen Audio/Video Capture in Media Foundation. Deze functies zijn geoptimaliseerd voor Windows 10 en Windows 11. Microsoft raadt ten zeerste aan om nieuwe code te gebruiken MediaPlayer, IMFMediaEngine en Audio/Video Capture in Media Foundation in plaats van DirectShow, indien mogelijk. Microsoft stelt voor dat bestaande code die gebruikmaakt van de verouderde API's, indien mogelijk opnieuw worden geschreven om de nieuwe API's te gebruiken.]
Het WDM Video Capture filter toont drie interfaces voor het beheren van een cmdlet.
Etiket | Waarde |
---|---|
IAMExtDevice- | De basisinterface voor extern apparaatbeheer. |
IAMExtTransport- | Hiermee bepaalt u de VCR-functies. |
IAMTimecodeReader- | Leest de tijdcode van het apparaat. |
Notitie
Als u deze interfaces wilt gebruiken met het MSDV-firewallstuurprogramma, neemt u het headerbestand XPrtDefs.h in uw project op.
Nadat u een opnameapparaat hebt geselecteerd en een exemplaar van het capture-filter hebt gemaakt, voert u een query uit op het filter voor deze interfaces. Het volgende voorbeeld declareert een aangepaste structuur die de interfaceaanwijzers bevat, samen met Booleaanse waarden die de beschikbaarheid van elke interface opgeven:
struct _MyDevCap
{
IAMExtDevice *pDevice;
IAMExtTransport *pTransport;
IAMTimecodeReader *pTimecode;
BOOL bHasDevice;
BOOL bHasTransport;
BOOL bHasTimecode;
} MyDevCap;
HRESULT hr;
IBaseFilter *pDVCam; // Pointer to the capture filter.
// Create an instance of the capture filter (not shown).
hr = pDVCam->QueryInterface(IID_IAMExtDevice, (void **)&MyDevCap.pDevice);
MyDevCap.bHasDevice = (SUCCEEDED(hr));
hr = pDVCam->QueryInterface(IID_IAMExtTransport, (void **)&MyDevCap.pTransport);
MyDevCap.bHasTransport = (SUCCEEDED(hr));
hr = pDVCam->QueryInterface(IID_IAMTimecodeReader, (void **)&MyDevCap.pTimecode);
MyDevCap.bHasTimecode = (SUCCEEDED(hr));
Verwante onderwerpen
-
een DV- beheren