Re: [FreeRDP-devel] Hang channel rdpgfx

2018-07-30 Thread Armin Novak via FreeRDP-devel
Hi, which version of freerdp do you use? Might be related to a bug already fixed if it is an older one. The server OS and settings would also be very relevant. /gfx was introduced with windows 8 and nearly each version since has introduced a new mode (avc420, avc444, ...) By default avc444 is no

Re: [FreeRDP-devel] Creating a Client Session

2018-07-30 Thread Armin Novak via FreeRDP-devel
Hi, yes, you need to create a client context and run that. the struct functions provide client side entry points (channel and library related stuff is initiated internally) A good example is client/X11/cli/xfreerdp.c for the use of these functions. client/X11/xf_client.c implements the callba

Re: [FreeRDP-devel] Hang channel rdpgfx

2018-07-30 Thread Armin Novak via FreeRDP-devel
Hi, No, there should be no dependency on these. All graphics operations are done on the CPU and only the final image is rendered by X11/whatever the backend. To be sure, just try the whole thing with /gdi:sw, then also the X11 bitmaps are replaced by simple memory buffers until the final image

[FreeRDP-devel] WG: Hang channel rdpgfx

2018-07-30 Thread Michael Etscheid via FreeRDP-devel
Hi, I am using a relatively new version of freerdp: 2.0.0-rc2 (2d0439b). I have to use an older version of the Linux kernel (3.2.102) and X11 (version 1.11.4) because the old thin client has problems with the openchrome driver with newer versions of X11. The driver cannot find a connected moni

Re: [FreeRDP-devel] Hang channel rdpgfx

2018-07-30 Thread Michael Etscheid via FreeRDP-devel
Hello, The complete command line is: xfreerdp /f /sec-rdp /u:'' /p:'' /d:'gpudom' /bpp:32 /rfx /gfx:AVC444 /sound:sys:pulse /v:192.168.1.100 I suspected it was related to X11 because it is a significant difference between the two working environments. Furthermore, the strange thing is that the

Re: [FreeRDP-devel] Creating a Client Session

2018-07-30 Thread R0b0t1 via FreeRDP-devel
On Mon, Jul 30, 2018 at 2:45 AM, Armin Novak via FreeRDP-devel wrote: > client/X11/xf_client.c implements the callbacks (RdpClientEntry function) > > > Go through the different callbacks in xfreerdp_client_new to get an idea > of setting up and cleaning up a session. > > > P.s. Sorry, documentatio

Re: [FreeRDP-devel] Creating a Client Session

2018-07-30 Thread R0b0t1 via FreeRDP-devel
On Mon, Jul 30, 2018 at 11:53 AM, R0b0t1 wrote: > On Mon, Jul 30, 2018 at 2:45 AM, Armin Novak via FreeRDP-devel > wrote: >> client/X11/xf_client.c implements the callbacks (RdpClientEntry function) >> >> >> Go through the different callbacks in xfreerdp_client_new to get an idea >> of setting up

Re: [FreeRDP-devel] Creating a Client Session

2018-07-30 Thread Armin Novak via FreeRDP-devel
You have a render buffer (gdi->primary_buffer) where you have the rendered image you have the invalid region which tells you which areas have changed and you have the *end_paint callbacks which tell you when an update is ready There are also a lot of other hooks to implement optimized versions (wh

Re: [FreeRDP-devel] Creating a Client Session

2018-07-30 Thread R0b0t1 via FreeRDP-devel
On Mon, Jul 30, 2018 at 2:06 PM, Armin Novak via FreeRDP-devel wrote: > You have a render buffer (gdi->primary_buffer) where you have the > rendered image > you have the invalid region which tells you which areas have changed > and you have the *end_paint callbacks which tell you when an update is

Re: [FreeRDP-devel] Creating a Client Session

2018-07-30 Thread Armin Novak via FreeRDP-devel
>> You have a render buffer (gdi->primary_buffer) where you have the >> rendered image >> you have the invalid region which tells you which areas have changed >> and you have the *end_paint callbacks which tell you when an update is ready >> > I'm afraid I can't find those. Nothing matches that pa

Re: [FreeRDP-devel] Creating a Client Session

2018-07-30 Thread R0b0t1 via FreeRDP-devel
On Mon, Jul 30, 2018 at 3:18 PM, Armin Novak via FreeRDP-devel wrote: >>> You have a render buffer (gdi->primary_buffer) where you have the >>> rendered image >>> you have the invalid region which tells you which areas have changed >>> and you have the *end_paint callbacks which tell you when an u