H.264/MPEG-4 AVC

H.264 bir görüntü sıkıştırma standardıdır ve MPEG-4 Bölüm 10 ya da MPEG-4 AVC (Advanced Video Coding) in muadilidir. 2008 yılı itibarıyla, ITU-T, Video Coding Experts Group (VCEG), ISO/IEC (International Organization for Standardization/International Electrotechnical Commission) içindeki Moving Picture Experts Group (MPEG) tarafından oluşturulan Birleşik Video Ekibi (İngilizce: "Joint Video Team (JVT)") tarafından geliştirilen en son blok-yönelimli hareket-kompanzasyonuna dayalı çözücü standardıdır. ITU-T H.264 ve ISO/IEC MPEG-4 Bölüm 10 standartları (resmi adı, ISO/IEC 14496-10) birlikte sürdürülmektedir, dolayısıyla aynı teknik içeriğe sahiptirler. Standartın ilk nihai taslak metni Mayıs 2003'te tamamlanmıştır.

Genel

H.264/AVC projesinin amacı diğer mevcut standartlara göre oldukça düşük bit oranlarında (Örnek: MPEG-2, H.263 ya da MPEG-4 Bölüm 2'ye göre yarı yarıya bit oranı) ve gerçekleştirilmesi aşırı pahalı olacak karmaşık tasarımlar gerektirmeden iyi görüntü kalitesi sağlayacak bir standart yaratmaktı. Bir diğer hedef de yeterli esneklik sağlayarak standardın televizyon yayınları, DVD depolama, RTP/IP paket ağları ve ITU-T çoklu ortam telefon sistemleri gibi, düşük ya da yüksek bit oranları, düşük ya da yüksek çözünürlükte görüntü ihtiva eden geniş bir ağlar ve sistemler yelpazesinde çalışabilmesi ve geniş bir uygulama çeşitliliğine sahip olmasıydı.
H.264 aslında, bölümleri aşağıda listelenen profiller olan bir standartlar ailesidir. Herhangi bir çözücü bu profillerden en az birini çözer, ancak her birini çözmek zorunda değildir. Çözücü teknik özelliklerinde hangi profillerin çözülebildiği tanımlanır.
H.264/AVC'nin ilk sürümünün standardizasyonu Mayıs 2003'te tamamlanmıştır. Sonrasında JVT tarafından, Fidelity Range Extensions (FRExt) olarak bilinen eklentiler yayınlanmıştır. Bu eklentiler yükseltilmiş örnekleme bit derinliğini ve YUV 4:2:2 ve YUV 4:4:4 örnekleme yapılarını da içeren daha yüksek çözünürlüklü renk bilgisini destekleyerek daha yüksek kalitede görüntü kodlamayı imkânlı hale getirmiştir. Fidelity Range Extensions projesi ile ayrıca 4x4 ve 8x8 tam sayı çevrimleri arasında uyumlu anahtarlama, kodlayıcıya özgü algısal kuantizasyon ağırlık matrisleri, resimler-arası etkin kayıpsız kodlama ve ilave renk uzayları desteği gibi özellikler de eklenmiştir. Fidelity Range Extensions tasarım çalışmaları Temmuz 2004'te tamamlandı ve Eylül 2004'te de yayımlandı.
Daha yeni eklentiler arasında ağırlıklı olarak profesyonel uygulamalara yönelik beş yeni profil eklenmesi, ileri gam renk uzayı desteği, ilave görüntü oranı göstergeleri, iki farklı tipte "tamamlayıcı genişletilmiş bilgi" tanımlanması (post-filter hint ve tone mapping) ve endüstriden gelen geri beslemeye göre farklı olarak tasarlanması gerektiği görülen bir FRExt  profilinin içeriğinin daraltılması sayılabilir.
H.264/AVC Ek G'de belirlendiği şekliyle "Ölçeklendirilebilir görüntü kodlaması"(İngilizce: "Scalable Video Coding"), alt-bit akıntıları(İngilizce: "sub-bitstream") ihtiva eden H.264/AVC'ye uygun bit akıntıları(İngilizce: "bitstream") kurulmasına olanak verir. Geçici bit akıntısı ölçeklendirmesi (orijinal bit akıntısından daha küçük geçici örnekleme oranına sahip bir alt-bit akıntısı olması durumu) için alt-bit akıntısı türetilirken orijinal bit akıntısından bütün erişim üniteleri çıkartılır. Uzamsal ve kaliteli bit akıntısı ölçeklendirmesi için alt-bit akıntısı türetilirken orijinal bit akıntısından NAL (Network Abstraction Layer) çıkartılır. Bu durumda etkili kodlama için "katmanlar arası kestirme" yani düşük uzamsal çözünürlük ya da kalitedeki sinyal verileri kullanılarak daha yüksek uzamsal çözünürlük ya da kalitedeki sinyalin oluşturulması yöntemi kullanılır. "Ölçeklendirilebilir görüntü kodlaması" eklentisi Kasım 2007'de tamamlanmıştır.
ITU-T adlandırma sistemine göre H.264, standardın H.26x serisi Video Coding Experts Group (VCEG) görüntü kodlama standartlarının bir parçası olduğunu ifade eder; MPEG-4 AVC adı ise ISO/IEC ve MPEG isimlendirme sistemlerine göre standardın MPEG-4 standartlar dizisi olarak da bilinen ISO/IEC 14496'nın 10uncu bölümü (Advanced Video Coding) olduğunu ifade eder. Standart ITU-T içinde yürütülen H.26L adlı bir VCEG geliştirme projesinin devamı olarak VCEG ve MPEG'in ortak çalışması ile geliştirilmiştir. Bu sebeple ortak mirası yansıtan H.264/AVC, AVC/H.264, H.264/MPEG-4 AVC ya da MPEG-4/H.264 AVC adlarıyla atıfta bulunulması yaygındır. ITU-T tarihçesini yansıtan H.26L adı daha az yaygın olmakla birlikte hala kullanılmaktadır. Zaman zaman standardı geliştiren "Birleşik Video Ekibi(JVT)" ne atfen "JVT çözücüsü" de denildiği görülür. (Bu çeşit ortak geliştirme çalışmaları oldukça yaygındır. Örneğin MPEG-2 video çözücüsü standardı da MPEG ve ITU-T arasındaki ortak çalışma ile oluşturulmuştur ve ITU-T camiası içinde H.262 olarak bilinir.)

Standardizasyon kurulu ve tarihçe

1998 yılı başlarında "Video Coding Experts Group" (VCEG - ITU-T SG16 Q.6) "H.26L" adında bir proje üzerine taslak gönderilmesi için bir çağrı yayınladı. Projenin amacı mevcut diğer görüntü kodlama standartlarıyla karşılaştırıldığında iki katı yüksek verim elde edilebilecek ve geniş bir uygulama alanı olan yeni bir kodlama standardı oluşturmaktı. VCEG'in başkanlığını Microsoft'tan Gary Sullivan yapmaktaydı. İlk taslak Ağustos 1999'da oluşturuldu. 2000 yılında "Heinrich Hertz Institute, Almanya"'dan Thomas Wiegand VCEG eşbaşkanı oldu.
Aralık 2001'de VCEG ve MPEG bir araya gelip kuruluş amacı standardı son haline getirmek olan "Birleşik Video Ekibi (JVT)"'yi oluşturdular. JVT'ye Gary Sullivan, Thomas Wiegand ve Motorola'dan Ajay Luthra başkanlık etmekteydi. Haziran 2004'te  "Fidelity range extensions (FRExt)" projesi sonlandırıldı. Ocak 2005'ten Kasım 2007'ye kadar H.264/AVC'nin "Ölçeklendirilebilir Görüntü Kodlaması (SVC)" eklentisi üzerinde çalışıldı. Daha sonra Almanya Aachen Üniversitesinden Jens-Reiner Ohm  yönetim ekibine katıldı. Temmuz 2006'dan beri JVT üçboyutlu ya da çok bakışaçılı televizyona yönelik "Çokbakışlı Görüntü Kodlama"(İngilizce: "Multiview Video Coding (MVC)") üzerinde çalışmaktadır.

Patent ruhsatlandırması

Yazılım algoritmaları ile ilgili patentlerin tanındığı ülkelerde H.264/AVC standardını kullanarak ürün geliştiren üreticiler kullandıkları patentli teknolojiler için lisans ücreti ödemek zorundadırlar. Bu durum aynı zamanda Temel Profil için de geçerlidir. MPEG standardizasyon kuruluşuyla herhangi bir bağlantısı olmayan özerk bir kuruluş olan "MPEG LA" bu standart içinde uygulanan patentlerin ve aynı zamanda MPEG-2 Bölüm 1 Systems, MPEG-2 Bölüm 2 Video, MPEG-4 Bölüm 2 Video ve diğer teknolojilerin içindeki patent havuzunu yönetmektedir.
2005 yılında US Patent 5,452,104 ve 5,576,767 nolu patentlerin hak sahibi Qualcomm firması, H.264 görüntü sıkıştırma standardına uygun ürünler piyasaya sürerek patent haklarını ihlal ettiği gerekçesiyle Broadcom firması aleyhine Amerikan bölge mahkemesinde dava açmıştır. 2007 yılında Bölge Mahkemesi Qualcomm'un Mayıs 2003'te H.264 standardının yayınlanmasından önce JVT'ye teslim etmediği için bu patentlerin bağlayıcı olmadığına karar verdi. Aralık 2008'de Amerikan Temyiz Mahkemesi Bölge Mahkemesinin kararını onaylamakla beraber Bölge Mahkemesine bağlayıcı olmamanın kapsamını limitlemesi için bir yazı gönderdi.

Patentler ve GNU Ücretsiz Yazılım ruhsatları

H.264 gibi çözücülerin ücretsiz yazılım uygulamalarının yasallığı üzerine, özellikle H.264 ve diğer patentli çözücü uygulamalarının geliştirilmesinde GNU LGPL ve GPL kullanımı konusunda sık sık tartışmalar olmaktadır. Tartışmalar sonunda varılan uzlaşma kullanım haklarının yerel yasalara göre belirlenmesidir. Eğer ürünler H.264'ün kapsadığı patentlerin hiiçbirinin uygulanmadığı ülke ya da ülkelere ihraç edilecekse LPGL kullanılarak geliştirilen bir çözücü herhangi bir sorun yaratmaz: Yazılım lisansı ile (eksik) patent lisansı arasında bir anlaşmazlık yoktur.
Aksine LGPL kullanılarak geliştirilmiş bir H.264 kodlayıcı/çözücüyü ABD içinde piyasaya sürmek çözücü uygulaması yazılım lisansı ihlali anlamına gelir. Basitçe söylenirse LGPL ve GPL lisansları kodun dağıtımıyla bağlantılı tüm hakların kodu alana da uygulanmasını gerektirir, kullanım ya da dağıtım ile ilgili daha öte sınırlamalar yoktur. Eğer bir patent lisansı için aranma gereksinimi varsa bu GPL ve LGPL koşullarının açık bir ihlalidir. Bu nedenle patent ipotekli bir kodu bu lisanslar altında satmak GPL ve LPGL koşullarına göre geçersiz kılınmaktadır.

Uygulamalar

H.264 görüntü çözücünün düşük bit oranlı akan internet uygulamalarından HDTV ve kayıpsız kodlamalı Sayısal Sinema uygulamalarına kadar her türlü sıkıştırılmış sayısal görüntü çeşitlerini içeren geniş bir uygulama alanı vardır. H.264 kullanılarak %50'ye kadar bit oranı tasarrufu sağlanabilmektedir. Örneğin, aynı Sayısal Uydu TV kalitesi MPEG 2'nin 3.5 Mbit/s oranıyla kıyaslandığında 1.5 Mbit/s ile sağlanabilmektedir. Uyumluluk ve H.264/AVC'nin problemsiz uygulanmasını garantilemek için pek çok standart kuruluşu kendi görüntü standartlarına bu standartları kullananların H.264/AVC'yi uygulayabilmesi için eklentiler yapmışlardır.
Blu-ray disk formatı ve şimdilerde piyasadan kalkan HD DVD formatı H.264/AVC Yüksek Profil'ini 3 zorunlu görüntü sıkıştırma çözücüsünden biri olarak içermektedirler. Sony de bu formatı Taşınabilir Hafıza Kartlarının Görüntü formatı olarak benimsemiştir.
2004 yılı sonlarında Sayısal Görüntü Yayını projesi (DVB) televizyon yayınlarında H.264/AVC'nin kullanımını onaylamıştır. ABD'deki "İleri Televizyon Sistemleri Komitesi (ATSC)" standart kuruluşu Amerikan televizyon yayınlarında kullanılan opsiyonel Enhanced-VSB transmisyon modu için bir veya ik adet ileri görüntü çözücüsü tanımlama olasılığını değerlendirmektedir. H.264/AVC ve VC-1'i CS/TSG-659r2 ve  CS/TSG-658r1 olarak aday standartlar içine dahil etmiştir.
AVCHD Sony ve Panasonic tarafından tasarlanan ve H.264 kullanan bir yüksek-tanımlı kayıt formatıdır. AVC-Intra ise Panasonic tarafından geliştirilen sadece çerçevelerarası bir sıkıştırma formatıdır.