On Sat, 15 Sep 2012 15:11:20 Antoine Martin wrote: > > Thank you for your work. I hope you don't mind some feedback: > No, quite the opposite, I welcome it!
Thank you. :) > > First of all I think changing default encoding from PNG wasn't such a > > good idea. By default visual quality is now degraded comparing to > > previous versions. > > It shouldn't be. x264 (and to a lesser extent vpx) offer almost lossless > visual quality, with much higher compression. Well my eyes are not lying. :) Perhaps "almost" is not good enough for me. > > > (I know I can override in config but I would prefer high quality > > defaults). Personally I feel very uncomfortable with new defaults. > > Can you specify the application, and link characteristics? > How do I get this lower visual quality you experienced? Any application, but most notably it can be seen with text. I use iceweasel (a.k.a. Firefox) or kmail or any text application -- text looks blurry in all of them, like if I have a dirty monitor. There are artefacts similar to low- qiality jpeg compression around letters. Looks like sometimes when window is not refreshed for some time (no scrolling or other activity) text quality improves a little for some time until I select text or scroll etc. This is very noticeable on thin black lines on white background. I'm surprised you didn't see it. I attached a screenshot do demonstrate the problem. Connection is local 1GB Ethernet. > Note: there was a bug in the 0.6.0 server which caused quality to > degrade (and not recover quickly enough), this is one of the reasons for > the 0.6.1 release. > (upgrading the client alone would not be enough to fix this issue) > > This undocumented debugging trick can dump all the encoding quality and > batch delay calculation messages to the server log: start your server with: > XPRA_DEBUG_LATENCY=1 xpra start ... I did that with "xpra upgrade" -- see some samples from log below. > > Of course first thing I tried is to change encoding as soon as I > > connected to 0.6.1 instance using 0.6.1 as client. When I've chosen > > "vpx" as compression, xpra (client) crashed as soon as I moved mouse > > over remote application. > > > Reconnecting to server wasn't possible. Server log had only one error: > > [swscaler @ 0x3eca5e0] 1x1 -> 1x1 is invalid scaling dimension > > Hah, there is some code to avoid windows that small with x264 (it only > handles even dimensions), looks like vpx needs a similar workaround for > a different reason (YUV to RGB conversion with swscale seems to not > support very small dimensions), so here is the fix: > https://www.xpra.org/trac/changeset/1543 > I cannot find the minimum dimensions specified anywhere, so I've used > the same restrictions as x264: avoid 1 pixel wide or high dimensions. > (will backport to old branches too) Thank you for the patch. I applied to both server and client but server crashed in exactly the same way with the same error logged. Anything else I can do to help? Regards, Dmitry. ############## 2012-09-15 21:37:21,286 video encoder speed factors: min_damage_latency=0.05, target_damage_latency=0.06, batch.delay=7.46, dam_lat=0.39, dec_lat=0.02, target=39, new_speed=34 2012-09-15 21:37:21,286 video encoder quality factors: packets_bl=1.0, batch_q=2.68, latency_q=0.77, target=77, new_quality=66 2012-09-15 21:37:21,286 update_batch_delay: wid=0, last updated 170.75 ms ago, decay=1.0, change factor=-4.9%, delay min=5.7, avg=7.2, max=10.7, cur=7.4, w. average=6.4, tot wgt=16.2, hist_w=8.1, new delay=7.0 ('damage processing latency: avg=0.039, recent=0.105, target=0.052, aim=0.8, aimed avg factor=2.285, div=1.0, s=<built-in function sqrt>', 1.51, 0.71) ('damage send latency: avg=0.044, recent=0.113, target=0.076, aim=0.8, aimed avg factor=1.944, div=1.0, s=<built-in function sqrt>', 1.39, 0.62) ('network send speed: avg=195351, recent=120187 (KBytes/s), div=9.87646281417', 1.39, 0.14) ('client decode speed: avg=34.8, recent=34.5 (MPixels/s)', 1.0, 0.0) ('delay not updated for 169.4 ms (skipped 4 times - highest latency is 113.4)', 0.0, 0.0) ('client latency: avg=0.037, recent=0.039, target=0.005, aim=0.8, aimed avg factor=1.559, div=1.0, s=<built-in function sqrt>', 1.24, 1.99) ('damage packet queue size: avg=0.109, recent=0.011, target=1.0, aim=0.25, aimed avg factor=0.007, div=1.0, s=<built-in function sqrt>', 0.08, 0.95) ('damage packet queue pixels: avg=0.0, recent=0.0, target=1.0, aim=0.25, aimed avg factor=0.0, div=894720, s=<built-in function sqrt>', 0.0, 1.0) ('damage data queue: avg=0.063, recent=0.006, target=1.0, aim=0.25, aimed avg factor=0.003, div=1.0, s=<function logp at 0x7f3923d05578>', 0.0, 0.99) 2012-09-15 21:37:21,286 video encoder speed factors: min_damage_latency=0.05, target_damage_latency=0.05, batch.delay=7.08, dam_lat=0.65, dec_lat=0.02, target=65, new_speed=43 2012-09-15 21:37:21,286 video encoder quality factors: packets_bl=1.0, batch_q=2.82, latency_q=0.5, target=50, new_quality=65 2012-09-15 21:37:21,286 update_batch_delay: wid=0, last updated 64.0 ms ago, decay=1.0, change factor=-2.5%, delay min=5.7, avg=7.1, max=10.7, cur=7.0, w. average=6.6, tot wgt=19.5, hist_w=9.7, new delay=6.9 ('damage processing latency: avg=0.043, recent=0.108, target=0.052, aim=0.8, aimed avg factor=2.173, div=1.0, s=<built-in function sqrt>', 1.47, 0.68) ('damage send latency: avg=0.047, recent=0.114, target=0.076, aim=0.8, aimed avg factor=1.851, div=1.0, s=<built-in function sqrt>', 1.36, 0.6) ('network send speed: avg=163578, recent=94808 (KBytes/s), div=9.53467132886', 1.44, 0.15) ('client decode speed: avg=34.9, recent=34.8 (MPixels/s)', 1.0, 0.0) ('delay not updated for 62.7 ms (skipped 1 times - highest latency is 114.6)', 0.0, 0.0) ('client latency: avg=0.036, recent=0.037, target=0.005, aim=0.8, aimed avg factor=1.453, div=1.0, s=<built-in function sqrt>', 1.2, 1.81) ('damage packet queue size: avg=0.107, recent=0.01, target=1.0, aim=0.25, aimed avg factor=0.006, div=1.0, s=<built-in function sqrt>', 0.07, 0.96) ('damage packet queue pixels: avg=0.0, recent=0.0, target=1.0, aim=0.25, aimed avg factor=0.0, div=894720, s=<built-in function sqrt>', 0.0, 1.0) ('damage data queue: avg=0.06, recent=0.004, target=1.0, aim=0.25, aimed avg factor=0.002, div=1.0, s=<function logp at 0x7f3923d05578>', 0.0, 0.99) 2012-09-15 21:37:21,286 video encoder speed factors: min_damage_latency=0.05, target_damage_latency=0.05, batch.delay=6.91, dam_lat=0.72, dec_lat=0.02, target=72, new_speed=51 2012-09-15 21:37:21,286 video encoder quality factors: packets_bl=1.0, batch_q=2.89, latency_q=0.53, target=53, new_quality=64 2012-09-15 21:37:21,286 update_batch_delay: wid=0, last updated 1531.75 ms ago, decay=1.0, change factor=6.6%, delay min=5.7, avg=7.0, max=10.7, cur=5.8, w. average=6.6, tot wgt=20.7, hist_w=10.3, new delay=6.1 ('damage processing latency: avg=0.015, recent=0.028, target=0.065, aim=0.8, aimed avg factor=1.201, div=1.0, s=<built-in function sqrt>', 1.09, 0.31) ('damage send latency: avg=0.017, recent=0.03, target=0.091, aim=0.8, aimed avg factor=0.947, div=1.0, s=<built-in function sqrt>', 0.97, 0.16) ('network send speed: avg=219612, recent=149175 (KBytes/s), div=10.1878876417', 1.3, 0.12) ('client decode speed: avg=17.2, recent=12.5 (MPixels/s)', 1.24, 0.24) ('delay not updated for 1530.3 ms (skipped 38 times - highest latency is 30.1)', 0.0, 0.0) ('client latency: avg=0.036, recent=0.033, target=0.005, aim=0.8, aimed avg factor=1.313, div=1.0, s=<built-in function sqrt>', 1.14, 1.52) ('damage packet queue size: avg=0.099, recent=0.006, target=1.0, aim=0.25, aimed avg factor=0.003, div=1.0, s=<built-in function sqrt>', 0.06, 0.96) ('damage packet queue pixels: avg=0.0, recent=0.0, target=1.0, aim=0.25, aimed avg factor=0.0, div=1160488, s=<built-in function sqrt>', 0.0, 1.0) ('damage data queue: avg=0.059, recent=0.004, target=1.0, aim=0.25, aimed avg factor=0.002, div=1.0, s=<function logp at 0x7f3923d05578>', 0.0, 0.99) 2012-09-15 21:37:21,286 video encoder speed factors: min_damage_latency=0.06, target_damage_latency=0.07, batch.delay=6.18, dam_lat=0.21, dec_lat=0.05, target=21, new_speed=20 2012-09-15 21:37:21,286 video encoder quality factors: packets_bl=1.0, batch_q=3.23, latency_q=0.6, target=60, new_quality=84 2012-09-15 21:37:21,287 update_batch_delay: wid=0, last updated 63.64 ms ago, decay=1.0, change factor=-2.4%, delay min=5.7, avg=6.9, max=10.7, cur=6.1, w. average=6.5, tot wgt=22.0, hist_w=11.0, new delay=6.0 ('damage processing latency: avg=0.014, recent=0.006, target=0.065, aim=0.8, aimed avg factor=0.272, div=1.0, s=<built-in function sqrt>', 0.52, 0.69) ('damage send latency: avg=0.015, recent=0.006, target=0.091, aim=0.8, aimed avg factor=0.22, div=1.0, s=<built-in function sqrt>', 0.46, 0.72) ('network send speed: avg=220731, recent=149838 (KBytes/s), div=10.1942764793', 1.3, 0.12) ('client decode speed: avg=17.2, recent=12.6 (MPixels/s)', 1.24, 0.24) ('delay not updated for 62.6 ms (skipped 1 times - highest latency is 15.8)', 0.0, 0.0) ('client latency: avg=0.035, recent=0.028, target=0.005, aim=0.8, aimed avg factor=1.146, div=1.0, s=<built-in function sqrt>', 1.07, 1.06) ('damage packet queue size: avg=0.098, recent=0.006, target=1.0, aim=0.25, aimed avg factor=0.003, div=1.0, s=<built-in function sqrt>', 0.06, 0.96) ('damage packet queue pixels: avg=0.0, recent=0.0, target=1.0, aim=0.25, aimed avg factor=0.0, div=1160488, s=<built-in function sqrt>', 0.0, 1.0) ('damage data queue: avg=0.058, recent=0.003, target=1.0, aim=0.25, aimed avg factor=0.002, div=1.0, s=<function logp at 0x7f3923d05578>', 0.0, 0.99) 2012-09-15 21:37:21,287 video encoder speed factors: min_damage_latency=0.06, target_damage_latency=0.07, batch.delay=6.03, dam_lat=0.19, dec_lat=0.05, target=19, new_speed=20 2012-09-15 21:37:21,287 video encoder quality factors: packets_bl=1.0, batch_q=3.31, latency_q=0.69, target=69, new_quality=82 2012-09-15 21:37:21,287 update_batch_delay: wid=0, last updated 160.24 ms ago, decay=1.0, change factor=-11.0%, delay min=5.7, avg=6.8, max=10.7, cur=6.9, w. average=6.4, tot wgt=25.6, hist_w=12.8, new delay=6.1 ('damage processing latency: avg=0.039, recent=0.068, target=0.052, aim=0.8, aimed avg factor=1.473, div=1.0, s=<built-in function sqrt>', 1.21, 0.46) ('damage send latency: avg=0.043, recent=0.072, target=0.076, aim=0.8, aimed avg factor=1.252, div=1.0, s=<built-in function sqrt>', 1.11, 0.34) ('network send speed: avg=257766, recent=245588 (KBytes/s), div=10.906633034', 1.03, 0.09) ('client decode speed: avg=34.9, recent=34.8 (MPixels/s)', 1.0, 0.0) ('delay not updated for 158.9 ms (skipped 3 times - highest latency is 72.7)', 0.0, 0.0) ('client latency: avg=0.034, recent=0.025, target=0.005, aim=0.8, aimed avg factor=1.015, div=1.0, s=<built-in function sqrt>', 1.0, 0.35) ('damage packet queue size: avg=0.093, recent=0.004, target=1.0, aim=0.25, aimed avg factor=0.002, div=1.0, s=<built-in function sqrt>', 0.05, 0.97) ('damage packet queue pixels: avg=0.0, recent=0.0, target=1.0, aim=0.25, aimed avg factor=0.0, div=894720, s=<built-in function sqrt>', 0.0, 1.0) ('damage data queue: avg=0.055, recent=0.002, target=1.0, aim=0.25, aimed avg factor=0.001, div=1.0, s=<function logp at 0x7f3923d05578>', 0.0, 0.99) 2012-09-15 21:37:21,287 video encoder speed factors: min_damage_latency=0.05, target_damage_latency=0.05, batch.delay=6.15, dam_lat=0.67, dec_lat=0.02, target=67, new_speed=56 2012-09-15 21:37:21,287 video encoder quality factors: packets_bl=1.0, batch_q=3.25, latency_q=0.79, target=79, new_quality=65 2012-09-15 21:37:21,287 update_batch_delay: wid=0, last updated 49.03 ms ago, decay=1.0, change factor=-3.1%, delay min=5.7, avg=6.7, max=10.2, cur=6.0, w. average=6.4, tot wgt=29.2, hist_w=14.6, new delay=5.8 ('damage processing latency: avg=0.012, recent=0.002, target=0.065, aim=0.8, aimed avg factor=0.134, div=1.0, s=<built-in function sqrt>', 0.36, 0.79) ('damage send latency: avg=0.013, recent=0.004, target=0.091, aim=0.8, aimed avg factor=0.148, div=1.0, s=<built-in function sqrt>', 0.38, 0.78) ('network send speed: avg=221556, recent=150346 (KBytes/s), div=10.1991576671', 1.3, 0.12) ('client decode speed: avg=17.3, recent=12.7 (MPixels/s)', 1.23, 0.23) ('delay not updated for 47.4 ms (skipped 1 times - highest latency is 13.9)', 0.0, 0.0) ('client latency: avg=0.033, recent=0.02, target=0.005, aim=0.8, aimed avg factor=0.83, div=1.0, s=<built-in function sqrt>', 0.91, 1.19) ('damage packet queue size: avg=0.091, recent=0.004, target=1.0, aim=0.25, aimed avg factor=0.002, div=1.0, s=<built-in function sqrt>', 0.05, 0.97) ('damage packet queue pixels: avg=0.0, recent=0.0, target=1.0, aim=0.25, aimed avg factor=0.0, div=1160488, s=<built-in function sqrt>', 0.0, 1.0) ('damage data queue: avg=0.053, recent=0.002, target=1.0, aim=0.25, aimed avg factor=0.001, div=1.0, s=<function logp at 0x7f3923d05578>', 0.0, 0.99)
_______________________________________________ shifter-users mailing list [email protected] http://lists.devloop.org.uk/mailman/listinfo/shifter-users
