Apakah ada opsi penurunan bingkai di X11Forwarding?

8

Saya menjalankan model visi komputer pada VM jarak jauh tanpa kepala (Ubuntu 16.04) di atas X11. Meneruskan dengan baik Putty dan Xming sebagai Windows X Server saya.

Semua baik-baik saja tetapi sepertinya tidak ada frame drop jika bandwidth client-server tidak dapat mengikuti, yang berarti aplikasi saya melambat dan hanya membuat beberapa frame per detik ketika dapat melakukan ratusan jika bandwidth banyak.

Apakah ada opsi penurunan bingkai kekuatan yang dibangun ke dalam penerusan X11, dan jika ada, bagaimana cara menyalakannya?

evilSnobu
sumber
4
Protokol X11 tidak memiliki gagasan tentang frame, dan karenanya tidak mendukung penurunan frame (yaitu tidak ada titik sinkronisasi ulang).
Simon Richter

Jawaban:

9

Saya sangat merekomendasikan Xpra untuk kasus penggunaan seperti ini: tidak hanya memberikan kemampuan untuk memutuskan dan menyambung kembali ke aplikasi X yang berjalan pada host jarak jauh, ia juga mendukung berbagai penyandian gambar dan pengaturan penyegaran jendela untuk memberikan pengalaman yang layak dalam keadaan yang berbeda.

Ini memiliki klien Windows asli sehingga harus cukup mudah diatur. Anda harus menginstalnya di VM jarak jauh juga, tapi itu semudah apt install xpradi Ubuntu.

Stephen Kitt
sumber
Ini terlihat sangat menjanjikan, namun saya tidak bisa membuatnya mengikat ke port TCP.
evilSnobu
Apakah Anda terhubung menggunakan SSH , atau langsung ?
Stephen Kitt
Xorg saya adalah f ****. Memperbaikinya dan semuanya baik-baik saja sekarang, Xpra ini sangat bagus, terutama ketika Anda beralih ke pengkodean HEVC (x265). Sangat sangat bagus dan tidak menghalangi. Terima kasih!
evilSnobu
Saya tidak bisa merekomendasikan Xpra lagi. Ini mungkin opsi gratis terbaik di luar sana hari ini.
wbkang
5

Menurut pertanyaan terkait ini , sepertinya X11Forwarding bukan pilihan terbaik untuk aplikasi grafis intensif, karena protokol X11 tidak dirancang dengan kinerja menggambar bitmap dalam pikiran.

Ini pada dasarnya mengirimkan instruksi gambar ke jaringan, yang "semuanya baik" jika kita berbicara tentang beberapa jendela dengan teks, tetapi jelas berlebihan untuk jutaan piksel mengubah setiap frame, terutama ketika jaringan mengalami latensi tinggi / jitter / paket kerugian.

Seperti yang disarankan dalam jawaban untuk pertanyaan yang disebutkan, Anda dapat mencoba x2go dan melihat apakah itu sesuai dengan kebutuhan Anda.

Sunting sesuai komentar

Jika x2gotidak berhasil, Anda dapat mencoba VNCyang sepertinya memiliki kemampuan menjatuhkan bingkai. Sebagai contoh, saya gunakan x11vncuntuk menghubungkan ke desktop saya dari koneksi jarak jauh x11vnc -display :0 -auth .Xauthorityyang menghubungkan ke layar saya.

Tidak tahu apakah itu akan berhasil, Xmingtetapi Anda dapat mencobanya.

Tuan Shunz
sumber
Sayangnya port Windows x2go benar-benar rusak, sudah mencobanya.
evilSnobu
Di masa lalu saya juga mencoba x2go dengan klien Mac, dan menyerah.
Rui F Ribeiro
3

Protokol X11 murni tidak cocok untuk menjamin transmisi, dan lebih dari SSH.

Saya merekomendasikan NoMachine. Dapat melakukan kompresi bandwidth dan optimasi jaringan. Ini juga memiliki klien untuk Mac, Windows dan Linux.

PS. NoMachine memiliki versi gratis dan berbayar. Saya selalu menggunakan yang gratis.

Lihat NoMachine

Untuk desktop virtual (kasus a) mode grafis vektor X11 (sebelumnya dikenal sebagai mode "ringan") diaktifkan secara default. Metode ini mengurangi penggunaan bandwidth (dan persyaratan HW karena kurang intensif CPU) pada klien dan server dengan mengoptimalkan protokol X11 melalui teknik kompresi, round trip suppression dan algoritma cache.

Mode grafis vektor X11 nyaman untuk menghindari hilangnya kualitas gambar dan dapat berguna saat bekerja dengan GUI tradisional atau teks dalam jumlah besar, tetapi tidak disarankan untuk konten multimedia atau aplikasi dengan banyak efek grafis.

Lebih lanjut tentang mode grafis vektor X11: https://www.nomachine.com/AR02L00779

Untuk koneksi ke desktop fisik atau ketika mode grafis vektor X11 dinonaktifkan untuk desktop virtual (kasus b) NoMachine mengimplementasikan protokol tampilan menggunakan kombinasi pengkodean video dan gambar berdasarkan codec standar dan sejumlah teknik yang dikembangkan oleh NoMachine sendiri.

Ini juga menerapkan teknik kualitas tampilan jaringan adaptif. Ini berarti bahwa NoMachine akan secara otomatis mencoba mengurangi kualitas tampilan ketika mendeteksi bahwa jaringan sedang macet. Tujuan dari mekanisme ini adalah untuk menjaga sesi responsif melalui semua kondisi jaringan yang berbeda.

Lebih lanjut tentang menemukan konfigurasi yang paling cocok untuk pemutaran multimedia:

https://www.nomachine.com/AR01M00832

Rui F Ribeiro
sumber
Apakah itu "Gratis seperti dalam iklan sumber tertutup untuk opsi berbayar kami" atau "Gratis seperti di Stallman"?
pipa
@pipe Di suatu tempat di tengah, saya pikir. Saya telah menggunakan versi gratis untuk penggunaan pribadi dengan banyak kepuasan, saya juga terlibat secara lateral dan mengetahui proyek-proyek besar yang menggunakan versi gratis. Versi berbayar rupanya dapat menyelamatkan beberapa masalah menyesuaikan hal-hal di dalam lingkungan yang lebih kompleks dari apa yang orang lebih berpengalaman katakan kepada saya.
Rui F Ribeiro