I-Frame ve GOP video kodek terimleridir. Bir video TV’de, YouTube’da veya herhangi bir ortamda görüntülenmesi için encode (kodlamak) edilir ve sıkıştırılmaya ihtiyacı vardır. Eğer saniyede 24 kare (Frame per Second) bir video izliyorsanız, aslında gerçekte 24 tam resim görmüyorsunuz. Bunun yerine, inter frame (I Frame), predicted Frame (P Frame), ve bi-directionally predicted Frame (B-Frame) birleşiminden oluşan bir takım GOP (Group of Pictures) – resim grubu görüyorsunuz. Kodek tipine bağlı olarak, bir GOP 15 kareden (frame) fazla olabilir.
I Frame (inter frame) resmin tümüdür. Elbette, I-Frame’de sıkıştırılmıştır. (aynı şekilde bir JPEG’de sıkıştırılmış bir resimdir.) ancak I frame resmin tamamını ifade eder ve her piksel I frame içindedir. Her GOP (Group of Pictures), I Frame ile başlar. Ardından P frame’ler ve B frame’ler gelir. P frame’ler önceki frame’leri referans alır ve B frame önceki ve gelecek frame’leri baz alır. Basit bir şekilde açıklayacak olursak, P frame’ler ve B frame’ler tamamlanmamış resimlerdir öyle ki I frame’i referans alırlar ve resimdeki tüm alanlarda değil yalnızca değişimin olduğu yerlerde resme katkı sağlarlar.
Bir yol düşünelim yol kenarında ağaçlar ve gökyüzünde bulutlar ve bu yolda hiçbir şey hareket etmiyor. (ağaç dalı yaprakları ve bulut hareketleri hariç) Amacımız da yoldan geçen arabaların görüntüsünü kaydetmek olsun. Kameramız tripod ile sabitlenmiş durumdadır. Kodeğin ilgileneceği şey geçiş yapacak olan arabalardır. I frame referans kareyi sağladığı için, kodek gökyüzündeki bulutları ya da yol kenarında duran bitkileri, ağaçları her frame’de yeniden oluşturmaya ihtiyaç duymaz. P frame ve B frame yalnızca hareketi yakalamayla ilgilenir.
I frame’e referans alan tamamlanmamış kareler yani P frame , B frame sayesinde kodek önemli ölçüde hem tüketilen bant genişliği hem de depolama alanı için alandan tasarruf sağlar. Bu sayede 1080p video için, player videonun her bir frame’i için 2 megapiksel resmi yüklemeye gerek duymaz. Ayrıca dosya boyutu küçülmüş olduğundan video akışı internet üzerinden daha rahat ve kolay bir şekilde transfer edilir.
Yukarıdaki resme bakacak olursak, kuş orman üzerinde uçuş yapıyor. H.264 olarak kodlanmış bu videonun her bir frame’ini yani 5 frame’i tek tek inceleyecek olursak, yalnızca ilk frame normal görünür diğer frame’lerde ilk frame’e göre meydana gelen değişiklikler görülür. Bu örnekte, arkaplan statik (ağaçlar hareket etmiyor, bulut hareket etmiyor, ağaç dalları ve yaprakları hareket etmiyor kısacası hiçbirşeyin arkaplandaki hiçbirşeyin hareket etmediği durumda) olduğu için H.264 videonun toplam boyutunu azaltmak için arka planı tamamiyle göz ardı eder. Sonuçta ise küçük bir video dosyası içine tonlarca bilginin paketlendiği video formatıdır ancak decode işlemi için ilave işlem gücü gerektirir.
H.264 bu yolla video dosyasını I Frame, P frame , B frame’den oluşan bir grup frame içinde toplar.
Toparlayacak olursak;
I frame, her grubun başlangıcında kullanılır. “KEY FRAME” ya da Anahtar kare olarak da bilinir. I frame, grup içindeki kalan diğer frame’ler için referans bir kare olarak davranır.
P frame, bir önceki I frame ya da P frame’e göre meydana gelen değişikliği içerir.
B frame, P frame ile hemen hemen benzerdir ancak küçük bir fark vardır. P frame de olduğu gibi B frame’de önceki I frame/P frame’e bakar ya da gelecek I/P frame’lere bakar.
Yine yukarıdaki resimden örnek verelim. Örneğin 5.frame’e erişecek olduğunuzu düşünelim. 5.frame B frame öncelikle en yakın P Frame gidilir, sonra P frame ile ilgili olan ve öncesindeki en yakın I Frame’e gidilir. Şu an itibariyle, 5. frame’i bir bütün olarak gösterebilmek için gerekli tüm frame’ler artık elimizde.
Günümüzde H.264 dışında , H.265 ya da üreticilere özel patentli farklı kodekler ve sıkıştırma formatları kullanılmaktadır. Örneğin Axis zipstream teknolojisini kullanırken, Pelco smart compression, Avigilon HDSM smart codec gibi farklı isimler altında farklı yüzdesel değerlerle sıkıştırma yapabilmektedir. I frame değeri müdahale edilebilir bir değerdir ve IP kameranın genellikle video parametrelerinin olduğu sayfadan değiştirilebilmektedir.
Bir sonraki yazıda üreticilerin patentli sıkıştırma formatları ile devam ediyor olacağız.