Bestandssinks gebruiken
[De functie die is gekoppeld aan deze pagina, Windows Media Format 11 SDK, is een verouderde functie. Het is vervangen door Source Reader en Sink Writer. Bronlezer en Sink Writer zijn geoptimaliseerd voor Windows 10 en Windows 11. Microsoft raadt ten zeerste aan om nieuwe code te gebruiken bronlezer en Sink Writer- in plaats van Windows Media Format 11 SDK, 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.]
In normale omstandigheden kunt u de schrijver een naam van een uitvoerbestand doorgeven met behulp van de IWMWriter::SetOutputFilename methode, en het writer-object schrijft het bestand automatisch naar schijf. In dit geval maakt en beheert de schrijver eigenlijk een writer-bestandssinkobject dat het schrijven naar de schijf afhandelt. Een writer file sink-object regelt de gegevensstroom van het schrijver-object naar een enkel bestand.
U kunt uw eigen bestanduitvoer creëren om meer controle te krijgen over hoe de uitvoer het bestand schrijft. U kunt ook toegang krijgen tot de standaard-schrijfbestandssink die door de schrijver is gemaakt als reactie op een aanroep naar SetOutputFilename.
Creëren van Uitvoerbestanden
Voer de volgende stappen uit om een bestandssink te maken en toe te voegen aan de schrijver.
- Maak een nieuwe sink door de functie WMCreateWriterFileSink aan te roepen.
- Geef een bestandsnaam op voor de bestandskoppeling door IWMWriterFileSink::Openaan te roepen.
- Voeg de bestandsuitgang toe aan de writer door IWMWriterAdvanced::AddSinkaan te roepen.
- Schrijf op de gebruikelijke manier.
- Nadat het schrijven is voltooid, sluit de sink het bestand automatisch.
Bestandsuitvoerdoelen stoppen en starten
Nadat de schrijfbewerkingen zijn gestart, kunt u stoppen met schrijven naar een bestandssink door IWMWriterFileSink2::Stop.
Er zijn veel mogelijke redenen waarom u wilt stoppen met schrijven naar een sink. Als u bijvoorbeeld opneemt vanuit een livebron, bent u mogelijk alleen geïnteresseerd in een deel van de inhoud.
U kunt het schrijven naar een bestandssink hervatten door IWMWriterFileSink2::Startaan te roepen. Zowel Stop als Start gebruiken presentatietijden om ongeveer te bepalen wanneer de opdracht wordt uitgevoerd. U kunt de IWMWriterFileSink3 methoden gebruiken om meer controle te krijgen over begin- en eindtijden.
Bestandssinks sluiten
Normaal gesproken wordt een bestandssink automatisch gesloten. Als u klaar bent met schrijven naar een uitvoerbron, maar schrijfbewerkingen naar andere bronnen doorgaan, moet u de uitvoerbron expliciet sluiten om systeembronnen te besparen. Als u een file sink wilt sluiten, roept u IWMWriterFileSink2::Closeaan.
Sink-statistieken ophalen
U kunt de bestandsgrootte en duur voor een open sink ophalen door respectievelijk IWMWriterFileSink2::GetFileSize en IWMWriterFileSink2::GetFileDuration aan te roepen.
Verwante onderwerpen