Dela via


ASF Media Sinks

ASF-mediemottagaren är den sista komponenten i kodningspipelinen som gör det möjligt för ett program att skriva en ASF-fil.

Media Foundation tillhandahåller två typer av ASF-mediamottagare:

  • ASF-filmottagare används för att arkivera ASF-mediedata till en fil.
  • ASF-strömningsmottagare används för att skriva ASF-innehåll i en byteström som kan strömmas över nätverket.

ASF-mediamottagare innehåller en eller flera strömmottagare, vilket representerar de data som ska skrivas för varje ström i UTdata-ASF-filen. För kodning av program som körs i Windows Vista måste du manuellt konfigurera kodningstopologin genom att skapa och konfigurera ASF-mediemottagaren och sedan lägga till den i topologin. Om du använder snabbkodade objekt för att skapa topologin i Windows 7 har du inte skapat mediemottagaren direkt och programmet anropar inte några metoder på mediemottagaren eller någon av strömmottagaren. De snabba transcode-objekten instansierar de mediamottagare som krävs och lägger till dem i topologin innan de returnerar en referens till anroparprogrammet. Men för snabba omkodningsobjekt finns det vissa begränsningar som gäller beroende på typen av kodning.

ASF Media Sink Object Model

ASF-mediamottagare implementerar IMFMediaSink- gränssnitt och exponerar följande gränssnitt. Ett program kan hämta en referens till dessa gränssnitt genom att anropa QueryInterface- på asf-mediemottagaren som används för att generera utdataexempel.

Gränssnitt Beskrivning
IMFMediaSink Krävs för alla mediamottagare.
IMFFinalizableMediaSink Implementerad av ASF-filmottagaren som skriver det genererade medieinnehållet till en fil. Du kan använda metoderna i det här gränssnittet för att rensa data och uppdatera ASF-huvudobjektet för den slutliga utdatafilen.
IMFClockStateSink Tar emot tillståndsändringsmeddelanden från presentationsklockan.
IMFASFContentInfo ASF ContentInfo-objektet är ett WMContainer-nivåobjekt som främst lagrar INFORMATION om ASF-huvudobjekt. Detta används för att skapa ASF-mediamottagare.
IMFMetadata Används för att beskriva metadata för ASF-filen.
IMFMetadataProvider Hämtar en samling metadata, antingen för en hel presentation eller för en ström i presentationen.

 

ASF-filmottagare

ASF-filmottagaren är en implementering av IMFMediaSink som tillhandahålls av Media Foundation som ett program kan använda för att arkivera ASF-mediedata till en fil.

Du måste skapa, konfigurera och anropa metoder på filmottagaren eller någon av dess strömmottagare om du använder pipelinelagerobjekten för att skriva en ny ASF-fil. När du har konfigurerat filmottagaren kan du sedan lägga till den i kodningspipelinen.

Här följer de allmänna stegen för att använda ASF-filmottagaren:

  1. Skapa filen sink in-process eller out-of-process.
  2. Konfigurera filmottagaren med alla strömmar, kodningsegenskaper och metadatainformation.
  3. Associera filmottagaren med utdatatopologinoden antingen genom att räkna upp strömmottagare eller genom att hålla reda på strömnumren med i mottagaren.

Följande avsnitt innehåller detaljerad information om hur du arbetar med ASF-filmottagaren:

ASF-komponenter för pipelinelager

ASF-stöd i Media Foundation