Przykładowe aplikacje zestawu WINDOWS Media Format SDK
[Funkcja skojarzona z tą stroną, windows Media Format 11 SDK, jest starszą funkcją. Został zastąpiony przez Source Reader i Sink Writer. Czytnik źródła i Zapisnik ujścia zostały zoptymalizowane pod kątem systemów Windows 10 i Windows 11. Firma Microsoft zdecydowanie zaleca, aby nowy kod używał czytnika źródła i modułu zapisu ujścia zamiast zestawu SDK Windows Media Format 11, gdy tylko jest 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ładowy kod dostarczony z tym zestawem SDK jest w formie projektów programu Microsoft Visual Studio 2005. Większość przykładów jest w języku C++, ale managedWMFSDKWrapper i ManagedMetadataEdit wymagają języka C#.
Te przykłady nie będą działać, chyba że zestaw SDK formatu Windows Media lub zestaw SDK programu Windows Player został zainstalowany.
Informacje o użyciu dla każdego przykładu znajdują się w pliku readme.txt w każdym przykładowym katalogu.
Samle | Opis |
---|---|
Odtwarzacz audio | Odtwarza pliki Windows Media, w tym pliki chronione przez drM. Jest kontrolowana za pomocą graficznego interfejsu użytkownika, a polecenia obejmują odtwarzanie, wstrzymywanie, wyszukiwanie i zatrzymywanie. Może odtwarzać pliki lokalne lub pliki odczytywane z Internetu (w tym pliki przesyłane do Internetu za pomocą przykładu WMVNetWrite).
Uwaga: części DRM tego przykładu nie są obsługiwane w wersjach systemu Windows na x64. |
DrMHeader | DRMHeader to aplikacja konsolowa, która używa IWMDRMEditor interfejsu edytora metadanych do odczytywania atrybutów DRM plików bez łączenia z biblioteką statyczną DRM.
Uwaga: Ten przykład nie jest obsługiwany w wersjach systemu Windows opartych na architekturze x64. |
DrMShow | DRMShow to aplikacja konsolowa, która pokazuje, jak odczytywać właściwości DRM pliku Windows Media przy użyciu metody IWMDRMReader::GetDRMProperty. W tym przykładzie pokazano użycie metody IWMDRMReader::GetDRMProperty i właściwości, które można pobrać z czytnika DRM. Nie pokazuje, jak uzyskać licencję na zawartość chronioną przez drM. Ten przykład wymaga skompilowania biblioteki wycinków DRM WMStubDRM.lib. Uwaga: Ten przykład nie jest obsługiwany w wersjach systemu Windows opartych na architekturze x64. Po uzyskaniu biblioteki WMStubDRM.lib od firmy Microsoft zostanie przypisany poziom zabezpieczeń aplikacji. Jeśli otrzymany poziom zabezpieczeń biblioteki nie jest wystarczający do odtwarzania chronionego pliku, ten przykład wyświetli błąd. |
DirectShowInterop/DSCopy | Transkoduje jeden lub więcej plików do formatu ASF, używając filtru zapisywania DirectShow WM ASF Writer. Plik wejściowy może być dowolnym skompresowanym lub nieskompresowanym formatem obsługiwanym przez directshow. |
DirectShowInterop/DSPlay | Ten przykład jest interaktywnym odtwarzaczem plików audio/wideo z obsługą DRM. Używa filtru DirectShow ASF Reader do odtwarzania plików Windows Media (ASF, WMA, WMV) bez ochrony DRM i plików, które używają DRM na poziomie 100 lub poniżej. Aby uzyskać więcej informacji, zobacz readme.txt w katalogu próbek. |
DirectShowInterop/DSSeekFm | W tym przykładzie pokazano, jak używać filtra DirectShow WM ASF Reader do odtwarzania zawartości ASF w grafie filtrów DirectShow, a także jak korzystać z obsługi wyszukiwania ramek w zestawie SDK formatu Windows Media. |
Managed/WMFSDKWrapper | Zarządzana biblioteka służy jako opakowanie używane przez przykłady kodu w zarządzanym środowisku do uzyskiwania dostępu do niektórych interfejsów metadanych tego SDK. |
Zarządzanie/Edytowanie Metadanych | Ta aplikacja w języku C# może służyć do wyświetlania i edytowania metadanych z plików Windows Media. |
EdycjaMetadanych | Jest to wersja języka C++ aplikacji Managed MetadataEdit. |
ReadFromStream | W tym przykładzie aplikacji konsolowej pokazano, jak odczytywać dane z IStream za pomocą elementu WMReader.
źródło IStream zostało zaimplementowane do użycia pliku w formacie Windows Media Format (WMA/WMV/ASF).
Uwaga: Ten przykład nie pokazuje, jak przetwarzać próbki multimedialne wychodzące z WMReader. Przykłady dotyczące przetwarzania audio/wideo lub innych typów przykładów multimediów można znaleźć w innych przykładach, na przykład AudioPlayer, które są dołączone do zestawu WINDOWS Media Format SDK. |
UncompAVIToWMV | W tym przykładzie aplikacji konsolowej pokazano niezbędny kod do skompresowania pliku AVI do pliku WMV. Pokazuje on, jak scalić przykłady strumieni audio i wideo z kilku plików AVI i scalić je z podobnymi strumieniami lub utworzyć nowy strumień na podstawie profilu strumienia źródłowego. Pokazano również, jak utworzyć dowolny strumień, wykonać kodowanie multipass, dodać kod czasu SMPTE i zastosować ochronę drM w wersji 1. |
WMGenProfile/exe | Ten przykład został zaktualizowany z wersji 7.1. Jest to teraz aplikacja dialogowa MFC. Przykład WMGenProfile demonstruje użycie biblioteki statycznej WMGenProfile. Służy również jako narzędzie do tworzenia profilów. To narzędzie jest przeznaczone dla deweloperów zaznajomionych z formatem Windows Media. Interfejs użytkownika nie został przetestowany pod kątem środowiska użytkownika i nie jest przeznaczony jako zalecenie dotyczące prezentowania tych informacji użytkownikowi. |
WMGenProfile/lib | Przykład biblioteki GenProfile demonstruje tworzenie profilów. Pokazano w nim, jak tworzyć typy i strumienie multimediów dla różnych typów strumieni (audio, wideo, skrypt, obraz, transfer plików i sieć Web). Nie pokazuje, jak pracować z profilami systemowymi ani jak konwertować je na profile określające kodeki serii Windows Media Audio i Video 9. |
WMProp | Ta aplikacja konsolowa pokazuje, jak pobrać atrybuty przy użyciu obiektu edytora metadanych i informacji o profilu z czytnika. |
WMStats | Ta aplikacja konsolowa wyświetla statystyki czytnika i zapisującego. Wiele wystąpień funkcji WMStats można również używać współbieżnie na jednej maszynie. Uruchom jedno wystąpienie jako serwer, aby wysłać strumień do sieci, a następnie uruchom drugie wystąpienie jako klient, aby sprawdzić, czy serwer przesyła strumień poprawnie. |
WMSyncReader | W tym przykładzie aplikacji konsolowej pokazano, jak odczytać plik multimedialny przy użyciu IWMSyncReader bez tworzenia dodatkowych wątków ani używania wywołań zwrotnych. Zaimplementowano następujące funkcje: odczytywanie skompresowanych lub dekompresowanych przykładów Wyszukiwanie oparte na czasie Wyszukiwanie oparte na ramce źródło pochodne IStream |
WMVAppend | Ta aplikacja konsolowa pobiera dwa pliki Windows Media na potrzeby danych wejściowych i próbuje utworzyć plik wyjściowy z zawartością pierwszego, a następnie drugiego. W przykładzie porównano profile dwóch plików wejściowych, aby upewnić się, że są one wystarczająco podobne do dołączenia. Jeśli tak nie jest, zostanie wyświetlony komunikat o błędzie. Na przykład komunikat o błędzie występuje, gdy jeden plik jest tylko plikiem audio, a drugi jest plikiem audio-wideo lub gdy dwa pliki audio mają różne szybkości bitów. Przykład akceptuje zmienne źródła szybkości bitów (VBR). Jednak podczas porównywania profilów dwóch źródeł VBR próbka ignoruje średnią różnicę szybkości transmisji bitów, ponieważ dwa strumienie VBR będą miały różne średnie szybkości transmisji bitów, nawet jeśli zostały utworzone przy użyciu tego samego profilu. WMVAppend nie może porównać szczytowej szybkości transmisji bitów strumieni VBR opartych na nieskonsolidowanej szybkości transmisji bitów ani poziomu jakości strumieni VBR opartych na jakości, ponieważ te informacje nie istnieją w plikach źródłowych. W związku z tym użytkownik jest odpowiedzialny za upewnienie się, że dwa pliki źródłowe są tworzone przy użyciu tego samego profilu. W przeciwnym razie można utworzyć nieprawidłową zawartość. |
WMVCopy | W tym przykładzie pokazano kod niezbędny do skopiowania pliku WMV. Pokazuje on, jak odczytywać i zapisywać skompresowane przykłady, odczytywać atrybuty nagłówka i skrypty oraz modyfikować atrybuty nagłówka. |
WMVNetWrite | Ta aplikacja konsolowa pokazuje, jak plik Windows Media jest przesyłany strumieniowo przez Internet. Przykład wymaga określenia portu, a następnie można odtworzyć plik przy użyciu odtwarzacza. |
WMVRecompress | Ta aplikacja konsolowa pokazuje, jak ponownie skompresować plik WMV. Demonstruje odczytywanie nieskompresowanych próbek, zapisywanie nieskompresowanych próbek i wykonywanie wieloprzepustowego kodowania, wielokanałowe dane wyjściowe oraz inteligentną rekompresję. |