On Fri, 21 Jan 2011, Paweł wrote:
> Efekt jaki opisujesz wynika z zasady wyświetlania obrazu przez komputer.
> Nie można go całkowicie uniknąć.
Ależ można.
Ustawiając częstotliwość odświeżania na wielokrotność częstotliwości
ramek filmu i włączając synchronizację "odchylania pionowego"
(częstoliwości ramek obrazu) z wymianą bufora.
Od czasów DOSa się dawało! (aplikacja generująca obraz musiała
przejąć kontrolę nad kartą, ale to szczegół).
Osobna sprawa, to czy:
- karta grafiki do spóły z driverem pozwoli ustawić 50 lub 75Hz dla
oczekiwanych 25 fps; dla tzw. "FullHD" (1920x1080++) ponad
60 Hz jest ponad specyfikacją single-DVI (pasma brakuje), więc nie
oczekiwałbym, a 50 Hz jest "niezwyczajowe", więc... takoż (mimo,
że w zasadzie hardware by mógł).
Ale zarówno dla mniejszych rozdzielczości 75Hz jak i "HD" na dual-DVI
(monitory "3D"/stereo z przełączaniem ramek) 100Hz powinno się
dać - jak ktoś wie, niech się pochwali czy wymuszanie synchronizacji
bufora (choćby tylko w trybie full-screen) jest we współczesnych
Windows i Linuksach dostępne dla aplikacji (odtwarzacza), bo
synchronizacja to warunek drugi (i odrębny) braku "złamań".
> Upraszczając nieco zagadnienie ...
> Film to 25 klatek na sekundę.
No właśnie.
Więc:
1. problem powinien być tylko dla "standardowych" 60Hz
Co najmniej NVidia (akurat mam w komputerze przed nosem) *pozwala*
ustawić 75Hz dla niższych rozdzielczości (również dla LCD po DVI),
mało tego, moje monitory to potwierdzają (jeden pozwala odczytać
wartości, drugi się drze że częstotoliwość mu się nie widzi ;))
2. powyższa uwaga jest sprzeczna z tezą że "złamanie" jest widoczne
dłuższy czas, powinno być (naraz!) kilka "złamań"[1] - jedno sugeruje
że problemem jest synchronizacja przełączania buforów w złym
miejscu
[1] dla "60 Hz 25 fps" - chętni mogą sobie narysować gdzie będą
granice ramek i buforów przy kolejnych cyklach niesynchronicznego
"rysowania" :D
Dla jasności - z "przełączaniem bufora" chodzi o to, że aby uniknąć
różnych "efektów" w trakcie rysowania kolejnych klatek (niekoniecznie
filmu!) karta przygotowuje kompletny obraz następnej klatki - i dopiero
jak jest gotowy "przełącza" cały obraz.
Jeśli dane z klatek filmu są podawane niesynchronicznie z początkami
*rysowania* klatek, to właśnie powinno pojawić się "złamanie".
Problem jest na granicy driver-hardware, więc może ktoś jednak :)
napisze, czy aplikacja (np. pod Windows XP .. 7) ma możliwość bądź
wymuszenia bądź uzyskania informacji *kiedy* następuje przełączenie
ramek.
pzdr, Gotfryd
Received on Sat Jan 22 01:00:31 2011
To archiwum zostało wygenerowane przez hypermail 2.1.8 : Sat 22 Jan 2011 - 01:51:03 MET