Comments (6)
I agree. It is slow to grab that first frame. I use UltraVNC 1.0.5 on XP for
development. I believe this to be more of a hardware constraint than a software
issue. I'm not sure if there is anything that can be done to improve this for
a G1.
Original comment by [email protected]
on 9 Jan 2009 at 2:00
from android-vnc-viewer.
Well the last build is definately better, wonder if it is due to the lastest
builds
of UVNC or from the android viewer. Not great great but it is definately
usable now
( i was waiting 45 seconds before and it is probably 10 seconds now..maybe less
Original comment by [email protected]
on 26 Jan 2009 at 4:18
from android-vnc-viewer.
The first frame downloads very slowly for me as well. I did some digging and
recorded the byte stream between the AndroidVNC client (version 12, Android
2.1) and the TightVNC server (version 1.3.9, Debian 5.0.5).
I found that the client sends a SetEncodings request to the server *after* it
sends the first FramebufferUpdateRequest, which means the server sends a
FramebufferUpdate reply using the default, uncompressed "Raw" encoding. My VNC
desktop is 1024x768, using a 6 bpp pixel format, so the server has to send 768
KB just for the first frame! For a larger desktop or a higher color depth, it's
even more data than that. This is despite the fact that my VNC desktop is about
95% solid black (only the cursor and the bottom panel are not black).
The fix shouldn't be too complicated to make; the client just has to send the
SetEncodings request before the initial framebuffer update request instead of
after it.
Here is the trace. The handshake bytes are left out for clarity. Lines starting
with "C" are from the client, and "S" are from the server. Lines with # are my
comments/notes. Byte values are in hexadecimal.
# SetPixelFormat
C: 00 00 00 00 08 06 00 01 00 03 00 03 00 03 04 02
C: 00 00 00 00
# FramebufferUpdateRequest
C: 03 00 00 00 00 00 04 00 03 00
# FramebufferUpdate
S: 00 00 00 01 00 00 00 00 04 00 03 00 00 00 00 00
# framebuffer data (Raw encoding, 1024 * 768 = 786432 bytes)
S: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
S: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.
.
.
# framebuffer data truncated for clarity
# SetEncodings (ZRLE, Hextile, zlib, CoRRE, RRE, TightLastRect, DesktopSize)
C: 02 00 00 07 00 00 00 10 00 00 00 05 00 00 00 06
C: 00 00 00 04 00 00 00 02 ff ff ff 20 ff ff ff 21
# FramebufferUpdateRequest
C: 03 01 00 00 00 00 04 00 03 00
# FramebufferUpdate (first rectangle is in Hextile encoding)
S: 00 3f 00 03 00 f2 01 13 01 e2 01 3a 00 00 00 05
# framebuffer data (Hextile)
S: 0e 3f 00 0b 34 06 26 00 46 10 96 20 e6 06 f6 00
S: 87 02 c7 02 4a 10 9a 20 fa 00 08 04 06 10 27 02
.
.
.
Original comment by [email protected]
on 1 Aug 2010 at 5:25
from android-vnc-viewer.
Thanks for finding that synchronization issue
Original comment by [email protected]
on 2 Aug 2010 at 8:15
- Changed state: Accepted
from android-vnc-viewer.
How move setEncodings() from processNormalProtocol() to
doProtocolInitialisation().
Reference: TightVNC Java VncViewer
http://vnc-tight.svn.sourceforge.net/viewvc/vnc-tight/trunk/java/src/com/tightvn
c/vncviewer/VncViewer.java?revision=3658&view=markup
Original comment by [email protected]
on 23 Mar 2011 at 8:27
from android-vnc-viewer.
I've faced same issue while using with ultraVNC, but seems this not yet
resolved in newest build 203...
Original comment by [email protected]
on 4 Oct 2011 at 1:48
from android-vnc-viewer.
Related Issues (20)
- Patch for /trunk/eclipse_projects/androidVNC/AndroidManifest.xml
- Show volume control toggle
- Enhance Fit to Screen with Stretch to Screen
- Reasoning behind "No Pan; Trackball Mouse" only for Fit to Screen? HOT 1
- Arrow keys from a keyboard not working
- Patch for /trunk/eclipse_projects/androidVNC/res/menu/androidvncmenu.xml
- Patch for /tags/v0_5_0/androidVNC/res/values-hu/strings.xml
- what about an encryption plugin to connect to Windows PC?
- Connect to MAC OS 10.8.5 (MacBookPro with Retina)
- mouse and keyboard support problem!!!
- No Softkeybord Galaxy Note 8
- Send text results in incorrect text HOT 3
- How to go full screen?
- Downloading First Frame - takes too much time, why?
- Enhancement request: Keep device on.
- Android VNC Viewer is support RFB v3.8 or not?
- Android VNC bigger than mini screen desktop
- Extra keys support for Physical Keyboard
- connects then has error and aborts HOT 2
- how can I add an new intent activity to the android-vnc-viewer
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from android-vnc-viewer.