Текущий архив: 2004.02.25;
Скачать: CL | DM;
ВнизПринцип работы RAdmin a Найти похожие ветки
← →
pasha_golub (2004-02-02 13:57) [0]Вернее интересует метод коим он так быстро делает скриншоты и послыает их на клиент. Очень интересно узнать. Или может быть у каого-то есть какие-то соображения. Поделитесь пжлста.
← →
MBo (2004-02-02 14:12) [1]Отслеживается изменение скриншота, и посылается только измененный кусок.
← →
pasha_golub (2004-02-02 14:18) [2]Хм, ну это да. Но вот каким способом, я имею ввиду программно?
Ловит ли он сообщения либо каким другим способом?
← →
Тоже мимо проходил... (2004-02-02 14:25) [3]Скриншоты? А в какой формат он их кодирует?
← →
pasha_golub (2004-02-02 14:27) [4]Вообщем-то, про формат не знаю. Но на сайте есть статистика, что RAdmin работает (наверное передает информацию) в 32 раза быстрее VNC.
← →
AndersoNRules (2004-02-02 15:16) [5]Ya dumayu on sohronyaet v BMP, menyaet format v JPG(shtob vesil menishe) i potom peredayeot i vseo takoe
← →
DiamondShark (2004-02-02 16:17) [6]<TELEPATOR ON>
Ничего он не ловит.
Просто периодически делает скриншот и сравнивает с предыдущим. Само сравнение тоже реализуется просто: побитовым XOR -- изменившиеся пикселы будут ненулевыми. Остаётся только выделить минимальные прямоугольные фрагменты, включающие изменившиеся участки. При передаче, возможно, используется простейшее сжатие без потерь.
<TELEPATOR OFF>
Кстати, временами он занимает до 50% процессорного времени.
← →
pasha_golub (2004-02-02 17:00) [7]DiamondShark © (02.02.04 16:17) [6]
Идея хороша. Только обязательно ли нужно выделять прямоугольные фрагменты? Думаю, что 0 пикселы в конце концов воспринимаются как прозрачные.
← →
MBo (2004-02-02 17:03) [8]>обязательно ли нужно выделять прямоугольные фрагменты
Так намного проще
← →
DiamondShark (2004-02-02 18:07) [9]Прямоугольные фрагменты а) легче всего найти б) легче всего описать. Ведь любой неэлементраной формы фрагмент всё равно придётся как-то представлять. А для растрового изображения прямоугольник -- самая элементарная фигура.
Про прозначность я не совсем понял. Зачем? Всё равно отрисовать на приёмном конце весь прямоугольник будет быстрее, чем возиться с прозрачностью. А передавать всё равно придётся все пикселы, прозрачные они или нет.
Или я что-то недопонял?
Возможный формат потока может быть, к примеру, таким:
<кол. фрагментов><X1, Y1, X2, Y2, (pixels_data)>...<X1, Y1, X2, Y2, (pixels_data)>
фрагмент1 ... фрагментN
Формат пикселя устанавливается и запоминается один раз -- при установке связи.
Можно чего-нибудь ещё добавить для контроля целостности.
При работе в типичном оконном окружении изменяющихся фрагментов будет мало и они будут мелкие. Тяжёлый случай -- полноэкранная игрушка или окошко с фильмом. Но тут уж, как говорится, против танка не попрёшь. Да и вряд ли применение такой программы для удалённого просмотра фильмов будет типичным.
В простейшем случае приемлемый результат может дать даже простейший алгоритм с выделением только одного фрагмента (минимальный прямоугольник, включающий все изменившиеся пикселы). Однако, такой подход может дать сильно неравномерные результаты. Так, тяжёлым случаем тут будет, к примеру, диагональная линия во весь экран, или, скажем, изменение часиков и моргание курсора в верхнем левом углу.
Тогда можно рекурсивно разбивать прямоугольники пополам (поперёк длинной стороны) и искать минимальные фрагменты в них. Полностью неизменные фрагменты, естественно, отбрасываются.
← →
pasha_golub (2004-02-03 10:17) [10]Спасибо. Идею понял. но все-таки чем тогда можно объяснить такую разницу в производительности или быть может это рекламная уловка?
← →
alxx (2004-02-03 11:02) [11]Я пробовал пихать снимок экрана в DIB, чтобы по быстрому можно было смотреть что там изменилось. Получалось примерно кадр в три секунды при полной загрузке компа (целерон кажись какой-то был). Кто-нибудь еще пробовал это делать?
Там (RAdmin) кажись посложнее механизм. Кажется используются какие-то хуки.
← →
DiamondShark (2004-02-03 11:42) [12]Тут уж, извиняюсь, возможностей телепатора не хватает :-)
Не утверждалось ведь, что РАдмин работает именно так. Просто был предложен возможный алгоритм работы, который, кстати, имеет широкие возможности для всякого рода тюнинга.
Что ж до сравнения... Хм... Не хотелось бы априори предполагать недобросовестную рекламу, но ведь действительно можно выбрать заведомо тормозного конкурента и сравнить с ним.
Опять же, может другие разработчики акцент на что-то другое делали. Например, полагали преимущественное использование в локальной сети, где скорость передачи не так критична. Зато выиграли, скажем, в загрузке процессора -- нет необходимости усиленно лопатить битмапы.
А РАдмин больше для узких каналов задумывался. Всяко бывает...
← →
MBo (2004-02-03 12:24) [13]> разницу в производительности или быть может это рекламная уловка?
Действительно, RAdmin работает намного быстрее, чем VNC.
>alxx кадр в три секунды
здесь причина может лежать в методе сравнения DIB-ов
← →
pasha_golub (2004-02-03 12:52) [14]MBo © (03.02.04 12:24) [13]
Ну неужели метод сравнения DIB-ов может настолько разносить результаты, ну я надеюсь, сравнение идет без явных ляпов.
← →
MBo (2004-02-03 12:58) [15]>pasha_golub
Да, может, если не було уделено внимание скорости, хотя в данном случае не указано - на что тратилось основное время
Страницы: 1 вся ветка
Текущий архив: 2004.02.25;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.03 c