Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.221.154.151] |
|
Сообщ.
#1
,
|
|
|
Пишу простой аналог TeamViewer.
На данный момент требуется реализация под Windows. Но в будущем, возможно, понадобится порти́рование под другие ОС, поэтому выбрал Qt. Вполне возможно прямое использование системных функций, если это существенно ускорит работу программы. QByteArray bytes; QBuffer buffer(&bytes); buffer.open(QIODevice::WriteOnly); QPixmap originalPixmap = screen->grabWindow(0); originalPixmap.save(&buffer); QUdpSocket *udpSocket = new QUdpSocket(this); udpSocket->writeDatagram(bytes, QHostAddress::Broadcast, 45454); Работает крайне медленно, 3-4 кадра в секунду и это на одном ПК. Какой самый быстрый способ получения изображения экрана? В какой формат лучше сжать (нужна возможность настройки степени сжатия)? Как быстрее всего отправить? Ну и общие советы по реализации функционала: Как бы вы подошли к реализации? |
Сообщ.
#2
,
|
|
|
1. Копировать не экран, а буффер с видеокарты.
2. Посылать не весь скрин, а только дифф. Вобщем на твоём месте я бы не заморачивался, а взял готовое решение. Поверь, лучше чем оно, ты врядли сделаешь. |
Сообщ.
#3
,
|
|
|
Можно подробнее, по пунктам?
ПС: мне не надо лучше, мне нужен аналог (по работе). |
Сообщ.
#4
,
|
|
|
VNC
|
Сообщ.
#5
,
|
|
|
nash, похоже то что надо! спасибо!
|
Сообщ.
#6
,
|
|
|
AnyDesk еще.
|
Сообщ.
#7
,
|
|
|
WebEx
|