# Ustawienia kodeków

## Systemowe, czy wbudowane?

Light Alloy współpracuje zarówno z kodekami systemowymi, jak i wbudowanymi, które są ustawione w odtwarzaczu jako domyślne. Jeśli jednak ktoś jest uparty (kwestia przyzwyczajenia), może podłączyć zewnętrzne filtry (np. odpowiednio skonfigurowany FFDShow Video Codec). Podłączenie zewnętrznych filtrów pozwala na korzystanie z zaawansowanych możliwości przetwarzania obrazu, które (niekiedy) przewyższają wbudowane. Jeśli użytkownik chce, może to zmienić w Ustawienia -> Kodeki (w trybie rozszerzonym).

Istnieje kilka sposobów na zaznaczanie i usuwanie zaznaczenia z pól wyboru:

- pojedynczo;
- wg kategorii (za pomocą pola wyboru w nagłówku kategorii);
- wszystkie na raz (za pomocą menu kontekstowego).

Oznaczone pozycje wskazują, że dla tych elementów będą używane wbudowane kodeki.

### Wbudowane kodeki

Istnieją dwa tryby pracy z wbudowanymi kodekami:

- dawanie pierwszeństwa (preferowanie) dla wbudowanych kodeków;
- używanie tylko wbudowanych kodeków.

Domyślnie odtwarzacz pracuje w pierwszym trybie: używa wbudowanych kodeków, ale dodatkowo wczytuje brakujące lub szczególnie uporczywe zewnętrzne filtry (np. odpowiednio skonfigurowany FFDShow Video Codec). Zapewnia to odtwarzanie plików za wszelką cenę, a także łączy wygodną obsługę ścieżek plików wideo z rozszerzonym ich przetwarzaniem za pomocą pośrednich filtrów zewnętrznych (np. FFDShow Video Codec może uczestniczyć w podwyższaniu płynności wideo).

Jeśli chcesz używać tylko wbudowanych kodeków, musisz w Ustawienia -> Kodeki zaznaczyć pole wyboru "Ignoruj kodeki systemowe". Wtedy odtwarzacz nie użyje kodeków systemowych w żadnych okolicznościach. Spowoduje to zwiększenie szybkości otwierania plików.

Jednak należy zauważyć, że wbudowane kodeki mogą wszystkiego nie odtworzyć. W szczególności nie można odtworzyć takich typów plików: .ape (Monkey's Audio), .wmv, .wma (Windows Media), czasami występują również problemy z odtwarzaniem .avi. Należy więc pamiętać, że po zaznaczeniu "Ignoruj kodeki systemowe" nie wszystko będzie odtwarzane.

### Kodeki systemowe

Light Alloy umożliwia bardzo szybkie ustalenie, które kodeki systemowe będą używane. Użyje odpowiedniego kodeka systemowego, jeśli z wbudowanymi są problemy lub jeśli systemowe są bardziej powszechne.

Uwaga: używanie zewnętrznych splitterów w Light Alloy może doprowadzić do niemożności przełączania ścieżek dźwiękowych lub zaznaczenia napisów!

## Drzewko filtrów

W tym oknie widoczne są wszystkie filtry, które są używane do odtworzenia aktualnego pliku.

Po kliknięciu myszką na filtrze, z lewej strony wyświetlane są informacje serwisowe filtra.

Po prawej stronie widać wyraźnie połączone ze sobą panele, w istocie jest to graficzne zobrazowanie drzewka filtrów.

Zielony panel - to splitter. Wyodrębnia on z pliku strumienie i przekazuje je do kodeków (dekoderów).

Niebieskie panele - to kodeki (dekodery). "Rozpakowują" one strumienie do wyjścia na ekran lub do przetwarzania za pomocą filtrów.

Fioletowe panele - to filtry uzupełniające, które używają dla strumieni różnych efektów. Na przykład, dla dźwięku używane jest miksowanie kanałów (np. 5.1 -> 2.0), dla wideo - jasność/kontrast, dla napisów - obrys, cień.

Czerwone panele - to urządzenia wyjściowe. Wszystko to, co jest do nich przekazywane, znajdzie się na wyjściu głośnikowym i na ekranie.

Kolor paneli jest warunkowy. Tak więc, kodek (dekoder) może być wyświetlany w kolorze białym, a filtr uzupełniający, jako niebieski panel.

Większa część paneli w lewym górnym rogu posiada znaczek lupy. Oznacza to, że dwuklik na panelu otworzy okno z ustawieniami lub statystykami filtra.

## Szybka informacja o strumieniach audio i wideo

Oprócz drzewka filtrów informującego o pracy filtrów, można otrzymać specjalne komunikaty OSD za pomocą klawiszy Q i Ctrl+Q.

### Systemowe OSD

Q - pokazuje / ukrywa krótkie informacje wg rodzaju i przetwarzania aktualnego strumienia wideo i audio.

### Statystyki generatora

Ctrl+Q - pokazuje / ukrywa statystyki generatora.

Statystyki współpracują z następującymi generatorami:

- WMR-9 RL;
- EVR CA;
- EVR Synс.

Zapełnienie statystyk uwarunkowane jest od generatora. Najbardziej pełne są z EVR CA.

### Transkrypcja znaczeń statystyki

Frame rate - mierzy szybkość odświeżania obrazu wideo, a następnie ją wyświetla, mierzona jest dwiema metodami - statystyczne (po lewej) i na podstawie danych odczytanych z Pin dekodera (po prawej). Dla zawartości DVD generator EVR CA i EVR Sync wykorzystują swoje własne metody.

- Avr - średnia szybkość odświeżania obrazu, wyliczona na podstawie kilku ostatnich scen filmu;
- Ref - bazowa szybkość odświeżania obrazu, odczytana z pliku wideo;
- P lub I - wideo progresywne lub z przeplotem, jeśli wykazywane dla miksera wideo;
- FrameT - szacowany\wyliczony czas wyświetlania jednej klatki, który jest obliczany na podstawie analizy kilku ostatnich klatek;
- FrameR - szybkość odświeżania obrazu, która jest obliczana na podstawie analizy kilku ostatnich klatek;
- Lock - wyświetla odbieganie częstotliwości klatek od powszechnie stosowanej częstotliwości klatek wideo, jak na przykład: 60, 60/1.001, 50, 48, 48/1.001, 30, 30/1.001, 25, 24 i 24/1.001 Hz;
- StdDev - średnia różnica w odstępach czasu wyświetlania klatek, która jest obliczana na podstawie analizy kilku ostatnich klatek;
- Clock - wynik dzielenia czasu wyświetlania klatki i szacowanego czasu klatki w procentach opartych na ostatniej klatce.

Settings - pokazuje używane opcje renderowania.

Formats - określa format powierzchni wykorzystywanych do renderingu obrazu wyjściowego.

- Surface - robocze powierzchnie wewnątrz łańcucha generatora, najczęściej używane powierzchnie X8R8G8B8, A2R10G10B10, A16B16G16R16F i A32B32G32R32F;
- Backbuffer - format powierzchni, wyprowadzony w łańcuchu wymiany na końcu łańcucha renderowania, albo X8R8G8B8, albo A2R10G10B10;
- Display - format powierzchni, wyprowadzony na wyświetlacz z łańcucha wymiany, zwykle jest to X8R8G8B8, ale może być również A2R10G10B10 w trybie wyłączności;
- Device - powinno być wyświetlane jako "D3DDevEx" dla Windows Vista i nowszych, "D3DDev" - dla dużo starszych OS;
- D3DExError: - 0x00000000 oznacza, że wystąpił błąd urządzenia D3DDevEx podczas obrazowania, dla dużo starszych OS (XP i starsze) powinien być widoczny status "No Ex Mode".

Refresh rate - część z funkcji VSync częstotliwości odświeżania ekranu monitora.

- Scan lines - liczba linii skanowania, zdefiniowana w czasie roboczego przejścia VSync i zaokrąglona częstotliwość klatek pochodząca z danych karty graficznej;
- Last duration - czas trwania ostatniej klatki;
- Corrected Frame Time - "Yes" lub "No", wyświetla, czy aktywna jest funkcja korekcji błędnych sygnatur czasowych dla wideo VC-1 w kontenerach transportujących strumienie MPEG.

Sync offset - wyświetla minimalną, maksymalną, średnią rozbieżność i średni czas przesunięcia, spowodowany synchronizacją pionową w przeciwieństwie do stałego regulatora czasowego\generatora czasu klatek.

Jitter - wyświetla minimalne, maksymalne, średnie wariacje błędu synchronizacji w widoku cykli sygnału cyfrowego, używanych w łańcuchu renderującym.

Subtitles - informacja związana z wyświetlaniem napisów na wierzchu wideo.

- Free - liczba wolnych klatek w łańcuchu;
- Allocated - liczba gotowych i oczekiwanych klatek w łańcuchu;
- Buffered - liczba klatek skopiowanych do karty graficznej;
- Queue start - czas w sekundach do lub po wypełnieniu bufora napisów;
- Queue end - czas w sekundach do lub po opróżnieniu bufora napisów.

VBlank Wait - różnica czasowa między ostatnią linią jednej klatki i rozpoczęciem pierwszej linii następnej klatki.

- Start - linia, od której zaczyna się ostatnia klatka;
- End - linia, na której kończy się ostatnia klatka;
- Wait - czas oczekiwania na wygaszenie pionowego interwału;
- Lock - okres blokowania możliwości prezentacji w czasie wygaszania pionowego interwału;
- Offset - przesunięcie w widoku wielu linii od początku wygaszania pionowego interwału;
- Max - najwyższa zmierzona wartość przesunięcia;
- End Present - linia, na której zakończyła się prezentacja ostatniej klatki.

Present Wait - aktualny, minimalny i maksymalny czas oczekiwania po zakończeniu przetwarzania klatki i rzeczywistego jej przedstawienia.

Paint Time - aktualny, minimalny i maksymalny czas kolejkowania wszystkich poleceń dla ukończenia renderowania klatki w kolejce klatek przed przedstawieniem tej klatki.

Raster Status - aktualny, minimalny i maksymalny czas oczekiwania na zakończenie klatki.

Buffering - pokazuje ilość próbek w buforze oczekujących na wyświetlenie i ilość wyświetlonych próbek w danym momencie.

- Buffered - ilość zakończonych klatek w buforze klatek miksera.
- Free - ilość wolnych klatek w buforze klatek miksera.
- Current surface - klatka, która w danym momencie jest renderowana z bufora.

Video size - pokazuje rozmiar klatki odtwarzanego pliku wideo i współczynnik proporcji ekranu (Aspect Ratio).

DXVA - pokazuje generację włączonej akceleracji sprzętowej (DXVA1 \ DXVA2) i używany dekoder sprzętowy.

Render device - pokazuje urządzenie renderujące (generujące), tzn. markę Twojej karty graficznej.

DirectX SDK - pokazuje numer DirectX SDK używany do kompilacji Light Alloy.

Decoder - nazwa używanego dekodera wideo.

Mixer format - format powierzchni (nakładki) wysyłanej do\od miksera.

- Input - format wysyłany do miksera z dekodera.
- Output - format wysyłany do łańcucha renderującego z miksera.

Wykresy - są to krzywe jittera (jitter curve) pokazujące przedział czasowy między czasem oczekiwania klatki na wyświetlenie i realnym wyświetleniem na ekranie. Sama oś czasu, którą przecinają zależności, jest zerowym odniesieniem do krótkich linii - co 10 ms i długich linii - co 40 ms. Jeśli krzywa znajduje się powyżej osi czasu, to synchronizacja jest prawidłowa. Tutaj można zorientować się, czy płynność (smoothless) wyświetlania obrazów jest prawidłowa, potrząsanie - wystarczające, przynajmniej w Windows XP, zrównanie grafiki w trybie okienkowym i w trybie Direct3D (jak w grach).