M-JPEG - standard kodowania obrazu
Metoda kompresji M-JPEG lub MJPEG (Motion JPEG) to format kompresji wideo, w którym każda klatka wideo lub pola z przeplotem cyfrowej sekwencji wideo są kompresowane oddzielnie, każda jako obraz JPEG. |
Pierwotnie standard ten został zaprojektowany do zastosowań multimedialnych PC. Obecnie M-JPEG jest wykorzystywany przez oprogramowanie oraz takie urządzenia jak przeglądarki internetowe, odtwarzacze multimedialne, konsole do gier, aparaty cyfrowe, kamery IP, kamery internetowe, streaming serwery, kamery wideo oraz nieliniowe edytory wideo. |
Obsługę M-JPEG zapewnia wiele kamer IP, co wynika m.in. z tego, że przeglądarki takie jak Mozilla Firefox i inne, oparte na Webkit (silnik przeglądarki internetowej oparty na zasadach open source), posiadają natywne wsparcie dla wyświetlania strumieni w M-JPEG. |
Kolejnym ważnym powodem częstego stosowania M-JPEG w kamerach IP jest możliwość przesyłania strumieniowego. Strumień HTTP dzieli każdy obraz na poszczególne odpowiedzi HTTP z określonym znacznikiem. Strumieniowe RTP tworzy pakiety sekwencji obrazów w formacie JPEG, które mogą być odbierane przez programy klienckie, np. QuickTime lub VLC. Natywne wsparcie przeglądarek stosują: Safari, Google Chrome i Firefox. Inne przeglądarki, np. Internet Explorer mogą wyświetlać M-JPEG za pomocą odpowiednich wtyczek. |
Kodowanie M-JPEG stosuje wyłącznie wewnątrzklatkową metodę kompresji. Nie posiada algorytmów bardziej złożonych obliczeniowo, wykorzystujących techniki przewidywania międzyobrazowego. Podczas gdy nowoczesne metody kompresji wideo takie jak MPEG-4 i H.264/AVC, mogą osiągnąć stopnie kompresji 1:50 lub większej, brak w M-JPEG predykcji międzyobrazowej (przewidywania międzyobrazowego) ogranicza jego wydajność do 1:20 lub mniejszej, w zależności od tolerancji artefaktów na obrazie wyjściowym. Ponieważ klatki są kompresowane niezależnie od siebie, M-JPEG stawia mniejsze wymagania sprzętowe dla mocy obliczeniowej oraz pamięci. |