Co to jest klatka kluczowa? (Keyframe)
Klatka kluczowa (ang. Keyframe) to klatka w sekwencji wideo lub animacji, która zawiera pełne informacje o obrazie i służy jako punkt odniesienia dla innych klatek. W kompresji wideo klatki kluczowe umożliwiają efektywną redukcję rozmiaru plików, a w animacji są używane do określenia kluczowych pozycji, ruchów lub zmian w czasie.
W kompresji wideo klatki kluczowe są zazwyczaj I-Frames (Intra-coded Frames), co oznacza, że zawierają pełne dane obrazu, a kolejne klatki mogą odnosić się do nich, zamiast przechowywać całość informacji.
Rodzaje klatek w kompresji wideo
W systemach kodowania wideo klatki są podzielone na trzy główne typy:
- I-Frame (Intra-coded Frame, Klatka Kluczowa)
- Pełna klatka obrazu, niezależna od innych klatek.
- Najwyższa jakość, ale największy rozmiar.
- Stosowana jako punkt odniesienia dla innych klatek.
- P-Frame (Predicted Frame)
- Przechowuje tylko zmiany w obrazie w stosunku do poprzedniej klatki kluczowej.
- Redukuje rozmiar pliku, ale wymaga odniesienia do wcześniejszych klatek.
- B-Frame (Bidirectional Frame)
- Przechowuje informacje na podstawie zarówno poprzednich, jak i przyszłych klatek.
- Najmniejszy rozmiar, ale wymaga większej mocy obliczeniowej do dekodowania.
Dzięki tym mechanizmom wideo może być silnie skompresowane bez utraty jakości wizualnej, ponieważ klatki P i B bazują na klatkach kluczowych I-Frame.
Jak działa klatka kluczowa w kompresji wideo?
- Kodowanie klatek kluczowych - Pierwsza klatka w sekwencji jest zazwyczaj I-Frame, zawierającą pełne informacje obrazu.
- Przechowywanie różnic między klatkami - Kolejne klatki P i B przechowują tylko zmiany, co znacznie zmniejsza rozmiar pliku.
- Dekodowanie - Podczas odtwarzania odtwarzacz najpierw ładuje klatkę kluczową, a następnie rekonstruuje pozostałe klatki na podstawie przechowywanych różnic.
Ustawienie częstotliwości klatek kluczowych w kodekach wideo wpływa na balans między jakością a stopniem kompresji.
Zastosowanie klatek kluczowych
- W kompresji wideo
- Stosowane w kodekach H.264, H.265, VP9, AV1 w celu redukcji rozmiaru plików i optymalizacji streamingu.
- Wpływają na jakość obrazu i płynność przewijania wideo – większy odstęp między klatkami kluczowymi oznacza lepszą kompresję, ale trudniejsze przewijanie.
- W animacji komputerowej i grafice
- Używane w programach takich jak Adobe After Effects, Blender, Maya do definiowania kluczowych pozycji obiektów w animacji.
- Program interpoluje wartości między klatkami kluczowymi, tworząc płynne ruchy.
- W transmisji strumieniowej i kodowaniu wideo na żywo
- W serwisach streamingowych takich jak YouTube, Netflix, Twitch odpowiednie ustawienie klatek kluczowych wpływa na jakość transmisji i stabilność strumienia.
- Zalecane ustawienia dla transmisji: klatka kluczowa co 2–5 sekund dla optymalnej jakości.
Klatka kluczowa to fundamentalny element w kompresji wideo i animacji, który określa kluczowe punkty zmian w obrazie. W wideo pełni rolę I-Frame, który przechowuje pełne informacje obrazu, a w animacji wyznacza kluczowe pozycje obiektów w czasie. Dzięki odpowiedniemu zarządzaniu klatkami kluczowymi można znacznie zmniejszyć rozmiar plików wideo, zachowując wysoką jakość obrazu.