main
1/*
2 * noVNC: HTML5 VNC client
3 * Copyright (C) 2019 The noVNC authors
4 * Licensed under MPL 2.0 (see LICENSE.txt)
5 *
6 * See README.md for usage and integration instructions.
7 */
8
9export const encodings = {
10 encodingRaw: 0,
11 encodingCopyRect: 1,
12 encodingRRE: 2,
13 encodingHextile: 5,
14 encodingZlib: 6,
15 encodingTight: 7,
16 encodingZRLE: 16,
17 encodingTightPNG: -260,
18 encodingJPEG: 21,
19 encodingH264: 50,
20
21 pseudoEncodingQualityLevel9: -23,
22 pseudoEncodingQualityLevel0: -32,
23 pseudoEncodingDesktopSize: -223,
24 pseudoEncodingLastRect: -224,
25 pseudoEncodingCursor: -239,
26 pseudoEncodingQEMUExtendedKeyEvent: -258,
27 pseudoEncodingQEMULedEvent: -261,
28 pseudoEncodingDesktopName: -307,
29 pseudoEncodingExtendedDesktopSize: -308,
30 pseudoEncodingXvp: -309,
31 pseudoEncodingFence: -312,
32 pseudoEncodingContinuousUpdates: -313,
33 pseudoEncodingExtendedMouseButtons: -316,
34 pseudoEncodingCompressLevel9: -247,
35 pseudoEncodingCompressLevel0: -256,
36 pseudoEncodingVMwareCursor: 0x574d5664,
37 pseudoEncodingExtendedClipboard: 0xc0a1e5ce
38};
39
40export function encodingName(num) {
41 switch (num) {
42 case encodings.encodingRaw: return "Raw";
43 case encodings.encodingCopyRect: return "CopyRect";
44 case encodings.encodingRRE: return "RRE";
45 case encodings.encodingHextile: return "Hextile";
46 case encodings.encodingZlib: return "Zlib";
47 case encodings.encodingTight: return "Tight";
48 case encodings.encodingZRLE: return "ZRLE";
49 case encodings.encodingTightPNG: return "TightPNG";
50 case encodings.encodingJPEG: return "JPEG";
51 case encodings.encodingH264: return "H.264";
52 default: return "[unknown encoding " + num + "]";
53 }
54}