Uzak Masaüstü Protokolü üzerinden grafik kodlama
Uzak oturumdaki grafik verileri, Uzak Masaüstü Protokolü (RDP) aracılığıyla yerel bir cihaza iletilir. bu işlem, yerel cihaza göndermeden önce uzak sanal makinedeki grafik verilerini kodlamayı içerir. Her çerçeve, RDP'nin grafik aktarımı kullanılarak yerel cihaza teslim edilmeden önce görüntü işlemcileri, sınıflandırıcı ve codec bileşeninden geçirerek içeriğine göre işlenir.
Grafik verilerini kodlamanın ve iletmenin amacı, bir cihazı yerel olarak kullanmakla aynı deneyimle en iyi performansı ve kaliteyi sağlamaktır. Bu işlem Azure Sanal Masaüstü, Windows 365'te Bulut bilgisayarlar ve kullanıcıların uzaktan çalışırken yüksek kaliteli bir deneyim beklediği Microsoft Dev Box kullanılırken önemlidir.
RDP, grafik verilerini işlemek ve iletmek için office üretkenliği, video kayıttan yürütme ve oyun gibi çok çeşitli senaryolar için uygun hale getiren bir dizi özellik ve teknik kullanır. Bu özellikler ve teknikler şunlardır:
Donanım ve yazılım tabanlı kodlama: Grafik verilerini kodlamak için CPU veya GPU kullanır.
Donanım hızlandırma kodlaması: Grafik kodlamasının işlenmesini CPU'dan ayrı GPU'ya sahip uzak bir sanal makinedeki GPU'ya yükler. GPU, 3B modelleme veya yüksek tanımlı video düzenleme gibi yoğun grafik kullanımlı uygulamalar için daha iyi performans sağlar.
Yazılım kodlaması: Grafik verilerini düşük maliyetle kodlamak için CPU kullanır. Yazılım kodlama, ayrı bir GPU olmadan uzak bir sanal makinede kullanılan varsayılan kodlama profilidir.
Karma mod: Her içerik türü için en iyi kaliteyi ve en düşük kodlama maliyetini sağlamak üzere farklı codec bileşenleri kullanarak metin ve görüntü kodlamasını ayırır. Karma mod yalnızca yazılım kodlamasıyla kullanılabilir.
Uyarlamalı grafikler: Kullanılabilir bant genişliğine ve ekranın içeriğine göre kodlama kalitesini ayarlar.
Tam ekran video kodlama: Daha yüksek kare hızı ve daha iyi bir kullanıcı deneyimi sağlar.
Delta algılama ve önbelleğe alma: aktarılması gereken veri miktarını azaltır.
Birden çok codec desteği: Yerel bir cihazda donanım kod çözücüleri kullanır. Codec bileşenleri arasında H.264 olarak da bilinen Gelişmiş Video Kodlama (AVC) video codec'i ve H.265 olarak da bilinen Yüksek Verimli Video Kodlama (HEVC) video codec bileşeni bulunur. HEVC/H.265 desteği önizleme aşamasındadır ve uyumlu bir GPU özellikli uzak sanal makine gerektirir.
4:2:0 ve 4:4:4 chroma alt örneklemesi: Görüntü kalitesi ile bant genişliği kullanımı arasında bir denge sağlar.
Uzak oturumun, yerel cihazın ve ağın kullanılabilir kaynaklarına ve sağlamak istediğiniz kullanıcı deneyimine bağlı olarak bu özelliklerin ve tekniklerin bir bileşimini kullanabilirsiniz.
Bu makalede, bu özellik ve tekniklerden bazılarını kullanarak RDP üzerinden grafik verilerini kodlama ve teslim etme işlemi açıklanmaktadır.
İpucu
Mümkün olduğunda, video kayıttan yürütmeyi yerel cihaza yönlendiren multimedya yeniden yönlendirmesini kullanmanızı öneririz. Multimedya yeniden yönlendirmesi, video verilerinin bit akışını, videonun kodunu çözdüğü ve ekranda doğru yerde işlediği yerel cihaza göndererek video kayıttan yürütme için daha iyi bir kullanıcı deneyimi sağlar. Bu yöntem, kodlama yapılandırmasından bağımsız olarak uzak sanal makinede işleme maliyetini de düşürür. Daha fazla bilgi edinmek için bkz . Uzak oturumda video kayıttan yürütme ve aramalar için multimedya yeniden yönlendirmesi.
Karma mod
Grafik verileri varsayılan olarak içeriğine bağlı olarak ayrılır. Metin ve görüntüler, yalnızca yazılım kodlaması kullanılırken farklı içerik türlerinde en iyi kodlama performansını elde etmek için bir codec bileşenleri karışımı kullanılarak kodlanır. Bu işlem karma mod olarak bilinir.
Ortalama olarak, uzak oturum için grafik verilerinin yaklaşık %80'i metindir. RDP, metin için en düşük kodlama maliyetini ve en iyi kaliteyi sağlamak için metin için iyileştirilmiş özel bir codec bileşeni kullanır. Görüntü içeriğinin etkili bir şekilde kodlanması daha zor olduğundan, kullanılabilir bit hızına iyi uyum sağlayan bir codec bileşeni kullanmak kritik önem taşır.
İçeriğin geri kalanı resimler ve videolarla ayrılmıştır:
Görüntüler, yerel cihazın özelliklerine ve multimedya yeniden yönlendirmenin etkinleştirilip etkinleştirilmediğini bağlı olarak AVC/H.264 veya RemoteFX grafikleriyle kodlanmış yazılımlardır. Multimedya yeniden yönlendirmesi kullanılırken görüntülerin AVC/H.264 kodlaması kullanılamaz.
Video, AVC/H.264 ile kodlanmış bir yazılımdır.
AVC/H.264, görüntüler için iyi sıkıştırma oranına sahip, aşamalı kodlama özelliğine sahip ve bit hızına göre kaliteyi ayarlama özelliğine sahip olan yaygın olarak desteklenen bir codec bileşenidir. Modern cihazlarda yaygın olarak desteklenen yerel cihazda donanım kod çözücüye dayanır. Yerel cihazda donanım kod çözücüsü kullanılması, yerel cihazdaki CPU kullanımını azaltır ve daha iyi bir kullanıcı deneyimi sağlar. AVC/H.264 donanım kodunu çözmeyi desteklediğinden emin olmak için cihaz üreticisine başvurun.
Aşağıdaki diyagramda, yazılım kodlama senaryosunda karma modu kullanarak RDP üzerinden grafik verilerini kodlama ve teslim etme işlemi gösterilmektedir:
Bu işlem aşağıdaki gibi açıklanmıştır:
Çerçeve bit eşlemi ilk olarak video içerip içermediği algılanarak işlenir. Video içeriyorsa çerçeve, yazılım tabanlı bir senaryoda AVC/H.264 ile kodlanan video codec'ine gönderilir ve çerçeve grafik kanalına geçer.
Çerçevede video yoksa görüntü işlemcileri değişiklik olup olmadığını, hareket algılandığından veya önbellekte içerik olup olmadığını belirler. İçerik belirli ölçütlerle eşleşiyorsa, çerçeve grafik kanalına geçer.
Çerçevenin daha fazla işlenmesi gerekiyorsa, görüntü sınıflandırıcı metin mi yoksa görüntü mü içerdiğini belirler.
Metin ve görüntüler, her içerik türü için en iyi kaliteyi ve en düşük kodlama maliyetini sağlamak üzere farklı codec bileşenleri kullanılarak kodlanır. Kodlandıktan sonra çerçeve grafik kanalına geçer.
Karma modlu metin ve görüntüler için iki ayrı codec bileşeni kullanmak yerine, AVC/H.264 video codec bileşenini kullanarak tüm ekran içeriğini işlemek için tam ekran video kodlamasını etkinleştirebilirsiniz.
Tam ekran video kodlama
Tam ekran video kodlaması, ekran içeriğinin büyük ölçüde görüntü tabanlı olduğu ve karma moda alternatif olarak kullanıldığı senaryolar için kullanışlıdır. Tam ekran video kodlama, tüm grafik verilerini AVC/H.264 veya HEVC/H.265 ile işler. Sonuç olarak, ekran içeriği büyük ölçüde metin tabanlı olduğunda karma mod kodlamasından daha kötü bir performans gösterir.
Tam ekran video profili daha yüksek kare hızı ve daha iyi kullanıcı deneyimi sağlar, ancak hem uzak sanal makinede hem de yerel cihazda daha fazla ağ bant genişliği ve kaynak kullanır. 3B modelleme, CAD/CAM veya video kayıttan yürütme ve düzenleme gibi uygulamalardan yararlanır.
Hem HEVC/H.265 hem de AVC/H.264 donanım hızlandırmasını etkinleştirirseniz, ancak yerel cihazda HEVC/H.265 kullanılamıyorsa, bunun yerine AVC/H.264 kullanılır. HEVC/H.265, aynı bit hızıyla AVC/H.264'e kıyasla %25-50 veri sıkıştırmasına, aynı video kalitesinde veya geliştirilmiş kaliteye izin verir.
GPU hızlandırma olmadan bile AVC/H.264 ile tam ekran video kodlamayı etkinleştirebilirsiniz, ancak HEVC/H.265 uyumlu bir GPU özellikli uzak sanal makine gerektirir.
Daha fazla bilgi edinmek için bkz . Azure Sanal Masaüstü için GPU hızlandırmayı etkinleştirme.
Donanım GPU hızlandırma
Azure Sanal Masaüstü, Windows 365'teki Bulut bilgisayarlar ve Microsoft Dev Box, Uzak Masaüstü Protokolü (RDP) kullanarak gelişmiş uygulama performansı ve ölçeklenebilirlik için işleme ve kodlamada grafik işleme birimi (GPU) hızlandırmasını destekler. GRAFIK tasarımcıları, video düzenleyicileri, 3B modelleyiciler, veri analistleri veya görselleştirme uzmanları tarafından kullanılanlar gibi yoğun grafik kullanan uygulamalar için GPU hızlandırma çok önemlidir.
GPU hızlandırmanın kullanıcı deneyimini geliştirmek için birlikte çalışan iki bileşeni vardır:
GPU hızlandırmalı uygulama işleme: Gpu'ları kullanarak uzak bir oturumda grafikleri işleyin.
GPU hızlandırmalı çerçeve kodlaması: RDP, yerel cihaza iletim için işlenen tüm grafikleri kodlar. Ekranın bir bölümü sık sık güncelleştirildiğinde, AVC/H.264 ile kodlanır.
İş yüklerinizdeki ekran içeriği büyük ölçüde görüntü tabanlıysa, daha yüksek kare hızı ve daha iyi kullanıcı deneyimi sağlamak için tüm ekran içeriğini işlemek için tam ekran video kodlamasını da etkinleştirebilirsiniz.
Daha fazla bilgi edinmek için bkz . GPU hızlandırmayı etkinleştirme.
4:2:0 ve 4:4:4 için Chroma alt örnekleme desteği
Kodlama için kullanılan renk alanını chroma değeri belirler. Varsayılan olarak, chroma değeri 4:2:0 olarak ayarlanır ve bu da görüntü kalitesi ile ağ bant genişliği arasında iyi bir denge sağlar. AVC/H.264 kullandığınızda görüntü kalitesini artırmak için chroma değerini 4:4:4'e yükseltebilirsiniz, ancak ağ bant genişliğini de artırır. Chroma değerini değiştirmek için GPU hızlandırma kullanmanız gerekmez.
Daha fazla bilgi edinmek için bkz . Gelişmiş Video Kodlama (AVC) video codec'ini kullanarak chroma değerini 4:4:4'e çıkarma.