weixin_45121452 2020-05-13 09:46 采纳率: 0%
浏览 456
已采纳

之前使用C#开发了一个远程控制程序,想的挺好的,使用bitblt在目标电脑上截图,通过socket传输到我的电脑上显示?

发现这样好卡啊,完全不能达到预期,目标电脑上屏幕变了好久才传输到我的界面。
TeamViewer和向日葵为什么能那么流畅?

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-05-13 09:58
    关注

    他们有几个优化:
    (1)增量传输,把屏幕分为很多小网格,每次只传输和上次不同的那个小块。比如说你操作vs,其实菜单栏、状态栏和编辑器的空白,长时间画面都不变的。
    (2)图像质量的压缩,包括静态jpg压缩,动态mpeg压缩,牺牲一些图像质量换取更小的数据传输尺寸
    (3)使用c/c++实现上述算法

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站