Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.81
aspcartman
0 / 0 / 0
Регистрация: 20.01.2009
Сообщений: 17
#1

Видео с монитора на удаленный монитор - C++

08.03.2010, 01:35. Просмотров 1910. Ответов 13
Метки нет (Все метки)

Сломался монитор у домашнего компа и хочу написать маленькую прогу для трансфера видео с этого бедняги на ноут под MacOS

Сначала хотел определять RGB каждого пикселя и слать его по TCP, однако понял, что слать по пикселю каждые 10мс это воопервых медленно (разрешение то от 1280*800 до 1600*900 ....) и во вторых зафлужу сеть к чертям, особенно отрубив на то защиту. Потом хотел обьединить пикселя в массив и слать уже его (вопрос "дешифровки" этого массива на маке с его Obj-C тоже остается открытым хд), но он будет жирноватым (даже если на пиксель по байту, то это 1000кб на кадр) и, опятьтаки, по 10мс все зафлужу.

Собственно вопрос - как самым быстрым способом снять изображение с монитора, сжать его и отправить на ноут и там дешифровать? Проблема в том, что хочется 17-30FPS и реалтайм - комп для игр использовался и только. Сеть - роутер D-Link (макс скорость по wan через l2tp зафиксированная - 60mbit/sec , внутри сети не фиксировал, но очевидно, что не маленькая) и в сети только два компа - ноут и стац.комп.

На данный момент использую GDI32.dll с его GetPixel(IntPtr hdc_,int pixelX,int pixelY);

На каком языке писать - не принципиально. Хоть на питоне. На windows машине по привычке начал на C# . На маке - Obj-C (чистый Си + обьектность) only.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nick Alte
Эксперт С++
1603 / 995 / 118
Регистрация: 27.09.2009
Сообщений: 1,918
Завершенные тесты: 1
08.03.2010, 10:24     Видео с монитора на удаленный монитор #2
Чтобы тырить экран, тебе, скорее всего, придётся познакомиться с DirectX. Хотя попробуй сначала поиграться с BitBlt. Для сжатия можешь попробовать запихивать картинку в какой-нибудь популярный формат, вроде JPG или PNG - для этого есть соответствующие библиотечки. Впрочем, даже так ты едва ли добьёшься желанных 30 кадров в секунду.
CheshireCat
08.03.2010, 16:14
  #3

Не по теме:

Мне почему-то кажется, что если сравнить трудозатраты на написание и отладку такой проги, помножив их на рейт программиста в час, со стоимостью нового монитора - то "совершенно неожиданно" окажется, что выгоднее просто купить новый монитор. Нет?

M128K145
Эксперт C++
8280 / 3499 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
08.03.2010, 17:02     Видео с монитора на удаленный монитор #4
CheshireCat, или использовать RAdmin
Nick Alte
Эксперт С++
1603 / 995 / 118
Регистрация: 27.09.2009
Сообщений: 1,918
Завершенные тесты: 1
08.03.2010, 17:35     Видео с монитора на удаленный монитор #5
Цитата Сообщение от CheshireCat Посмотреть сообщение

Не по теме:

Мне почему-то кажется, что если сравнить трудозатраты на написание и отладку такой проги, помножив их на рейт программиста в час, со стоимостью нового монитора - то "совершенно неожиданно" окажется, что выгоднее просто купить новый монитор. Нет?

Не по теме:

Это если не считать скрытый доход в форме приобретённого опыта, знаний и навыков.

aspcartman
0 / 0 / 0
Регистрация: 20.01.2009
Сообщений: 17
08.03.2010, 23:11  [ТС]     Видео с монитора на удаленный монитор #6
Именно "доход в форме приобретённого опыта, знаний и навыков"
Мне доставляет это удовольствие =)

RAdmin под мак? Я чтото пропустил? )
И темпаче слишком медленно - в игры не поиграть хд
Может както через Opengl?

Можно ссылки на туториалы по gdi в частности bitblt - после подробной и общирной документации xcode майкрософтская MSDN вводит в ступор, особенно поиском...
alex_x_x
бжни
2443 / 1648 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
08.03.2010, 23:42     Видео с монитора на удаленный монитор #7
aspcartman, юань фень тебе в помощь) подробнее чем там про gdi думаю нигде не написано
а еще есть direct draw, полагаю то же самое можно сделать его силами
aspcartman
0 / 0 / 0
Регистрация: 20.01.2009
Сообщений: 17
09.03.2010, 00:05  [ТС]     Видео с монитора на удаленный монитор #8
Подробно и удобоваримо - разные вещи =) Любой туториал, показывающий "как" зачастую куда более удобоварим, чем краткий список функций, который я узрил на MSDN, так еще и без аргументов и обьяснения, какой аргумент чего значит. В том-же GetPixel долго переваривал некий IntPtr hdc , пока не нагуглил... MSDN -зло.
alex_x_x
бжни
2443 / 1648 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
09.03.2010, 00:12     Видео с монитора на удаленный монитор #9
aspcartman, там так сказать очень глубоко рассматривается
aspcartman
0 / 0 / 0
Регистрация: 20.01.2009
Сообщений: 17
09.03.2010, 00:28  [ТС]     Видео с монитора на удаленный монитор #10
x-code документация для класса NSWindow (в самом xcode)
http://img.skitch.com/20100308-ntx18...r9ex2642ts.png
(онлайн)
http://developer.apple.com/mac/libra...Reference.html
Обратите внимание на Tasks, описание каждой функции, в которой сразу есть строка, которую можно чуть-ли не копипастнуть в свой код и тп.

Аналогично у MSDN
http://msdn.microsoft.com/en-us/libr...orms.form.aspx

И там подробно, и там подробно. А где более удобоваримо?
Дело привычки, а все-ровно трудно ориентироваться. Например сейчас с трудом перевариваю
http://msdn.microsoft.com/en-us/libr...70(VS.85).aspx

Не по теме:

Я фактически весь фреймворк по этой документации изучаю, быстро и успешно. А MSDN можно использовать лишь как справочник, если чего-то забыл, ибо найти там, что нужно и не знаешь что - лучше не пробывать и спросить тут... Может я что-то неправильно делаю?(С)

alex_x_x
бжни
2443 / 1648 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
09.03.2010, 00:33     Видео с монитора на удаленный монитор #11
честно не понимаю к чему это, мануалы обычно объясняют как, но не объясняют почему
ну и где удобоваримо?
aspcartman
0 / 0 / 0
Регистрация: 20.01.2009
Сообщений: 17
09.03.2010, 00:38  [ТС]     Видео с монитора на удаленный монитор #12
Про "как" и "почему" не понял. Удобоваримость состоит в том, что класс расписан от и до, его функции разбиты на категории по использованию и к каждой подробное описание, включая ссылки на то, что она (функция) хочет в виде аргумента и где это достать.

К чему - я просто обьяснил, почему от msdn у меня начинается мигрень.
alex_x_x
бжни
2443 / 1648 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
09.03.2010, 00:41     Видео с монитора на удаленный монитор #13
аааа, все до меня дошло, глубоко рассматривается было сказано про книгу юаня, про msdn там правда жестко
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.03.2010, 13:06     Видео с монитора на удаленный монитор
Еще ссылки по теме:

удаленный объект существует C++
Удаленный однострочный редактор C++
C++ Удаленный запуск приложений
C++ WinAPI Обработка видео с камеры видео наблюдения (для экспертов)
C++ Деструктор неявно определен как удаленный

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Alexandoros
226 / 64 / 4
Регистрация: 02.06.2009
Сообщений: 280
09.03.2010, 13:06     Видео с монитора на удаленный монитор #14
Для игр ничего не выйдет, будет слайд шоу. Для не игр можно найти и скачать какой-нибудь rdp клиент, а на машине с виндовс сделать удаленный десктоп.
Yandex
Объявления
09.03.2010, 13:06     Видео с монитора на удаленный монитор
Ответ Создать тему
Опции темы

Текущее время: 00:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru