İçeriğe geç

İncelenen Video Kod Dönüştürme: AMD, Intel ve Nvidia Derinlemesine

    1651450023

    Görüntü Kalitesi: İncelendi

    Yakın zamanda ilk masaüstü Brazos mini-ITX anakartı incelememizde görüntü kalitesini ele aldık. Zaten okuduysanız, platformun görüntü kod çözme/kodlama yeteneklerini incelediğimizde bazı şaşırtıcı sonuçlar olduğunu biliyorsunuzdur. Diğer her şey eşit olduğunda, kodlanmış videonun çıktı kalitesi Intel ve AMD’yi karşılaştırırken oldukça benzerdi. Nvidia’nın CUDA hızlandırmalı çıktısı tamamen başka bir hikayeydi. İçinden pompaladığımız herhangi bir video, yüksek hareketli sahnelerde fark edilebilir blokajlara sahipti. Bu konuda daha önce uyarılmıştık, ancak durumun gerçekten ne kadar kötü olduğunu anlamak için çok fazla AB karşılaştırması gerekti.

    Bu da bizi günümüzün görüntü kalitesi testlerine getiriyor. Brazos kapsamımızdan arta kalan pek çok soru var, bunlar orada gerçekten alakalı değil, ancak kendi derinlemesine araştırmalarını hak ediyor.

    Temel Bilgiler: Codec’ler ve Kod Çözücüler

    İşin özüne dalmadan önce birkaç temel noktayı ele almamız gerekiyor. Bir codec bileşeni ile bir dosya kapsayıcı arasında ayrım yapmak önemlidir. Örneğin, Blu-ray içeriği genellikle bir .m2ts dosya uzantısıyla görülür. Ancak, BDAV (Blu-ray Disk Ses/Video) kapsayıcı biçimi temel olarak bir depolama paketidir. Üç olası kodlayıcı kullanılabilir: MPEG-2, H.264 ve VC-1.

    Peki, bir codec bileşeni ile bir kapsayıcı arasındaki tam fark nedir? En son tatilinizi düşünün. Bavulunuz dosya kabıdır ve seçtiğiniz bagaj türü, kıyafetlerinizi, banyo ürünlerinizi, bilgisayarınızı vb. nereye koyacağınızı belirler. Codec bileşeni (sıkıştırma açma), her şeyi (verileri) bagajınıza sığdırmak için ezme şeklinizdir. Bu temelde herhangi bir multimedya içeriği için geçerlidir. Örneğin, Microsoft’un AVI (Audio Video Interleave) formatı bir dosya kapsayıcıdır, ancak DivX’ten MPEG-2’ye kadar çeşitli kodeklerle kodlanmış videoya sahip olabilir.

    Bir video oynatıcıda bir şey oynattığınızda, genellikle, kodlanmış video verileri kod çözücüden geçer ve YUV verileri (renk alanı) olarak dışarı tükürülür ve ekranınıza konur. Kod çözücü, formatı tanır ve verileri, işleme tabi tutulabilecek ve görüntülenebilecek yararlı bilgilere dönüştürür.

    Şimdi, iki tür kod çözücü vardır: yazılım ve donanım. UVD, PureVideo ve Intel’in GMA 4500MHD’sinden önce, videonun kodu, ana bilgisayar işleme gücüne dayanan yazılım tabanlı kod çözücüler kullanılarak çözülüyordu. Bu yüzden herkes oynatma yazılımı hakkında büyük bir anlaşma yapardı. CyberLink ve InterVideo (şimdi Corel) şehirdeki tek büyük isimlerdi, bu da ATI’nin eskiden ATI DVD Kod Çözücüsü için PowerDVD kod çözücüyü neden lisansladığını açıklıyor. Elbette, yazılım kod çözücüleri, modern bir CPU’da performansa gerçekten zarar vermeyen, ancak mobil bir ortamda pil ömrüne kötü şeyler yapan işlemci döngülerini yerler.

    Yavaş yavaş, grafik kartı şirketleri bunu yakaladı ve GPU’da video işlemeye adanmış mantık devreleri olan sabit işlevli kod çözücüler geliştirdi. Bugün buna donanım hızlandırma diyoruz. Avantajı, iş yükü grafik işlemciye aktarılırken ana bilgisayar CPU kullanımının düşmesiydi (%0’a yaklaşıyor).

    Bunun bazı etkileri var. Bir kod çözücü videoyu işlediğinden, kalite veya verimlilik için bir temel çizgiyi net bir şekilde tanımlamak daha zordur. Video ister donanım ister yazılım tabanlı bir işlem hattından geçsin, bir şey bu video verileri monitörünüzde görünmeden önce pisliklerini çekiyor. Yazılımı kullanarak, kod çözücü kullanıyorsanız, sistemler arasında gerçekten bir karşılaştırma yapmanıza gerek yoktur. Yine de, aynı sistemi kullanarak, farklı kod çözücüler farklı bir görüntü verebilir veya görüntü kalitesi algısını değiştirebilir. Çoğunlukla, Nvidia veya AMD grafik donanımında oynatılan bir Blu-ray disk, PowerDVD’de hızlandırmayı devre dışı bırakırsanız aynı görünecektir. Her iki sistemde de video, CPU’daki yazılımda işleniyor ve aynı çıktıyı veriyor.

    Karışıma donanım kod çözme eklediğinizde, her şey farklı görünebilir. Niye ya? Modern GPU’larda, tasarımlarının bir kısmı, video verilerinin kodunu çözmeye ve işlemeye özel olarak ayrılmıştır. Bu, yukarıda belirtilen sabit işlevli mantıktır. Sandy Bridge tabanlı bir işlemcideki donanım tabanlı kod çözme hızlandırması, AMD veya Nvidia grafik kartından farklı şekilde tasarlanacak ve programlanacak.

    Bunu tamamen açıklığa kavuşturmalıyız: Tamamen genel amaçlı GPU kod çözücüleri yoktur. DirectCompute, APP veya CUDA’da tamamen çalışan bir kod çözücü yoktur. Ve bu desteği eklemek için herhangi bir istek çılgınca çünkü bu kendi kendini yitiren bir özellik olurdu. Flash makalemizde açıkladığımız gibi GPGPU, ham verileri yüksek düzeyde paralel bir şekilde işlemek içindir. Ancak videoda ham verilerden daha fazlası var. Meydana gelen çok sayıda görüntü işleme vardır ve bunların çoğunun seri bir şekilde yapılması gerekir. Sabit işlevli kod çözücüler, videoyu çözmek ve işlemek için yaşar; başka bir amaca hizmet etmezler. Bu yükü daha genel amaçlı bilgi işlem kaynaklarına kaydırmak, her iki durumda da yazılım tabanlı bir kod çözücü ile çalışacağınız için, onu tekrar CPU’ya taşımaktan bir adım ötede olacaktır.

    Bununla birlikte, Elemental Technologies (muhtemelen Badaboom’u geliştirdiğini bildiğiniz şirket), MPEG-2 CUDA tabanlı bir kod çözücü tasarlaması bakımından benzersizdir. Ancak saf bir GPGPU kod çözücü değildir. Entropi kodlaması, sözdizimi kodlaması, sözdizimi kodu çözme ve entropi kodu çözme gibi boru hattının bölümleri seri bir şekilde işlenmelidir. Hareket tahmini, hareket telafisi, nicemleme, ayrık kosinüs dönüşümü, deblokaj filtrelemesi, uç döngü blokajının çözülmesi gibi, işlemin paralel olarak çalışacak şekilde tasarlanabilecek başka kısımları da vardır. Bu nedenle Elemental’in MPEG-2 kod çözücüsü gerçekten yarım buçuk bir çözümdür. Bazı şeyler CPU üzerinde çalışır; bazıları CUDA çekirdeklerinde çalışır.

    0 0 votes
    Rating post
    Subscribe
    Bildir
    guest
    0 comments
    Inline Feedbacks
    View all comments
    0
    Would love your thoughts, please comment.x