Announcement

Collapse
No announcement yet.

Wayland's Weston Gets A Remoting Plugin For Virtual Output Streaming

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by StefanBruens View Post

    Intelligence of X11:
    1. draw this rasterized bitmap at position x/y.
    2. have you finished drawing the previous bitmap?
    3. ok, here is the next bitmap (go back to 1., repeat for every changed screen area)
    X11 can do more, but nobody is interested in drawing solid rectangles and non-antialiased lines and text ...

    RDP can do a lot more (including extra channels for e.g. device/audio/... forwarding, but lets concentrate on the graphics part):[LIST=1][*]it sends changed areas of the screen to the client[LIST=1][*]it uses caching/deltas based on the old content
    I don't think that RDP compute the delta on the basis of the old content: the comparing of new vs old would be very inefficient. I.e. X11 has an extension (XDamage) to track the updated regions in order to compute the delta. I suppose that even the other OS have API like that.
    In the X11 protocol there is the notion of clipping area: the data transmitted is already the changed one only.

    Anyway I don't think that comparing of X11 and RDP makes any sense; the are two different beast.
    X11 has a lot of concepts that are simply missing (because not needed) in RDP like
    - windows hierarchy
    - buffers and resource ownership of the resources
    - the ability to compose different windows coming from different processes (i.e. transparency)

    RDP is a lot more simple: get an update region, then send it to the wire...


    Comment


    • #22
      Originally posted by kreijack View Post

      I don't think that RDP compute the delta on the basis of the old content: the comparing of new vs old would be very inefficient. I.e. X11 has an extension (XDamage) to track the updated regions in order to compute the delta. I suppose that even the other OS have API like that.
      In the X11 protocol there is the notion of clipping area: the data transmitted is already the changed one only.
      Quoting from https://docs.microsoft.com/en-us/win...sktop-protocol
      Bandwidth reduction features
      RDP supports various mechanisms to reduce the amount of data transmitted over a network connection. Mechanisms include data compression, persistent caching of bitmaps, and caching of glyphs and fragments in RAM. The persistent bitmap cache can provide a substantial improvement in performance over low-bandwidth connections, especially when running applications that make extensive use of large bitmaps.
      and from https://msdn.microsoft.com/en-us/library/hh880930.aspx, as just one example for delta compression:

      The RemoteFX Progressive Codec extends the RemoteFX Codec ([MS-RDPRFX] sections 2.2.2 and 3.1.8) by adding sub-band diffing and the ability to progressively encode an image. Sub-band diffing is a compression technique that entails transmitting the differences between the DWT coefficients of consecutive frames, while progressive encoding involves the transmission of low-quality images that are gradually refined and improved in quality.

      Since RDP 10, it can use fullscreen h.264/AVC 444 (no chroma subsampling) for all content - h.264 uses intra-frame compression, save the occasional I-frame.

      Anyway I don't think that comparing of X11 and RDP makes any sense; the are two different beast.
      X11 has a lot of concepts that are simply missing (because not needed) in RDP like
      - windows hierarchy
      - buffers and resource ownership of the resources
      - the ability to compose different windows coming from different processes (i.e. transparency)

      RDP is a lot more simple: get an update region, then send it to the wire...
      You are correct in asserting a direct protocol comparison between X11 and RDP is pointless. But as X11 is often claimed to be network transparent (which is true to some degree) and thus is good for remoting (which is barely true in a LAN), it makes sense to compare the remoting capabilities of both.

      Note, RDP (it has more than 30 extensions - https://msdn.microsoft.com/en-us/library/jj712081.aspx, [MS-RDP*]) includes:

      Comment

      Working...
      X