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ą, windows Media Format 11 SDK, jest starszą funkcją. Został zastąpiony przez Source Reader oraz Sink Writer. Czytnik Źródeł i Zapis Ujściowy zostały zoptymalizowane pod kątem systemów Windows 10 i Windows 11. Firma Microsoft zdecydowanie zaleca, aby nowy kod używał Czytnika Źródeł i Modułu Zapisu Ujścia zamiast Windows Media Format 11 SDK, jeśli 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.]
Zawartość można transkodować z jednej szybkości bitów do innej przy użyciu zestawu SDK formatu Windows Media. Zwykle obejmuje to po prostu dekodowanie zawartości i ponowne kodowanie jej do żądanej szybkości bitów. Koder dekodera Windows Media Audio 9 obsługuje inteligentne rekompresje, co umożliwia transkodowanie, które zapewnia lepszą jakość niż zwykle.
W przypadku inteligentnej rekompresji oryginalny strumień audio musi być zakodowany za pomocą kodera audio systemu Windows Media. Wszystkie wersje kodera-dekodera są obsługiwane, ale nie są obsługiwane wyspecjalizowane koderi audio (Windows Media Audio 9 Professional i Windows Media Audio 9 Voice). Jeśli oryginalny dźwięk został zakodowany przy użyciu bezstratnego kodeka Windows Media Audio 9, nie ma potrzeby używania inteligentnej rekompresji, ponieważ żadne informacje nie zostały utracone w oryginalnym kodowaniu.
Aby użyć inteligentnej rekompresji, wykonaj następujące kroki.
- Skonfiguruj obiekt czytnika z plikiem źródłowym do odczytu. Aby uzyskać więcej informacji, zobacz Odczytywanie plików ASF.
- Skonfiguruj obiekt zapisywania do użycia na potrzeby transkodowania pliku. Ustaw nazwę pliku dla nowego pliku. Wybierz profil, który ma być używany dla nowego pliku. Ustaw wybrany profil w obiekcie piszącym. Aby uzyskać więcej informacji, zobacz Zapisywanie plików ASF.
- Pobierz wskaźnik do interfejsu IWMProfile obiektu czytnika, wywołując IWMReader::QueryInterface.
- Pobierz interfejs IWMStreamConfig dla strumienia audio do transkodowania przez wywołanie IWMProfile::GetStream.
- Aby pobrać interfejs IWMMediaProps dla obiektu konfiguracji strumienia, wywołaj IWMStreamConfig::QueryInterface.
- Aby pobrać strukturę WM_MEDIA_TYPE dla strumienia, wykonaj dwa wywołania IWMMediaProps::GetMediaType. Najpierw uzyskaj rozmiar struktury, a następnie przydziel pamięć dla bufora, aby wykorzystać go przy drugim wywołaniu.
- Pobierz wskaźnik do interfejsu IWMInputMediaProp s dla danych wejściowych w składniku zapisywania, wywołując IWMWriter::GetInputProps.
- Pobierz interfejs IWMPropertyVault dla obiektu właściwości nośnika wejściowego, wywołując IWMInputMediaProps::QueryInterface.
- Użyj metody IWMPropertyVault::SetProperty, aby ustawić właściwość g_wszOriginalWaveFormat. Użyj struktury WAVEFORMATEX uzyskanej w kroku 6 jako wartości właściwości.
- Uwzględnij zmiany wprowadzone we właściwościach wejściowego medium, wywołując IWMWriter::SetInputProps i przekazując wskaźnik do interfejsu IWMInputMediaProps.
- Rozpocznij odczytywanie przykładów z oryginalnego pliku i przekazywanie ich do modułu zapisywania poprzez wywołania funkcji IWMWriter::WriteSample.
Tematy pokrewne