Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unknown encoding received <Encoding.TIGHT: 7> #264

Open
ulmitov opened this issue Jul 13, 2023 · 3 comments
Open

unknown encoding received <Encoding.TIGHT: 7> #264

ulmitov opened this issue Jul 13, 2023 · 3 comments
Labels

Comments

@ulmitov
Copy link

ulmitov commented Jul 13, 2023

No handler for TIGHT ?

vncdotool version
last master ersion

2023-07-13 18:00:19 [INFO] Starting factory <vncdotool.client.VNCDoToolFactory object at 0x7f4598869d60>
2023-07-13 18:00:19 [INFO] Using protocol version 3.8
2023-07-13 18:00:19 [INFO] Offered <AuthTypes.NONE: 1>
2023-07-13 18:00:19 [INFO] Native PixelFormat(bpp=32, depth=32, bigendian=False, truecolor=True, redmax=255, greenmax=255, bluemax=255, redshift=0, greenshift=8, blueshift=16) bytes=4
2023-07-13 18:00:19 [INFO] Offering <Encoding.RAW: 0>
2023-07-13 18:00:19 [INFO] Offering <Encoding.PSEUDO_DESKTOP_SIZE: -223>
2023-07-13 18:00:19 [INFO] Offering <Encoding.PSEUDO_LAST_RECT: -224>
2023-07-13 18:00:19 [INFO] Offering <Encoding.PSEUDO_QEMU_EXTENDED_KEY_EVENT: -258>
2023-07-13 18:00:19 [INFO] x=0 y=0 w=800 h=624 <Encoding.RAW: 0>
2023-07-13 18:00:24 [WARNING] 'Timed Out', retrying in 0 seconds...
2023-07-13 18:00:25 [INFO] x=0 y=24 w=800 h=600 <Encoding.TIGHT: 7>
2023-07-13 18:00:25 [INFO] unknown encoding received <Encoding.TIGHT: 7>
2023-07-13 18:00:25 [INFO] x=36992 y=44545 w=65496 h=65504 '<Encoding.UNKNOWN: 104a46>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 104a46>'
2023-07-13 18:00:25 [INFO] x=18758 y=1 w=257 h=96 '<Encoding.UNKNOWN: 600000>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 600000>'
2023-07-13 18:00:25 [INFO] x=65534 y=15 w=1325 h=610 '<Encoding.UNKNOWN: 6b50>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 6b50>'
2023-07-13 18:00:25 [INFO] x=3532 y=42706 w=255 h=56064 '<Encoding.UNKNOWN: 4300140d>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 4300140d>'
2023-07-13 18:00:25 [INFO] x=3857 y=3852 w=5137 h=4113 '<Encoding.UNKNOWN: 16151417>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 16151417>'
2023-07-13 18:00:25 [INFO] x=7730 y=8222 w=6939 h=7741 '<Encoding.UNKNOWN: 2b2e2432>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 2b2e2432>'
2023-07-13 18:00:25 [INFO] x=18495 y=19531 w=18239 h=17988 '<Encoding.UNKNOWN: 505a7361>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 505a7361>'
2023-07-13 18:00:25 [INFO] x=20565 y=27734 w=17478 h=25736 '<Encoding.UNKNOWN: 656c767a>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 656c767a>'
2023-07-13 18:00:25 [INFO] x=32898 y=32845 w=24717 h=38796 '<Encoding.UNKNOWN: 7d96737e>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 7d96737e>'
2023-07-13 18:00:25 [INFO] x=32891 y=65499 w=67 h=287 '<Encoding.UNKNOWN: 21212d27>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 21212d27>'
2023-07-13 18:00:25 [INFO] x=11608 y=12336 w=22713 h=31593 '<Encoding.UNKNOWN: 7bb9b9b8>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 7bb9b9b8>'
2023-07-13 18:00:25 [INFO] x=42662 y=47289 w=47545 h=47545 '<Encoding.UNKNOWN: -46464647>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: -46464647>'
2023-07-13 18:00:25 [INFO] x=47545 y=47545 w=47545 h=47545 '<Encoding.UNKNOWN: -46464647>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: -46464647>'
2023-07-13 18:00:25 [INFO] x=47545 y=47545 w=47545 h=47545 '<Encoding.UNKNOWN: -46464647>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: -46464647>'
2023-07-13 18:00:25 [INFO] x=47545 y=47545 w=47545 h=47545 '<Encoding.UNKNOWN: -46464601>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: -46464601>'
2023-07-13 18:00:25 [INFO] x=49152 y=4360 w=600 h=800 '<Encoding.UNKNOWN: 3011100>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 3011100>'
2023-07-13 18:00:25 [INFO] x=529 y=259 w=4353 h=65476 '<Encoding.UNKNOWN: 1f0000>'
2023-07-13 18:00:25 [INFO] unknown encoding received '<Encoding.UNKNOWN: 1f0000>'
2023-07-13 18:00:25 [INFO] x=261 y=257 w=257 h=257 <Encoding.RAW: 0>
2023-07-13 18:00:25 [INFO] Stopping factory <vncdotool.client.VNCDoToolFactory object at 0x7f4598869d60>

@pmhahn pmhahn added the feature label Jul 25, 2023
@pmhahn
Copy link
Collaborator

pmhahn commented Jul 25, 2023

Probably a network issue, after which the data gets interpreted wrongly:

2023-07-13 18:00:24 [WARNING] 'Timed Out', retrying in 0 seconds...

But <Encoding.TIGHT: 7> is also not implemented; basically only <Encoding.RAW: 0> is implemented.

@KarimGeiger
Copy link

KarimGeiger commented Aug 31, 2023

I seem to have a similar issue when trying to connect to the PiKVM VNC server. It fails with the following message in the server logs:

[main]: ... has_tight [] -- False
[main]: ... tight_jpeg_quality [] -- 0
[main]: ... has_h264 [] -- False
[main]: Error: Tight JPEG encoding is not supported by client

Since you mentioned that Tight is not implemented as an encoding, and the PiKVM docs mention this as a requirement, I'd assume there is no way around this.

As someone with zero knowledge of how VNC encodings work: Is this something that could relatively easily be added to vncdotool, or would this be a greater effort or maybe even impact functionality like expect?

@pmhahn
Copy link
Collaborator

pmhahn commented Aug 31, 2023

While refactoring vncdotool I already had some quick thoughts on adding support for other encoding as vncdotool currently only supports RAW.

  • You would have to extend vncdotool.rfb.RFBClient._handleRectangle() to handle other formats. For JPEG that should be easy as we already depend on Pillow, which supports many formats: get the right number of octets from the network stream, pass it to Pillow for decoding, paste the result into the screen buffer.
  • Add the new format to vncdotool.rfb.RFBClient.SUPPORTED_ENCODINGS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants