Dela via


Läsarobjekt

[Funktionen som är associerad med den här sidan, Windows Media Format 11 SDK, är en äldre funktion. Det har ersatts av Source Reader och Sink Writer. Source Reader och Sink Writer har optimerats för Windows 10 och Windows 11. Microsoft rekommenderar starkt att ny kod använder Source Reader och Sink Writer i stället för Windows Media Format 11 SDK, när det är möjligt. Microsoft föreslår att befintlig kod som använder äldre API:er skrivs om för att använda de nya API:erna om möjligt.]

Läsarobjektet läser dataexempel från mediefiler. Läsarobjektet stöder för närvarande filer med hjälp av asf-filstrukturen (advanced systems format) samt MP3-filer. Data som levereras av läsarobjektet är okomprimerade och redo för återgivning som standard, även om exempel kan levereras utan att dekomprimeras om så önskas. Exempel levereras asynkront från läsarobjektet. du måste konfigurera en återanropsfunktion för att ta emot dem. För synkron uppspelning av ASF-filer använder du det synkrona läsarobjektet. Varken läsaren eller synkron läsare återger några data. Du måste ange egna återgivningsrutiner för att visa mediet som hämtats från en fil.

När en fil innehåller kodade medier som kan avkodas med en codec som stöds av läsarobjektet kan du styra formatet för de okomprimerade utdata. Om du vill ändra formatet för dekomprimerade utdata för en ström måste du hämta standardobjektet för utdatamedieegenskaper för strömmen, göra ändringar i den och omtilldela den till strömmen i läsaren. Objekt för utdatamedieegenskaper är underordnade läsarobjektet och bör endast skapas med hjälp av metoden IWMReader::GetOutputProps.

Läsarobjektet skapas av funktionen WMCreateReader, som anger en pekare till ett IWMReader- gränssnitt. De andra gränssnitten för läsarobjektet kan hämtas genom att anropa metoden QueryInterface.

Följande gränssnitt stöds av läsarobjektet.

Gränssnitt Beskrivning
IReferenceClock Ger åtkomst till systemklockan som används av läsaren.
IWMDRMReader Hanterar licensförvärv, DRM- egenskaper och klientanpassning.
IWMDRMReader2 Ger åtkomst till licenser som använder utdataskyddsnivåer (OPL) för att ange rättigheter.
IWMHeaderInfo Anger och hämtar rubrikinformation, inklusive metadata, marköreroch skriptdata.
IWMHeaderInfo2 Hämtar information om de codecs som användes för att koda innehållet i filen. Ärver alla metoder för IWMHeaderInfo.
IWMHeaderInfo3 Stöder stora attributstorlekar, duplicerade attributnamn och stöd för flera språk. Ärver alla metoder för IWMHeaderInfo och IWMHeaderInfo2.
IWMPacketSize Hämtar storleken på det största paketet i filen som läses in i läsaren.
IWMPacketSize2 Hämtar storleken på det minsta paketet i filen som läses in i läsaren.
IWMProfile Ger åtkomst till profilinformationen för filen som läses in i läsaren.
IWMProfile2 Hämtar den globalt unika identifieraren (GUID) som är associerad med profilen. Ärver alla metoder för IWMProfile.
IWMProfile3 Stöder information om bandbreddsdelning och dataströmprioritering i profilen. Ärver alla metoder för IWMProfile och IWMProfile2.
IWMReader Innehåller grundläggande filläsningsfunktioner, inklusive åtgärder som att öppna, stänga, starta, pausa, återuppta, stoppa och hämta och ange utdataegenskaperna.
IWMReaderAccelerator Kommunicerar med DirectX-videoacceleration.
IWMReaderAvancerad Innehåller avancerade funktioner för läsaren, till exempel en klocka som tillhandahålls av användaren, buffertallokering, returstatistik och meddelanden om strömmande urval.
IWMReaderAdvanced2 Innehåller ytterligare ett antal avancerade metoder för ett befintligt läsarobjekt. Ärver alla metoder för IWMReaderAdvanced.
IWMReaderAdvanced3 Ger avancerad söknings- och strömningskontroll. Ärver alla metoder för IWMReaderAdvanced och IWMReaderAdvanced2.
IWMReaderAdvanced4 Tillhandahåller avancerade läsaralternativ, inklusive stöd för flera språk. Ärver alla metoder för IWMReaderAdvanced, IWMReaderAdvanced2och IWMReaderAdvanced3.
IWMReaderNetworkConfig Styr inställningar för nätverkskonfiguration.
IWMReaderNetworkConfig2 Ger åtkomst till avancerade inställningar för nätverkskonfiguration. Ärver alla metoder för IWMReaderNetworkConfig.
IWMReaderStreamClock Ställer in och avbryter timers på strömklockor och hämtar det aktuella värdet för en angiven strömklocka.
IWMReaderTimecode Innehåller information om SMPTE-tidskodintervall i filen som läses in i läsaren.
IWMReaderTypeNegotiation Testar om ändringar i utdataegenskaperna för en dataström fungerar korrekt.

 

Följande motringningsgränssnitt kan implementeras i programmet för att spåra förloppet för ett läsarobjekt.

Gränssnitt Beskrivning
IWMCredentialCallback Hämtar autentiseringsuppgifterna för användare och kontrollerar att de har behörighet att komma åt en fjärrplats.
IWMReaderAllocatorEx Innehåller utökade alternativ till metoderna AllocateForOutput och AllocateForStream för IWMReaderCallbackAdvanced-gränssnittet.
IWMReaderCallback Innehåller motringningsmetoder för metoderna Start och Open för IWMReader.
IWMReaderCallbackAvancerad Innehåller motringningsmetoder för metoderna i IWMReaderAdvanced-gränssnittet.
IWMStatusCallback Krävs när statusinformation måste förmedlas till värdprogrammet.

 

objekt

läser ASF-filer

synkront läsarobjekt