Použití vlastních jímek
[Funkce přidružená k této stránce, Windows Media Format 11 SDK, je starší funkce. Byla nahrazena Source Readerem a Sink Writerem. Čtečka a Zapisovač jímky byly optimalizovány pro Windows 10 a Windows 11. Microsoft důrazně doporučuje, aby nový kód používal Čtečka zdrojového kódu a Zapisovač jímky místo Windows Media Format 11 SDK, pokud je to možné. Microsoft navrhuje, aby se stávající kód, který používá starší rozhraní API, přepsal, aby se nová rozhraní API používala, pokud je to možné.]
Pokud máte specifické potřeby pro psaní, můžete si vytvořit vlastní zapisovací komponenty. Zapisovač udržuje jednosměrnou komunikaci s jímkou tím, že volá metody IWMWriterSink. Pokud chcete vytvořit vlastní jímku, implementujte rozhraní IWMWriterSink ve třídě ve vaší aplikaci. Tento proces je velmi podobný implementaci jakéhokoli jiného rozhraní zpětného volání používaného objekty sady Windows Media Format SDK. Další informace o zpětném volání naleznete v tématu Použití metod zpětného volání.
Vyrovnávací paměť přijatá v IWMWriterSink::OnHeader by měla být zapsána na začátek souboru a všechny vyrovnávací paměti přijaté v OnDataUnit by měly být zapsány postupně. OnHeader bude volána na začátku, ale může být volána i jindy, a pokud ano, měli byste (pokud je to možné) přepsat původní hlavičku. Pokud to vaše aplikace z nějakého důvodu nedokáže, jednoduše ignorujte následující OnHeader volání.
Váš vlastní datový přijímač by měl komunikovat svůj stav s aplikací zápisu voláním metody zpětného volání IWMStatusCallback::OnStatus. Pokud implementujete jímku jako objekt COM, můžete chtít zveřejnit IWMRegisterCallback rozhraní. Můžete ale předat adresu zpětného volání OnStatus do vašeho sinku a nastavit kontext libovolným způsobem.
Související témata