Comments (18)
Is there a "reasonably easy" way to convince xpra to "extend its path" to include a venv?
This is not an xpra question, it's an OS / venv one.
python3 /usr/bin/xpra ...
is your entry point.
from xpra.
... or idk - maybe it was really a bad connection. But we are talking home network, Gigabit Eth over WiFi (@ ~135Mb/s)
from xpra.
(also btw - graph window is not working)
from xpra.
Maximum latency at 22 seconds!
159 Megapixels/s
Don't expect miracles!
from xpra.
Idk - I don't want to say that xpra is lying, but ...
"How can I have latency 22 seconds?!?"
I have a (home) shit LAN, but not 22s latency from a Gigabit ETH to 135 Mb/s WiFi
I have "just an HD monitor", so the math doesn't add up:
For an HD (High Definition) resolution, typically 1920x1080 pixels, we can calculate the required data transfer rates at different frame rates (25, 30, and 60 fps).
- Resolution: 1920 * 1080 = 2,073,600 pixels (approximately 2.07 Megapixels per frame)
Now, let's calculate the required Megapixels per second for each frame rate:
25 fps:
( 2.07 , \text{Megapixels} \times 25 , \text{fps} = 51.8 , \text{Megapixels/s} )30 fps:
( 2.07 , \text{Megapixels} \times 30 , \text{fps} = 62.1 , \text{Megapixels/s} )60 fps:
( 2.07 , \text{Megapixels} \times 60 , \text{fps} = 124.2 , \text{Megapixels/s} )Therefore, for screen mirroring an HD resolution (1920x1080):
- At 25 fps, you need 51.8 Megapixels/s.
- At 30 fps, you need 62.1 Megapixels/s.
- At 60 fps, you need 124.2 Megapixels/s.
Given these numbers, a transfer rate of 159 Megapixels/s is more than sufficient to handle HD screen mirroring at any of these frame rates, including the highest at 60 fps.
I am more than happy to take an FPS hit, and "color-quality" hit (but ofc no blur, since a lot is text 😕) - and I assume that the v5 video encoders can do something about it?
I think your stats are a bit misleading: If data arrives "all the time" e.g. here
2024-05-25 22:54:56,334 server is not responding, drawing spinners over the windows (xpra_cmd:54748): Pango-WARNING **: 22:55:04.863: couldn't load font "Gentium Book Basic Bold Italic Not-Rotated 57.331", falling back to "Sans Bold Italic Not-Rotated 57.331", expect ugly output. (xpra_cmd:54748): Pango-WARNING **: 22:55:04.875: couldn't load font "Gentium Book Basic Bold Italic Not-Rotated 57.096", falling back to "Sans Bold Italic Not-Rotated 57.096", expect ugly output. (xpra_cmd:54748): Pango-WARNING **: 22:55:05.134: couldn't load font "DejaVu Serif Not-Rotated 59.797", falling back to "Sans Not-Rotated 59.797", expect ugly output. (xpra_cmd:54748): Pango-WARNING **: 22:55:05.142: couldn't load font "URW Bookman L Not-Rotated 52.762", falling back to "Sans Not-Rotated 52.762", expect ugly output. 2024-05-25 22:55:05,186 server is OK again
but for some reason you don't update those stats in-between server is not responding
/ server is OK again
- then yes, in ~10s the buffers maybe finally returned 159 MP/s.
But then I'd say you'd have to instead report 159 MP/s / 10s = 15.9 MP/s
received
from xpra.
"How can I have latency 22 seconds?!?"
It's easy on wifi, you are experiencing bufferbloat.
xpra is really not lying about this.
from xpra.
BTW, if you have latency / bufferbloat issues, you should definitely try connecting using QUIC rather than ssh.
from xpra.
BTW, if you have latency / bufferbloat issues, you should definitely try connecting using QUIC rather than ssh.
idk, it doesn't look like it
Ofc it's not a nice result - but not 22 seconds delay ....
It seems that opening the Session Info window "causes more damage" than the connection itself
... also quic seems to not be an option?
Also, since I haven't played with certs, it'd be cool if it could be setup via ssh-auth (e.g. to send a random, client-generated certificate - and even on a random port).
I tried to see if GUI would make it easier, but it doesn't look like it
from xpra.
The problem is the wifi, always is.
It has its own buffer for re-transmits, and TCP
head of line blocking can cause packet delays as big as what you are seeing.
It seems that opening the Session Info window "causes more damage" than the connection itself
Populating the info window makes requests and the responses are relatively big.
This is a known limitation - see previous tickets on the subject.
Normally not a big issue on a good connection.
As for aioquic
, don't install it in a venv unless you also install xpra there (don't).
I guess we could add some sort of xpra gen-ssl
command to generate self-signed certs - potentially remote ones too.
And maybe a xpra get-ssl
command to just download a remote ssl cert.
from xpra.
As for
aioquic
, don't install it in a venv unless you also install xpra there (don't).
Yeah, ofc I wouldn't have wanted to do that. I just wanted to try it, and if it doesn't work simply rm -rf
it.
However, I don't know which package would have it for xpra:
$ apt-cache madison xpr\t
xpra xpra-client xpra-codecs xpra-codecs-nvidia xpra-html5 xpra-x11 xprobe
xpra-audio xpra-client-gtk3 xpra-codecs-extras xpra-common xpra-server xprintidle
None of them sounds "needed, but missing"
I guess we could add some sort of
xpra gen-ssl
command to generate self-signed certs - potentially remote ones too.
And maybe axpra get-ssl
command to just download a remote ssl cert.
I mean, "eventually maybe" I should start my own CA, etc etc - but for a barebones way to bootstrap a quic session using some kind of auth would be nice. ssh keys give that flexibility. "Sort-of similar" to how e.g. https://mosh.org/ works
from xpra.
However, I don't know which package would have it for xpra:
Support for quic
is included in all recent versions, you just need to install aioquic
to get it. (pip install
or whatever)
from xpra.
Ah, okay - I see. I just thought that xpra
would not pick up from the "currently active environment" (user or venv) - but simply its own (system or "something special" for python packages installed via apt-get/dpkg).
I started getting mindful of "polluting" my system/user catch-all pip installs
and tried to move them e.g. in pipx.
Is there a "reasonably easy" way to convince xpra to "extend its path" to include a venv?
from xpra.
I managed to hack something together for Ubuntu, but still on Windows, I am getting:
(pyasn1)
I think that on Windows builds you cannot "add" anything, so is this an omission?
Ofc, this is a Light build - so maybe that's it?
from xpra.
... also on the normal ones
from xpra.
Probably caused by the "Light builds" packaging changes in #4100
Please try r35929 or later.
from xpra.
and
... idk what I'm doing wrong 😕
from xpra.
... idk what I'm doing wrong
Not sure what the problem is here. What am I supposed to be seeing?
The quic packaging problems are solved so are we back to the "server is not responding" issue?
from xpra.
I am trying to mimic xpra shadow ssh://...
, using quic (as per your suggestion)
from xpra.
Related Issues (20)
- gpg file xpra-6.1.1.tar.xz.gpg is empty on https://xpra.org/src/ HOT 1
- shadow desktop ceases to update when using `--desktop-scaling` < 100% HOT 17
- shadow desktop scaling broken for scaling < 100% HOT 6
- Unable to set window title HOT 2
- take content-type into account when choosing an upscaling sampling filter HOT 7
- Segmentation fault in WSL2 with Intel GPU VA-API HOT 12
- start-desktop does not work with cinnamon X11 session (black screen) HOT 9
- make it possible to completely disable all of GStreamer at runtime HOT 2
- downscale just once HOT 2
- pycuda 2024.1.2 fails to build on Fedora 41 HOT 2
- Is there a release/version available for 32bit windows? HOT 1
- Causing Debian GUI first login failure HOT 1
- system tray forwarding causes crash HOT 3
- invalid encoding for tray: 'rgb' - message repeating continuously HOT 1
- too many keyboard error messages HOT 1
- macos client-only builds fail HOT 1
- Menu by mouse right click doesn't render correctly. HOT 29
- No connection possible with HTML5 client via proxy HOT 5
- ffmpeg decoder breakage HOT 3
- nvenc is now padding video frames HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from xpra.