Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
[Funkcja skojarzona z tą stroną, DirectShow, jest starszą funkcją. Został zastąpiony przez MediaPlayer, IMFMediaEnginei Audio/Video Capture w Media Foundation. Te funkcje zostały zoptymalizowane pod kątem systemów Windows 10 i Windows 11. Firma Microsoft zdecydowanie zaleca, aby nowy kod używał MediaPlayer, IMFMediaEngine i Audio/Video Capture w programie Media Foundation zamiast DirectShow, jeśli to możliwe. Firma Microsoft sugeruje, że istniejący kod, który używa starszych interfejsów API, należy przepisać go do korzystania z nowych interfejsów API, jeśli to możliwe.]
Ten mechanizm umożliwia wyprowadzenie wyprowadzenia wyjściowego w celu zaproponowania zmiany formatu na podrzędną komunikację równorzędną, gdy nowy format wymaga większego buforu. Wyprowadzenia wyjściowego wykonuje następujące czynności:
- Wywołuje IPin::ReceiveConnection na podrzędnym numerze PIN danych wejściowych.
- Jeśli
ReceiveConnectionpowiedzie się, wywoła IMemInputPin::NotifyAllocator na wprowadzania numeru PIN.
Ponadto może być konieczne wywołanie wyprowadzenia wyjściowego IMemAllocator::SetProperties, a następnie anulowanie i ponowne zatwierdzanie alokatora w celu zmiany rozmiarów buforu. Przed zmianą rozmiaru buforu upewnij się, że wszystkie oczekujące próbki są dostarczane w starym formacie.
Niektóre dekodatory MPEG-2 używają tego mechanizmu do przełączania między danymi wyjściowymi MPEG-1 i MPEG-2 lub jeśli rozmiar wideo ulegnie zmianie.