Udostępnij przez


Przykładowe aplikacje DirectShow

[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.]

Przykładowe aplikacje DirectShow można znaleźć w repozytorium windows-classic-samples w witrynie GitHub.

Poniższa tabela zawiera listę wszystkich przykładów DirectShow podanych w tym repozytorium. Aby uzyskać instrukcje dotyczące tworzenia przykładów, zapoznaj się z dokumentacją udostępnioną w zestawie Windows SDK. Jeśli istnieje temat opisujący przykład, pierwsza kolumna tej tabeli zawiera linki do niego.

Próbka Obszar Opis Dodatkowe zależności
Klasy Bazowe DirectShow Biblioteka klas bazowych Klasy języka C++ i funkcje narzędzi przeznaczone do implementowania filtrów DirectShow.
Przykład AmCap Uchwycić Aplikacja do przechwytywania wideo. strmbase.lib
Przykładowe DVApp Schwytać Aplikacja do przechwytywania cyfrowego wideo (DV).
Przykładowe PlayCap Zarejestrować Prosta aplikacja do przechwytywania.
Próbka demonstracyjna DMO DMO Przesyła strumieniowo dane audio z pliku WAV za pośrednictwem efektu dźwiękowego DMO. DirectX SDK
Przykład DVD DVD Demonstruje podstawowe funkcje odtwarzania i nawigacji DVD oraz zaawansowane funkcje, takie jak zarządzanie poziomem rodziców, zakładki, karaoke i synchronizacja poleceń.
przykładowy filtr InfTee Filtry, różne Przykładowa implementacja filtru Infinite Pin Tee. strmbase.lib
Próbka filtru metronomu Filtry, różne Pokazuje, jak zaimplementować zegar referencyjny. strmbase.lib
Przykładowy filtr parsera PSI Filtry, różne Odbiera tabele informacji specyficznych dla programu (PSI) ze strumienia transportu MPEG-2 i wyodrębnia informacje o programie. strmbase.lib
Przykładowy filtr zrzutu Filtry, moduł renderowania Zapisuje odebrane próbki multimediów do pliku tekstowego. strmbase.lib
Filtr SampVid Filtry, moduł renderowania Filtr modułu renderowania wideo. strmbase.lib
Przykładowy filtr zakresu Filtry, moduł renderowania Wyświetla dźwięk jako formy falowe. strmbase.lib
przykładowy filtr asynchroniczny Filtry, źródło Filtr czytnika plików obsługujący pobieranie progresywne. strmbase.lib
Próbka filtra kulowego Filtry, źródło Filtr źródła wideo, który tworzy obraz odbijającej się piłki. strmbase.lib
Przykładowe filtry źródła wypychania Filtry, źródło Filtry źródłowe, które dostarczają następujące dane jako strumień wideo: pojedyncza mapa bitowa, zestaw map bitowych, kopia bieżącego obrazu pulpitu. strmbase.lib
przykładowy filtr syntezatora Filtry, źródło Filtr źródłowy, który generuje kształty fal dźwięku. W tym przykładzie pokazano dynamiczne budowanie grafu. strmbase.lib
Przykładowy filtr EZRGB24 Filtry, transformacja Filtr przetwarzania obrazów. strmbase.lib
Próbka filtra Gargle Filtry, transformacja Filtr efektów dźwiękowych. strmbase.lib
Przykład filtru WavDest Filtry, transformacja Zapisuje strumień audio w pliku WAV. strmbase.lib
Przykład DMOEnum Różne Przedstawia sposób wyliczania obiektów multimedialnych DirectX (DMO).
Przykład Mapper Różne Pokazuje, jak używać mapowania filtrów do znajdowania filtrów w rejestrze.
Przykład SysEnum Różne Demonstruje użycie enumeratora urządzeń systemowych do wyliczania urządzeń i filtrów.
Próbka "cutscene" Odtwarzanie Odtwarza plik wideo w trybie pełnoekranowym.
Przykład DDrawXCL Odtwarzanie Odtwarza wideo w trybie pełnoekranowym DirectDraw, używając interfejsu IDDrawExclModeVideo w filtrze Overlay Mixer.
Przykład DShowPlayer Odtwarzanie Aplikacja odtwarzania wideo.
Przykład EVRPlayer Odtwarzanie Pokazuje, jak używać filtru DirectShow EVR. Uwaga: wymaga systemu Windows Vista lub nowszego.
Ten przykład jest dostępny w zestawie Windows SDK dla systemu Windows Server 2008 lub nowszym.
strmbase.lib
Przykład Texture3D9 Odtwarzanie Rysuje wideo na powierzchni tekstury Microsoft DirectX 9.0. strmbase.lib, zestaw SDK DirectX
przykładowy znacznik VMR-9 Używa maszyny VMR-9 do mieszania wideo i tekstu.
Przykład VMR9Allocator VMR-9 Implementuje niestandardowy alokator-prezenter dla VMR-9. strmbase.lib
Przykład VMR9Compositor VMR-9 Implementuje niestandardowy mieszalnik dla VMR-9.
VMRPlayer VMR-9 Używa renderera VMR-9 do mieszania jednego lub dwóch odtwarzanych filmów wideo i obrazu statycznego.
Przykład znaku wodnego VMR-9 Łączy statyczną bitmapę z wideo podczas odtwarzania, korzystając z VMR-9.
przykładu bez okien VMR-9 Demonstruje tryb bez okien w VMR-9.

Dodatkowe zależności

Niektóre przykłady łączą się z biblioteką klas bazowych DirectShow. Aby skompilować te przykłady, najpierw skompiluj bibliotekę klas bazowych. Aby uzyskać więcej informacji, zobacz klasy bazowe DirectShow. Biblioteka klas bazowych jest wymagana dla wszystkich przykładowych filtrów.

Kilka przykładów wymaga również zestawu SDK DirectX oprócz zestawu Windows SDK. Aby skompilować te przykłady, należy zainstalować zestaw SDK DirectX i ustawić zmienną środowiskową %DXSDK\_DIR% równą ścieżce instalacji zestawu SDK DirectX.

Wiele przykładów DirectShow używa zestawu typowych nagłówków i plików źródłowych znajdujących się w katalogu \[SDK Root\]Samples\Multimedia\DirectShow\Common. Jeśli skopiujesz przykładowy folder do innego katalogu, skopiuj również folder Common.