= We have moved = This wiki has been moved to [https://github.com/Xpra-org/xpra/blob/master/docs/README.md] and [https://github.com/Xpra-org/xpra/wiki] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] ''Archived copy:'' [[Image(https://xpra.org/icons/encoding.png)]] = Picture Encodings Debugging = See [/wiki/Encodings encodings]. {{{#!div class="box" == Initial Checks == The first thing to check is the codec availability and version. On MS Windows, run the {{{Encoding_Info.exe}}} utility, or the [/wiki/ReportingBugs bug report tool]. On other platforms, run the {{{xpra/codecs/loader.py}}} script, and for debugging video the {{{xpra/codecs/video_helper.py}}} script. (both support a {{{--verbose}}} option). }}} {{{#!div class="box" == Encodings Actually Used == When selecting a non-video encoding explicitly, the encoding used for sending the pixels to the client will be the one which has been selected. The only exception to this rule is when the number of pixels is so small that trying to compress them would be pointless, and they are then usually sent as plain {{{rgb}}}. ---- With video encodings, things are more complicated: if there is a video region, the non-video areas will use other encodings. Even the video region (which may be the whole window) will get automatically refreshed with a lossless encoding when it stops refreshing rapidly enough to warrant the use of a video encoder. }}} {{{#!div class="box" == Debug Encoding Used == To debug encoding selection: * the actual encoding used is logged with {{{-d compress}}} in the form: {{{ make_data_packet: image=XShmImageWrapper(BGRX: 149, 2, 6, 13), damage data: (1, 149, 2, 6, 13, 'rgb24') compress: 0.9ms for 499x316 pixels using mmap with ratio 0.0% ( 615KB to 0KB), delta=-1, client_options={'rgb_format': 'BGRX'} }}} * the current encoding set is best seen with: {{{xpra info | grep encoding=}}} * to see statistics about which encodings are actually used: {{{xpra info | egrep "last_used|total_frames|total_pixels"}}} * video region detection can be seen with {{{xpra info | grep region}}}, and its debug logging can be enabled with {{{-d regiondetect}}} }}} {{{#!div class="box" == Debug Video Encoder Selection == Xpra supports multiple video encoders and multiple CSC modules. The exact compression pipeline used will vary and it may get re-evaluated up to 1 time per second. Each encoder and CSC option will be scored, taking into account the speed and quality requirements as well as the current network and CPU / GPU conditions. To show the details of those calculations, use the "score" debug flag: {{{ xpra start -d score }}} }}} {{{#!div class="box" == Debug Auto-Refresh == When screen updates are sent using a lossless encoding (usually for performance reasons), the system will keep track of those regions and send a lossless auto-refresh packet later. To debug the auto-refresh logic, use the "-d refresh" logging option. A similar mechanism applies to video regions, which uses the "-d regionrefresh" flag. }}}