xpra icon
Bug tracker and wiki

Opened 8 years ago

Closed 8 years ago

#233 closed defect (fixed)

XOR mode problems with lossy encodings

Reported by: Mike Owned by:
Priority: major Milestone: 0.8
Component: core Version: trunk
Keywords: xor Cc:

Description

The XOR mode seems to be bad if the ecoding is lossy. See the attached picture. This is the Xpra timeline scrolled down some pages (by page down). Encoding was webp (from my experience the fastest encoding with best picture quality) and quality was set to 20%. The same applies to png and jpeg. rgb24 shows no problems.

Is XOR mode even possible with lossy encodings?
I thought it needs the same page content on both sides. Because of the lossy encoding the page content on the client side will be different ...

The other point is, that the page content is changing alot by scrolling with "page down". It seems that the detection if xor is a good idea or not is wrong here.

Attachments (1)

Bildschirmfoto-5.png (692.0 KB) - added by Mike 8 years ago.

Download all attachments as: .zip

Change History (3)

Changed 8 years ago by Mike

Attachment: Bildschirmfoto-5.png added

comment:1 Changed 8 years ago by Mike

Keywords: xor added

comment:2 Changed 8 years ago by Antoine Martin

Resolution: fixed
Status: newclosed

Good catch, xor is not meant to be used with any of the lossy encodings. Fixed in r2511
I'm not sure we can ever get it to work well with lossy encodings:

I thought it needs the same page content on both sides.

That's the problem, the errors accumulate.. The server has the pixel-perfect copy whereas the client does not.

The other point is, that the page content is changing alot by scrolling with "page down".

Scrolling is problematic, no matter what encoder / xor-mode you use, and it is a tough one to solve.

It seems that the detection if xor is a good idea or not is wrong here.

There is no detection going on, we xor if we can as it is relatively cheap and more often than not it is beneficial.

webp (from my experience the fastest encoding with best picture quality)

FYI: webp is ok, but x264/vpx are a lot better - they do pretty much the same thing (in fact, exactly the same thing in the case of vpx) but you get the benefit of delta frame compression, which makes a huge difference.

Note: See TracTickets for help on using tickets.