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.]
Aby zmienić częstotliwość odtwarzania, wywołaj metodę IMediaSeeking::SetRate. Określ nową stawkę jako ułamek oryginalnej stawki. Aby na przykład grać z dwukrotnie normalną prędkością, użyj następującego polecenia:
pSeek->SetRate(2.0)
Stawki większe niż jeden są szybsze niż zwykle. Prędkości od zera do jednego są wolniejsze niż normalne. Ujemne prędkości są definiowane jako odtwarzanie wsteczne, ale w praktyce większość filtrów tego nie obsługuje. Obecnie żaden ze standardowych filtrów DirectShow nie obsługuje odtwarzania odwrotnego.
Niezależnie od częstotliwości odtwarzania bieżąca pozycja i położenie zatrzymania są zawsze wyrażane względem oryginalnego źródła. Na przykład, jeśli plik źródłowy ma 20 sekund długości w normalnym tempie odtwarzania, ustawienie bieżącej pozycji na 10 sekund przeniesie odtwarzanie do środka pliku. Jeśli szybkość odtwarzania wynosi 2,0, pozycja zatrzymania wynosi 20 sekund i dążysz do 10-sekundowej pozycji, plik będzie odtwarzany przez 5 sekund czasu rzeczywistego: wartość 10 sekund, przy dwukrotnej normalnej szybkości odtwarzania. Przy częstotliwości odtwarzania wynoszącej 2,0 bieżąca pozycja zwiększa się z dwukrotnie większą szybkością zegara odniesienia.