Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
[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.]
Beschrijving
Digitale Video (DV) opname-applicatie.
In dit voorbeeld ziet u hoe u verschillende typen filtergrafieken bouwt voor het beheren van DV-webcams. Het laat ook zien hoe u vastleggen, preview, verzenden en apparaatbesturing kunt uitvoeren met een DV-webcam.
Gebruik
De DVApp-toepassing ondersteunt de volgende modi:
- Preview: Rendert DV van de webcam naar een videovenster.
- DV naar type-1 bestand: legt DV-gegevens van de webcam vast in een type-1 DV-bestand.
- Type-1-bestand naar DV: verzendt gegevens van een type-1 DV-bestand naar de webcam.
- DV naar type-2-bestand: legt DV-gegevens van de webcam vast in een type-2 DV-bestand.
- Type-2-bestand naar DV: verzendt gegevens van een type-2 DV-bestand naar de webcam.
De opname- en verzendmodi voeren ook preview uit. Elk van deze modi heeft ook een optie Geen voorbeeld, waardoor voorvertoning wordt uitgeschakeld. Vastleggen zonder preview is efficiënter en kan het aantal verwijderde frames verminderen.
De toepassing wordt gestart in de preview-modus. Als u een andere modus wilt selecteren, kiest u een modus in het menu Graph Mode. Voor elke modus bouwt DVApp een filtergrafiek die ondersteuning biedt voor de functionaliteit van die modus. Als u de grafiek wilt opslaan als een GraphEdit-bestand (.grf), selecteert u Grafiek opslaan in bestand in het menu Bestand. Sluit DVApp af voordat u het bestand opent in GraphEdit.
Vastleggen in een bestand:
- Kies in het menu BestandUitvoerbestand instellen en voer een bestandsnaam in.
- Selecteer in het menu Graph Mode een DV naar bestand modus (type 1 of 2, met of zonder voorvertoning).
- Klik op Record.
- Als de webcam zich in de VTR-modus bevindt, klikt u op Afspelen.
- Als u het vastleggen wilt stoppen, klikt u op Stoppen.
Verzenden van een bestand naar de webcam:
- Klik in het menu Bestand op Invoerbestand instellen en selecteer een DV-bestand. Het bestand moet overeenkomen met de geselecteerde modus (type 1 of type 2).
- Selecteer in het menu Graph Mode een Bestand naar DV-modus (type 1 of type 2, met of zonder preview).
- Klik op afspelen.
- Als u de gegevens op tape wilt opnemen, klikt u op Record.
- Als u wilt stoppen met verzenden, klikt u op Stoppen.
Als de webcam zich in de VTR-modus bevindt, kan de gebruiker het transportmechanisme beheren via de VCR-stijlknoppen van de toepassing. Als u de tape wilt zoeken, voert u de doeltijdcode in en klikt u op de zoekknop.
Als u wilt beperken hoeveel gegevens de toepassing vastlegt, kiest u Capture Size in het menu File.
Als u de tapeindeling (NTSC of PAL) wilt controleren, kiest u Tape controleren in het menu Opties.
Als u de grootte van het voorbeeldvenster wilt wijzigen, kiest u Decodeergrootte wijzigen in het menu Opties.
Programmeernotities
Het belangrijkste doel van deze toepassing is om te laten zien hoe u verschillende DV-opname- en overdrachtsgrafieken bouwt.
Apparaataankomst en verwijdering
De toepassing verwerkt de aankomst en verwijdering van apparaten met behulp van twee verschillende technieken. Bij aankomst van het apparaat reageert de berichtenlus van de toepassing op WM_DEVICECHANGE berichten. Voor het verwijderen van apparaten reageert de toepassing op EC_DEVICE_LOST gebeurtenissen uit filtergrafiekbeheer. Beide benaderingen werken, hoewel de EC_DEVICE_LOST gebeurtenis afhankelijk is van het bestaan van het apparaat in de filtergrafiek.
De toepassing verwerkt slechts één apparaat tegelijk. Als het huidige apparaat wordt verwijderd, zoekt de toepassing naar een ander DV-apparaat op het systeem.
Op sommige DV-camcorders moet de gebruiker het apparaat uitschakelen bij het schakelen tussen de cameramodus en de VTR-modus, waardoor een melding dat het apparaat is verloren wordt geactiveerd. De toepassing reageert door de juiste menuopdrachten in of uit te schakelen. Als de gebruiker echter snel tussen modi schakelt, genereert de camcorder mogelijk geen bericht dat het apparaat is verdwenen. U kunt afdwingen dat de menu's worden bijgewerkt door vernieuwingsmodus te kiezen in het menu Opties. Sommige DV-camcorders kunnen schakelen tussen modi zonder uit te schakelen, maar verzenden alleen een bericht dat het apparaat is verloren wanneer ze naar de VTR-modus overschakelen.
Apparaatbeheer
De functionaliteit van de knop Afspelen en Opnemen is afhankelijk van de huidige modus:
- Voorbeeld: De filtergrafiek wordt automatisch uitgevoerd. Met de knop Afspelen wordt het transport gestart.
- Vastleggen in bestand: de knop Record voert de grafiek uit en de knop Afspelen start het transport.
- Verzenden naar apparaat: de knop Afspelen voert de grafiek uit en de knop Record start het transport.
De voorbeeldtoepassing voert geen frame-nauwkeurige opname uit. Op verschillende punten roept de toepassing de slaapstand--functie aan om te wachten tot het apparaat reageert. Nieuwere DV-recorders verzenden een melding wanneer de status van het apparaat verandert. Oudere apparaten bieden mogelijk geen ondersteuning voor meldingen; Voor een voorbeeld is het aanroepen van Slaapstand een eenvoudigere oplossing.
Het voorbeeld downloaden
Als u de DirectShow SDK-voorbeelden wilt downloaden, installeert u de nieuwste versie van de Windows SDK.
Dit voorbeeld wordt geïnstalleerd onder het volgende pad: [SDK Root]\Samples\Multimedia\DirectShow\Capture\DVApp.
Verwante onderwerpen