Dört üretici. Dört sabit işlevli silikon bloğu. Tek bir iş — bir piksel karesini, saniyede altmış kez, hiçbirini atlamadan, beş milisaniyenin altında birkaç kilobaytlık H.265 ya da AV1'e dönüştürmek. NVIDIA, AMD, Intel ve Apple'ın düşük gecikmeli aktarım için gerçekte nasıl karşılaştığı ve Remio'nun çalışma zamanında doğrusunu nasıl seçtiği burada.
Uzak masaüstü için donanım kodlayıcılar neden önemli
Hızlı bir CPU çekirdeğinde libx264 ile tek bir 1080p kareyi kodlayın. Modern bir Apple M serisi ya da Ryzen 7000'de ultrafast ön ayarı için kabaca 8 ila 12 milisaniyeye ulaşabilirsiniz; kaliteyi korumaya çalışan her şey için daha uzun. Bütçeyi hatırlayana kadar bu katlanılabilir görünür: 60 FPS'te kare başına 16,6 milisaniye. Şimdi yakalama, paketleme, ritimleyici kuyruğu, ağ çıkışı, çözme ve çizimi ekleyin. CPU kodlaması sizi yalnızca yavaşlatmaz — tüm gecikme bütçesini yer ve 1080p60'ın ötesinde herhangi bir şeyde kare atlar.
Donanım kodlayıcılar bunu aynı iş için ayrılmış sabit işlevli silikonla çözer. NVIDIA bloğuna NVENC der. AMD'ninkine AMF (daha doğrusu AMF'nin yönettiği VCN motoru). Intel'inkine QuickSync (iGPU'larının içindeki Media Engine). Apple'ınkine VideoToolbox (API; silikon, M serisi ve A serisi yongalardaki Media Engine). Dördü de tek bir nedenle var: yazılım kodlaması, modern ekranların, modern ekran kartlarının ve modern kullanıcıların artık beklediği gecikme ve kare hızı hedeflerini karşılayamaz.
Özellikle Remio için, kodlayıcıda kazanılan her milisaniye, kullanıcının ritimleyicide, ağda ve çizicide geri aldığı bir milisaniyedir. Yayımlanmış gecikme bütçemiz yerel ağda yaklaşık 8 ms işlemeyi hedefler (gerisi ekranınızın kendi 60 Hz yenileme ritmidir) — kodlama süresi tek başına en büyük değişkendir. Kodlayıcı seçimi ve o kodlayıcının yapılandırması, aşağı akıştaki her şeyi belirler.
Dört üreticiye genel bakış
Her birine derinlemesine girmeden önce, aslında neyi karşılaştırdığımızı anlamak yardımcı olur. Bunlar birbirinin yerine geçen kütüphaneler değil — kalıp üzerindeki fiziksel bloklar; her birinin kendi komut kümesi, kendi sürücü yığını, kendi tuhaflıkları ve çok yıllı kendi yol haritası var. Hangi kodekleri desteklediklerinde, hangi kaliteyi ürettiklerinde, hangi gecikmeye ulaştıklarında, ne kadar güç çektiklerinde ve hangi platformlarda var olduklarında farklılar.
- NVENC, 2012'den (Kepler) beri her NVIDIA GeForce, Quadro ve RTX ile gelir. Nesiller mimari ailelere bağlı: Kepler'de 1. nesil, Ada Lovelace'ta 8. nesil. Hopper veri merkezi parçalarının temposu farklı.
- AMF, eski VCE'nin yerini alan AMD'nin VCN (Video Core Next) motorunu açar. Her Vega, RDNA, RDNA2 ve RDNA3 ekran kartında ve daha yeni APU'larda bulunur.
- QuickSync, 2011'deki Sandy Bridge'den beri Intel iGPU'larında bulunuyor — bu da onu dünyada en yaygın dağıtılmış donanım kodlayıcı yapıyor. Arc ayrık ekran kartları aynı mimariyi ölçeklenmiş olarak kullanır.
- VideoToolbox Apple API'si; altındaki silikon, her Apple Silicon Mac'e, A6'dan beri her iPhone'a ve her iPad'e gömülü Media Engine. M serisi yongalar modele bağlı olarak bir ya da iki motorla gelir.
NVENC — NVIDIA'nın sekiz nesillik inceltmesi
NVENC, çoğu aktarım yazılımının karşısında kıyaslandığı kodlayıcıdır; kısmen NVIDIA'nın pazarlama bütçesi olduğu için, kısmen de silikon gerçekten on yıldır mükemmel olduğu için. Blok sekiz nesilden geçti:
- 1.-3. nesil (Kepler'den Maxwell'e, 2012-2014) — yalnızca H.264, aktarım için kullanılabilir ama kalite libx264'ün belirgin biçimde gerisindeydi.
- 4. nesil (Pascal, GTX 10 serisi) — H.265 kodlamasını ekledi. NVENC kalitesinin aynı bit hızında libx264 fast ön ayarlarına yetiştiği ve tartışmasız geçtiği nesil.
- 6. nesil (Turing, RTX 20 serisi, GTX 16 serisi) — sık anılan "Turing NVENC" atılımı. Düşük bit hızlarında kalite öyle iyileşti ki yayıncılar canlı kullanım için CPU kodlamasının anlamlı biçimde daha iyi olduğunu söylemeyi bıraktı.
- 7. nesil (Ampere, RTX 30 serisi) — iyileştirmeler, watt başına kalite olarak Turing'e kabaca eşdeğer.
- 8. nesil (Ada Lovelace, RTX 40 serisi) — donanım AV1 kodlaması olan ilk NVIDIA nesli; üst düzey modellerde çift kodlayıcı motoru. Ada NVENC, CPU maliyetinin çok küçük bir kesriyle libaom-av1 orta ön ayarlarıyla rekabet edecek kalitede AV1 yapabilir.
Düşük gecikmeli kullanım için NVENC üç ilgili hız denetimi modu sunar. low-latency ayarlı CBR ve p1 ön ayarı (en hızlı) standart yapılandırmadır: belirleyici çıkış hızı, tek kare ileri bakış, B-kare yok. Remio, Windows'ta hevc_nvenc üzerinde çalışırken tam olarak bunu kullanır. Ada Lovelace'ta 1080p60 H.265 için kodlama süresi tutarlı biçimde 1 ila 3 ms.
Tarihsel bir tuzak: tüketici NVENC'i yıllarca NVIDIA'nın sürücüsü aracılığıyla üç eş zamanlı kodlama oturumu ile sınırlıydı. Bu sınır 2023'te sekize çıkarıldı, sonra fiilen kaldırıldı. Bunu uyaran eski bir forum başlığı okuyorsanız, uyarı artık geçerli değil.
AMF — sonunda yetişen AMD'nin geriden gelen oyuncusu
AMD'nin AMF'si (Advanced Media Framework) API'dir; alttaki motor iki ayrı mimariden geçti. Eski VCE (Video Coding Engine) 2012'den itibaren GCN dönemi kartlarla geldi ve baş başa kodlayıcı karşılaştırmalarında hep zayıf noktaydı — eşleşen bit hızında NVENC'ten görünür biçimde daha kötü kalite, özellikle hareketli içerikte. AMD bunu biliyordu, yayıncı topluluğu biliyordu ve kıyaslamalar doğruladı.
Bu hikâye Vega'da tanıtılan ve sonraki her nesilde inceltilen VCN (Video Core Next) ile değişti:
- VCN 1.0-2.0 (Vega, RDNA1) — NVENC Pascal/Turing'in hemen yakınına nihayet ulaşan kaliteyle H.264 ve H.265.
- VCN 3.0 (RDNA2, RX 6000 serisi) — özellikle düşük bit hızlarında önemli kalite iyileştirmeleri. Oyun aktarımı için tavsiye etmekte rahat hissettiğim ilk AMD nesli.
- VCN 4.0 (RDNA3, RX 7000 serisi) — NVIDIA Ada ile birlikte AV1 kodlamasını ekler. Üst düzey modellerde paralel oturumlar için iki kodlayıcı. AV1 kalitesi üçüncü taraf kıyaslamalarında NVIDIA'nın AV1'iyle rekabetçi.
Düşük gecikmeli aktarım için AMF bir ultralowlatency kullanım ön ayarı, bir speed kalite ön ayarı ve bir cbr hız denetimi modu sunar. Remio, hevc_amf ile üçünü de kullanır — aktarım mimarisi notlarımızda belgelenen aynı ön ayar üçlüsü. RDNA3'te 1080p60 H.265 için kodlama süresi tipik olarak 2 ila 4 ms. RDNA2 yaklaşık 3 ila 5 ms. Daha eski VCN 1.x dönemi kartlar 5 ila 7 ms'ye daha yakın çalışır — hâlâ bütçe içinde, ama anahtar kare sıçramaları için daha az pay bırakır.
Beş yıl boyunca AMD'nin kodlayıcısı bir şakaydı. RDNA2 bunu düzeltti. RDNA3 AV1'de rekabetçi hale getirdi. Aktarım kodlayıcısı ikilisi artık üçlü ve bu herkes için iyi.
QuickSync — sessiz yaygınlık şampiyonu
QuickSync, neredeyse kesinlikle zaten sahip olduğunuz kodlayıcı. 2011'deki Sandy Bridge'den beri entegre grafikli her Intel işlemcide bulunuyor — yani on yılı aşkın süredir, kullanıcı ayrık bir ekran kartına ihtiyaç duyduğunu varsaydığı için kullanılmadan duran donanım video kodlamasına sahip dizüstüler, NUC'lar ve ofis masaüstleri. İhtiyaçları yoktu.
Mimari, Intel'in iGPU soyuyla adım adım ilerledi:
- Sandy Bridge-Skylake (2011-2015) — yalnızca H.264, vasat kalite ama bir dizüstü için sınıfının en iyisi gecikme ve güç.
- Kaby Lake-Coffee Lake (2016-2018) — H.265, 10 bit, 4K kodlama eklendi.
- Ice Lake'ten itibaren (2019+) — Gen11/Gen12 Xe iGPU kaliteyi dramatik biçimde iyileştirdi. Birçok kıyaslama Gen12 QuickSync'i NVENC Turing'in yüzde birkaç yakınına yerleştiriyor.
- Arc ayrık (2022+) — Intel'in ilk ayrık ekran kartı serisi. Ölçeklenmiş aynı Xe-HPG mimarisi, AV1 kodlaması ile. Arc, donanım AV1 sunan ilk tüketici ekran kartıydı — NVIDIA Ada ve AMD RDNA3'ten önce piyasaya çıktı — ve kalite şaşırtıcı derecede mükemmel. Intel Arc A380, dolar başına saf AV1 verimi için hâlâ saçma bir kelepir.
Isıl profil QuickSync'in sessiz süper gücü. SoC üzerinde zaten bulunan bir iGPU'nun içinde yaşadığı için, kullanmanın marjinal maliyeti yalnızca kodlama bloğu — ayrık bir ekran kartını uyandırmak yok, GDDR6 bellek denetleyicilerini çalıştırmak yok. Bir ThinkPad ya da NUC'ta QuickSync, sistem düzeyinde kabaca dörtte bir güçle NVENC'e yakın kalite sunar. Remio'nun Windows ana bilgisayarı için QuickSync, NVENC ve AMF'den sonra üçüncü tercih yedektir — daha kötü olduğu için değil, ayrık ekran kartı olan kullanıcılar genellikle iGPU'larını başka iş yükleri için boş istediği için.
VideoToolbox — Apple Silicon'un birleşik Media Engine'i
Apple, NVIDIA'nın yaptığı gibi donanım kodlayıcısı için bir marka adı pazarlamaz. API VideoToolbox; silikon ise her M serisi Mac'in ve A6'dan beri her iPhone/iPad SoC'sinin içinde yaşayan, Apple tasarımı Media Engine bloğudur.
Media Engine, modele bağlı olarak farklı sayılarda gelir:
- M1, M2, M3 — bir Media Engine.
- M1 Pro/Max, M2 Pro/Max, M3 Pro/Max — iki Media Engine.
- M1 Ultra, M2 Ultra — dört Media Engine (kaynaştırılmış kalıp başına iki).
- M3 Max (16 çekirdekli CPU) — iki Media Engine.
- M4 ailesi — iyileştirilmiş H.265 verimli yenilenmiş Media Engine.
Her Media Engine, H.264, H.265 ve ProRes kodlama/çözmeyi donanımda yönetir. ProRes kodlama video editörleri için manşet özellik — başka hiçbir tüketici yongası bunu sunmaz — ama aktarım için ilgili yetenekler verimli H.265 main10 kodlama ve şaşırtıcı derecede düşük kodlama gecikmesi.
Dikkate değer tek boşluk: sevk edilen hiçbir Apple Silicon'da AV1 kodlaması yok. M serisi yongalar AV1'i M3'ten beri çözer ama kodlayamaz. Bir Mac'ten aktarırken, öngörülebilir gelecekte pratik varsayılan H.265.
Apple'ın gerçekten kazandığı yer güç verimliliği. 4K60 H.265'i 30 Mbps'de kodlayan bir M2 Pro'da tüm Media Engine kabaca 3 ila 5 watt çeker. Bir RTX 4070'te eşdeğer NVENC iş yükü, çoğu ayrık ekran kartının boşta tabanı olan, kodlayıcı bloğu olmayan, sistem düzeyinde 35 watta daha yakın çeker. 7/24 açık, bir istemciyi bekleyen bir Mac mini ana bilgisayar için bu, "elektrik faturasında zar zor fark edilir" ile "aktif biçimde fark edilir" arasındaki farktır.
Yan yana karşılaştırma
Dört motor aynı eksenlerde. Gecikme rakamları 1080p60 H.265 ultra düşük gecikme ön ayarları, B-kareler kapalı, tek kare VBV — Remio yapılandırması. Kalite, 8 Mbps CBR'de algısal kaba bir sıralamadır; mutlak farklar küçük.
| Eksen | NVENC (Ada) | AMF (RDNA3) | QuickSync (Arc / Gen12+) | VideoToolbox (M3+) |
|---|---|---|---|---|
| H.264 | Evet | Evet | Evet | Evet |
| H.265 (HEVC) | Evet | Evet | Evet | Evet (main10) |
| AV1 kodlama | Evet | Evet | Evet | Hayır |
| ProRes kodlama | Hayır | Hayır | Hayır | Evet |
| Azami çözünürlük | 8K H.265 | 8K H.265 | 8K (Arc), 4K (iGPU) | 8K H.265 |
| 1080p H.265'te azami FPS | ~480 | ~360 | ~360 | ~600 (M3 Max) |
| Kodlama süresi, 1080p60 H.265 | 1-3 ms | 2-4 ms | 2-4 ms | 2-3 ms |
| Güç tüketimi, 4K60 H.265 | ~35 W sistem | ~30 W sistem | ~8 W sistem (iGPU) | ~5 W |
| 8 Mbps CBR'de kalite sırası | Birinci (berabere) | İkinci (berabere) | İkinci (berabere) | Birinci (berabere) |
| Platformlar | Windows, Linux | Windows, Linux | Windows, Linux, macOS (Intel Mac'ler) | macOS, iOS, iPadOS, tvOS |
| Eş zamanlı oturumlar | Sınırsız | Sınırsız | Sınırsız | Sınırsız |
Dürüst özet: uzak masaüstü aktarımının gerçekte kullandığı ayarlarda (CBR, düşük gecikme, B-kare yok) dördü de rahat bir farkla yeterince iyi. Ayırt edici unsurlar AV1 desteği (NVIDIA / AMD / Intel — Apple değil), güç verimliliği (Apple, sonra Intel iGPU, sonra herkes) ve platform erişilebilirliği (Windows ana bilgisayarda VideoToolbox'ı ya da Mac'te NVENC'i seçme şansınız yok).
Remio çalışma zamanında neyi seçer
Remio, başlangıçta ana bilgisayarın yeteneklerini yoklar ve belirleyici bir öncelikle kodlayıcı seçer. Windows ana bilgisayarı ve Mac ana bilgisayarı aynı seçim mantığını izler.
Windows ana bilgisayarlarda:
- NVENC (
hevc_nvenc/h264_nvenc) — bir NVIDIA ekran kartı varsa ve sürücü yanıt veriyorsa ilk seçilir. En geniş donanım nesli yelpazesinde en tutarlı biçimde düşük gecikmeli kodlayıcı olduğu için tercih edilir. - AMF (
hevc_amf/h264_amf) — VCN'li bir AMD ayrık ekran kartı ya da APU varsa ikinci seçilir.usage=ultralowlatency,quality=speed,rc=cbrile yapılandırılır. - QuickSync (
hevc_qsv/h264_qsv) — bir Intel iGPU varsa üçüncü seçilir. Hattımızda işlevsel olarak eşdeğer; ayrık ekran kartı varsa iGPU'yu boş bırakmayı tercih ederiz. - libx264 CPU yedeği — yalnızca hiçbir donanım kodlayıcı yanıt vermediğinde seçilir. Gecikme bütçesi içinde kalmak için 720p60 ya da 1080p30 ile sınırlandı.
Apple ana bilgisayarlarda: VideoToolbox tek seçenek ve istediğimiz tek seçenek. Desteklenen her Mac'in (macOS 15+) içindeki Media Engine, H.265 main10'u kutudan çıktığı gibi yönetir. Yedek yola gerek yok.
Kodek tercihi önce donanım H.265, evrensel yedek olarak H.264 — baştan sona, her platformda. Remio bugün AV1 kullanmıyor (bunun için ana bilgisayar kodlaması, istemci çözmesi ve kodek anlaşması hatta henüz yok); teknik olarak AV1 yapabilen donanımda bile H.265'e bağlı kalıyor, çünkü yerel ağda darboğaz bit hızı değil, kodlama gecikmesi.
Kalite ve gecikme ödünleşimleri
Her donanım kodlayıcı aynı birkaç ayarı sunar ve her ayar kaliteyi gecikmeyle aynı yönde takas eder. Remio yapılandırması gecikme kadranının en agresif ucunda durur, çünkü uzak masaüstü tanım gereği gerçek zamanlı bir uygulamadır ve 20 ms'den eski bir kare, ideale göre biraz bulanık bir kareden daha kötüdür.
- CBR ve VBR. Değişken bit hızı, bitleri işe yaradığı yerlere harcayarak aynı ortalama hızda daha iyi kalite üretir. Ama VBR kare başına öngörülemez boyut da üretir; bu öngörülemez ritimleyici kuyruğu, o da öngörülemez gecikme demek. Remio her yerde CBR kullanır. Kalite maliyeti küçük; gecikme tutarlılığı çok büyük.
- B-kareler. B-kareler hem geçmiş hem gelecek karelere başvurur, bu yüzden çözücü B-kareyi çözmeden önce gelecek karenin gelmesini beklemeli. Talep üzerine videoda sorun değil, gerçek zamanda ölümcül. Remio, her platformda her kodekte B-kareleri kapatır.
- GOP / anahtar kare aralığı. Daha uzun GOP'lar (anahtar kareler arasında daha çok kare) daha iyi sıkıştırır. Daha kısa GOP'lar paket kaybından daha hızlı toparlanır. Remio fiilen sonsuz GOP'larla çalışır ve çözücü kayıp bildirdiğinde ana bilgisayardan yeni bir anahtar kare ister. Kayıp bir paket hâlâ zamanında ulaşabilecekse hemen yeniden gönderilir; ulaşamayacaksa Remio onu atlar ve beklemek yerine yeni bir kare ister. Bu, yalnızca en son kareyi çizme aktarım felsefemizle örtüşür.
- İleri bakış. NVENC, AMF ve QuickSync'in üçü de uyarlamalı nicemleme için çok kareli ileri bakışı destekler. İleri bakışın her karesi tam bir kare gecikme ekler. Remio sıfır ya da tek kare ileri bakışla çalışır — her kodlayıcının en düşük ayarı.
- VBV arabelleği. Video Buffering Verifier penceresi, kodlayıcının hedef hıza dönmeden önce kaç biti "ileri ödünç alabileceğidir". Daha büyük VBV daha pürüzsüz kalite verir. Daha küçük VBV daha sıkı hız denetimi ve daha düşük gecikme verir. Remio 1 kare VBV kullanır — bit hızı bölü kare hızı — yani izin verilen en küçük değer.
Örüntü dört üreticide de tutarlı. Gerçek zamanlı düşük gecikme kısıtlı bir eniyilemedir: çevrimdışı kodlamada ileri bakışın ve B-karelerin satın aldığı yüzde birkaçlık kaliteden vazgeçersiniz, karşılığında gerçek zamanlı etkileşimin gerektirdiği öngörülebilir gecikmeyi alırsınız. Sevk edilen her aktarım ürünü — Remio, Parsec, NVIDIA GeForce NOW, Xbox Cloud Gaming — aynı takası aynı yönde yapar.
Siz (kullanıcı) aslında neye önem vermelisiniz
Sona atladıysanız: herhangi bir modern ekran kartının donanım kodlayıcısı uzak masaüstü için iyidir.
Gerçek zamanlı yapılandırmalardaki farklar, herhangi bir makul kıyaslamanın gürültü tabanından daha küçük. Pascal GTX 1060 kullanıcısı, RTX 4090 kullanıcısıyla aynı Remio deneyimini yaşar — ikisi de 120 FPS hattını yaklaşık 8 ms işleme gecikmesinde doyurur (gerisi ekranınızın kendi 60 Hz yenileme ritmidir), ikisi de yerel ağ bit hızlarında ayırt edilemeyen çıktı üretir.
İstisnalar, ne sıklıkta önemli olduklarına göre sırayla:
- AV1 destekli donanım, genel olarak yavaş ağlarda yardımcı olur. Otel Wi-Fi'si ya da mobil erişim noktası; M3+ ya da RTX 40 serisi istemcili bir Ada / RDNA3 / Arc ana bilgisayar, onu kullanan araçlarda aynı kalitede yaklaşık yüzde 25 daha fazla pay satın alır. Yerel ağda hiçbir şey. Remio henüz AV1 çalıştırmıyor — baştan sona H.265 tüm hat — yani bugün bu bir üretici avantajı, Remio'nun değil.
- Apple Silicon Mac'ler olağanüstü iyi ana bilgisayarlar. Media Engine'in düşük gecikmesi, mükemmel H.265'i ve 3-5 W çekişi, bir Mac mini ya da Studio'yu satın alabileceğiniz en iyi sürekli açık aktarım kaynaklarından biri yapar. AV1 kodlamasının olmaması tek boşluk, yerel ağda önemsiz.
- Intel Arc A380, AV1 için akıl almaz bir kelepir. ~120 dolar, 400 doların altındaki her şeyi geçen bir kodlayıcı bloğu satın alır.
- libx264 CPU yedeği gerçek. Donanım kodlayıcı yok — eski dizüstü, iGPU'suz sunucu — Remio yine çalışır. Sadece 4K 60'ta değil, bir CPU çekirdeğini yakmadan değil.
Bu uç durumların ötesinde doğru yanıt en basiti: zaten alacağınız ekran kartını kullanın. Her modern üretici aynı yeteneklere, aynı düşük gecikmeli ön ayarlara, aynı kalite zarfına yakınsadı. Remio çalışma zamanında doğrusunu seçer, siz düşünmek zorunda kalmazsınız. Uzak masaüstü oturumunu ne için açtıysanız onunla ilgilenin — kod yazmak, video kurgulamak, sunucu düzeltmek, bir kafeden düzeltme göndermek.
Sabit işlevli silikonun bütün amacı bu. Sadece çalışır ve onu fark etmeyi bırakırsınız.